IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   Unreal IRCd (https://www.ircforumlari.net/unreal-ircd/)
-   -   Çözüldü Spamfilter,edit,unreal (https://www.ircforumlari.net/unreal-ircd/841185-spamfiltereditunreal.html)

Korkut 23 Ekim 2019 11:48

Spamfilter,edit,unreal
 
Ustalar merhaba spamfilter komutunda ekleme silme işlemini belirledigim nickler harici yapamasin nerede ne yapmam gerek bilgidi olan yardimci olabilirmi

aquabluee 23 Ekim 2019 13:41

Cevap: Spamfilter,edit,unreal
 
Klasör: -> Unreal3.2*/src/modules
Dosya: -> (m_tkl.c)

BULUN,
Kod:

DLLFUNC int m_spamfilter(aClient *cptr, aClient *sptr, int parc, char *parv[])
{
int  whattodo = 0;    /* 0 = add  1 = del */
char mo[32], mo2[32];
char *p;
char *tkllayer[11] = {
    me.name,    /*  0 server.name */
    NULL,        /*  1 +|- */
    "F",        /*  2 F  */
    NULL,        /*  3 usermask (targets) */
    NULL,        /*  4 hostmask (action) */
    NULL,        /*  5 setby */
    "0",        /*  6 expire_at */
    "0",        /*  7 set_at */
    "",            /*  8 tkl time */
    "",            /*  9 tkl reason */
    ""            /* 10 regex */
};
int targets = 0, action = 0;
char targetbuf[64], actionbuf[2];
char reason[512];
int n;

    if (IsServer(sptr))
        return 0;

    if (!OPCanTKL(sptr) || !IsOper(sptr))
    {
        sendto_one(sptr, err_str(ERR_NOPRIVILEGES), me.name, sptr->name);
        return 0;
    }

DEGISTIRIN,

Kod:

DLLFUNC int m_spamfilter(aClient *cptr, aClient *sptr, int parc, char *parv[])
{
int  whattodo = 0;    /* 0 = add  1 = del */
char mo[32], mo2[32];
char *p;
char *tkllayer[11] = {
    me.name,    /*  0 server.name */
    NULL,        /*  1 +|- */
    "F",        /*  2 F  */
    NULL,        /*  3 usermask (targets) */
    NULL,        /*  4 hostmask (action) */
    NULL,        /*  5 setby */
    "0",        /*  6 expire_at */
    "0",        /*  7 set_at */
    "",            /*  8 tkl time */
    "",            /*  9 tkl reason */
    ""            /* 10 regex */
};
int targets = 0, action = 0;
char targetbuf[64], actionbuf[2];
char reason[512];
int n;

    if (IsServer(sptr))
        return 0;

    if (!OPCanTKL(sptr) || !IsNetAdmin(sptr))
    {
        sendto_one(sptr, err_str(ERR_NOPRIVILEGES), me.name, sptr->name);
        return 0;
    }


İlgili alan da, make ve ./unreal rehash komutlarını girin böylece sunucunuz üzerinde network admin harici spamfilter komutunu kullanamayacaktır.

not: kod alıntıdır. bir forumda görmüştüm

Korkut 23 Ekim 2019 14:32

Cevap: Spamfilter,edit,unreal
 
Bir deniyeyim anladigim kadariyla
if (!OPCanTKL(sptr) || !IsOper(sptr))
Oper kismini netadmin yapsam calisir ancak benim istedigim ötnegin belirledigim nickler Korkut Korkut1 gibi bu kisiler harici kullanmasin. Yinede emegine saglik usta.

aLtimod 23 Ekim 2019 20:49

Re: Spamfilter,edit,unreal
 
Alıntı:

Korkut Nickli Üyeden Alıntı (Mesaj 1042175556)
Ustalar merhaba spamfilter komutunda ekleme silme işlemini belirledigim nickler harici yapamasin nerede ne yapmam gerek bilgidi olan yardimci olabilirmi


Bunu Flagla Hallede bilirsiniz. Örnek : Eklediğiniz bir Opere Verdiğiniz Bir flagların içinde ( t ) harfini çıkarırsanız spamfilter kullanamaz. ( t ) harfi tekrar eklerseniz spam yetkisi açılmış olur..

Korkut 24 Ekim 2019 10:20

Cevap: Spamfilter,edit,unreal
 
malesef buda olmadi ( t ) flagı

Emrehan 24 Ekim 2019 11:35

Cevap: Spamfilter,edit,unreal
 
Kod:

#ifdef GETRUSAGE_2
# ifdef _SOLARIS
#  include <sys/time.h>
#  ifdef RUSAGEH
#  include <sys/rusage.h>
#  endif
# endif
# include <sys/resource.h>
#else
#  ifdef TIMES_2
#  include <sys/times.h>
#  endif
#endif

altına

Kod:

char *nickler[] = {
"Nick1",
"Nick2",
"Nick3",
NULL
};

int nickbak(aClient *sptr) {
        int e;
        for (e=0; e<32; e++) {
                if (nickler[e]==NULL)
                        break;
                if (!stricmp(nickler[e], sptr->name) && OPCanTKL(sptr))
                        return 1;
        }
        return 0;
}

ekleyin.

yine m_tkl.c dosyasında,
Kod:

DLLFUNC int m_spamfilter(aClient *cptr, aClient *sptr, int parc, char *parv[])
{
int  whattodo = 0;        /* 0 = add  1 = del */
char mo[32], mo2[32];
char *p;
char *tkllayer[11] = {
        me.name,        /*  0 server.name */
        NULL,                /*  1 +|- */
        "F",                /*  2 F  */
        NULL,                /*  3 usermask (targets) */
        NULL,                /*  4 hostmask (action) */
        NULL,                /*  5 setby */
        "0",                /*  6 expire_at */
        "0",                /*  7 set_at */
        "",                        /*  8 tkl time */
        "",                        /*  9 tkl reason */
        ""                        /* 10 regex */
};
int targets = 0, action = 0;
char targetbuf[64], actionbuf[2];
char reason[512];
int n;

        if (IsServer(sptr))
                return 0;

        if (!OPCanTKL(sptr) || !IsOper(sptr))
        {
                sendto_one(sptr, err_str(ERR_NOPRIVILEGES), me.name, sptr->name);
                return 0;
        }

burayı,

Kod:

DLLFUNC int m_spamfilter(aClient *cptr, aClient *sptr, int parc, char *parv[])
{
int  whattodo = 0;        /* 0 = add  1 = del */
char mo[32], mo2[32];
char *p;
char *tkllayer[11] = {
        me.name,        /*  0 server.name */
        NULL,                /*  1 +|- */
        "F",                /*  2 F  */
        NULL,                /*  3 usermask (targets) */
        NULL,                /*  4 hostmask (action) */
        NULL,                /*  5 setby */
        "0",                /*  6 expire_at */
        "0",                /*  7 set_at */
        "",                        /*  8 tkl time */
        "",                        /*  9 tkl reason */
        ""                        /* 10 regex */
};
int targets = 0, action = 0;
char targetbuf[64], actionbuf[2];
char reason[512];
int n;

        if (IsServer(sptr))
                return 0;

if (nickbak(sptr) == 0)
        {
                sendto_one(sptr, err_str(ERR_NOPRIVILEGES), me.name, sptr->name);
                return 0;
        }

şeklinde değişin.
Sonra make ve rehash uygulayıp tamamlarsınız. Nickleri kod içinde kırmızı olarak belirttim.

stricmp ile de yapılabilirdi, lakin bu tip daha stabil durumda.

Korkut 24 Ekim 2019 14:35

Cevap: Spamfilter,edit,unreal
 
@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]; sorunu çozdu emegine saglik

SatO 04 Ağustos 2020 02:30

Cevap: Spamfilter,edit,unreal
 
Adam dokturmus gene..


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 18:53.

Powered by vBulletin® Version 3.8.8 Beta 3
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2024 IRCForumlari.Net