lookjapan.COM - IRC ve mIRC dünyasının forumu!

lookjapan.COM - IRC ve mIRC dünyasının forumu! (http://www.lookjapan.com/index.php)
-   Unreal - Parça Kodlar (http://www.lookjapan.com/forumdisplay.php?f=62)
-   -   CONF üzerinden SWHOIS uygulaması.. (http://www.lookjapan.com/showthread.php?t=153)

Entrance 26 Ocak 2015 21:41

CONF üzerinden SWHOIS uygulaması..
 
Merhabalar,

Klasör: -> Unreal3.2/src/
Dosya: -> <s_conf.c>

BULUN,
Kod:

ircfree(oper_ptr->swhois);
ALTINA,
Kod:

ircfree(oper_ptr->swhoise);
          ircfree(oper_ptr->swhoisn);
          ircfree(oper_ptr->swhoist);

EKLEYIN,

-

BULUN,
Kod:

else if (!strcmp(cep->ce_varname, "swhois"))
        {
            ircstrdup(oper->swhois, cep->ce_vardata);
        }

ALTINA,

Kod:

else if (!strcmp(cep->ce_varname, "swhoise"))
        {
            ircstrdup(oper->swhoise, cep->ce_vardata);
        }
                                else if (!strcmp(cep->ce_varname, "swhoisn"))
        {
            ircstrdup(oper->swhoisn, cep->ce_vardata);
        }
                                else if (!strcmp(cep->ce_varname, "swhoist"))
        {
            ircstrdup(oper->swhoist, cep->ce_vardata);
        }

EKLEYIN,

-

BULUN,
Kod:

char has_class = 0, has_password = 0, has_flags = 0, has_swhois = 0, has_snomask = 0;
ALTINA,

Kod:

char has_swhoise = 0, has_swhoisn = 0, has_swhoist = 0;
EKLEYIN,

-

BULUN,
Kod:

else if (!strcmp(cep->ce_varname, "swhois"))
            {
                if (has_swhois)
                {
                    config_warn_duplicate(cep->ce_fileptr->cf_filename,
                        cep->ce_varlinenum, "oper::swhois");
                    continue;
                }
                has_swhois = 1;
            }

ALTINA,

Kod:

else if (!strcmp(cep->ce_varname, "swhoise"))
            {
                if (has_swhoise)
                {
                    config_warn_duplicate(cep->ce_fileptr->cf_filename,
                        cep->ce_varlinenum, "oper::swhoise");
                    continue;
                }
                has_swhoise = 1;
            }
              else if (!strcmp(cep->ce_varname, "swhoisn"))
            {
                if (has_swhoisn)
                {
                    config_warn_duplicate(cep->ce_fileptr->cf_filename,
                        cep->ce_varlinenum, "oper::swhoisn");
                    continue;
                }
                has_swhoisn = 1;
            }
            else if (!strcmp(cep->ce_varname, "swhoist"))
            {
                if (has_swhoist)
                {
                    config_warn_duplicate(cep->ce_fileptr->cf_filename,
                        cep->ce_varlinenum, "oper::swhoist");
                    continue;
                }
                has_swhoist = 1;
            }

EKLEYIN,

Klasör: -> Unreal3.2/include/
Dosya: -> <struct.h>

BULUN,
Kod:

char *swhois;        /* special whois thing */

ALTINA,


Kod:

char *swhoise, *swhoisn, *swhoist;

EKLEYIN,

-

BULUN,

Kod:

char *name, *swhois, *snomask;
DEGISTIRIN,
Kod:

char        *name, *swhois, *swhoise, *swhoisn, *swhoist, *snomask;
Klasör: -> Unreal3.2/src/modules/
Dosya: -> <m_oper.c>

BULUN,
Kod:

if (aconf->swhois) {
            if (sptr->user->swhois)
                MyFree(sptr->user->swhois);
            sptr->user->swhois = MyMalloc(strlen(aconf->swhois) +1);
            strcpy(sptr->user->swhois, aconf->swhois);
            sendto_serv_butone_token(cptr, me.name, MSG_SWHOIS, TOK_SWHOIS, "%s :%s", sptr->name, aconf->swhois);
                                                      }

ALTINA,

Kod:

if (aconf->swhoise) {
            if (sptr->user->swhoise)
                MyFree(sptr->user->swhoise);
            sptr->user->swhoise = MyMalloc(strlen(aconf->swhoise) +1);
            strcpy(sptr->user->swhoise, aconf->swhoise);
            sendto_serv_butone_token(cptr, me.name, MSG_SWHOIS, TOK_SWHOIS, "%s :%s", sptr->name, aconf->swhoise);
                                                     
        }

if (aconf->swhoisn) {
            if (sptr->user->swhoisn)
                MyFree(sptr->user->swhoisn);
            sptr->user->swhoisn = MyMalloc(strlen(aconf->swhoisn) +1);
            strcpy(sptr->user->swhoisn, aconf->swhoisn);
            sendto_serv_butone_token(cptr, me.name, MSG_SWHOIS, TOK_SWHOIS, "%s :%s", sptr->name, aconf->swhoisn);
                                                     
        }

if (aconf->swhoist) {
            if (sptr->user->swhoist)
                MyFree(sptr->user->swhoist);
            sptr->user->swhoist = MyMalloc(strlen(aconf->swhoist) +1);
            strcpy(sptr->user->swhoist, aconf->swhoist);
            sendto_serv_butone_token(cptr, me.name, MSG_SWHOIS, TOK_SWHOIS, "%s :%s", sptr->name, aconf->swhoist);
                                                     
        }

EKLEYIN,

Klasör: -> Unreal3.2/src/modules/
Dosya: -> <m_whois.c>

BULUN,
Kod:

if (!BadPtr(user->swhois) && !hideoper)
                    sendto_one(sptr, ":%s %d %s %s :%s",
                        me.name, RPL_WHOISSPECIAL, parv[0],
                        name, acptr->user->swhois);

ALTINA,

Kod:

if (!BadPtr(user->swhoise) && !hideoper)
                    sendto_one(sptr, ":%s %d %s %s :%s",
                        me.name, RPL_WHOISSPECIAL, parv[0],
                        name, acptr->user->swhoise);
if (!BadPtr(user->swhoisn) && !hideoper)
                    sendto_one(sptr, ":%s %d %s %s :%s",
                        me.name, RPL_WHOISSPECIAL, parv[0],
                        name, acptr->user->swhoisn);
if (!BadPtr(user->swhoist) && !hideoper)
                    sendto_one(sptr, ":%s %d %s %s :%s",
                        me.name, RPL_WHOISSPECIAL, parv[0],
                        name, acptr->user->swhoist);

EKLEYIN,

Klasör: -> Unreal3.2/src/modules/
Dosya: -> <webtv.c>

BULUN:
Kod:

if (acptr->user->swhois)
{
if (*acptr->user->swhois != '\0')
sendto_one(sptr, ":IRC PRIVMSG %s :%s %s",
sptr->name, acptr->name, acptr->user->swhois);
}

DEGISTIRIN:
Kod:

if (acptr->user->swhois)
{
if (*acptr->user->swhois != '\0')
sendto_one(sptr, ":IRC PRIVMSG %s :%s %s",
sptr->name, acptr->name, acptr->user->swhois);
}
if (acptr->user->swhoise)
{
if (*acptr->user->swhoise != '\0')
sendto_one(sptr, ":IRC PRIVMSG %s :%s %s",
sptr->name, acptr->name, acptr->user->swhoise);
}
if (acptr->user->swhoisn)
{
if (*acptr->user->swhoisn != '\0')
sendto_one(sptr, ":IRC PRIVMSG %s :%s %s",
sptr->name, acptr->name, acptr->user->swhoisn);
}
if (acptr->user->swhoist)
{
if (*acptr->user->swhoist != '\0')
sendto_one(sptr, ":IRC PRIVMSG %s :%s %s",
sptr->name, acptr->name, acptr->user->swhoist);
}

Bu işlemlerden sonra Unreal-in ana dizinine geçiş yapın make çekip UnrealIRCd'i yeniden başlatın, SWHOIS eklemelerinizi opers.conf dosyası aracılığı ile yapacaksınız.

Örnek ->

Kod:

oper Entrance {
        from {
                        userhost *@*;
        };
        password "?";
        flags OoawkKbBnCGAreDRhgcLZtGNzvWHeq^*;
        class clients;
        swhois "Sunucu Sahibi";
          swhoise "Teknik Sorumlu";
        swhoisn "Always, look on the bright side of life.";
        swhoist "www.sohbetv.net - www.chatlider.com - www.hobichat.net";

};

* Screenshost

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Gibi, şu anda UnrealIRCd'in orjinal swhois uygulamasıyla birlikte 4 adet ekleyebilirsiniz, isterseniz aynı mantıkla bunları çoğaltabilirsiniz..) Bu uygulamayı yapmam için, fikir veren arkadaşımız @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]'tır unutmadan onuda belirtmiş olalım..

İyi forumlar.. ^^

Entrance 31 Temmuz 2015 21:34

Cevap: CONF üzerinden SWHOIS uygulaması..
 
Kodlar güncellendi, arkadaşlar.


All times are GMT +3. The time now is 20:02.

Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.