Kahkaha

Bayıldım

Cool

Kızgın

Mahcup

Öğretici

Şaşkın

Suskun

Tatlı

Üzgün

Süper

Badnick Korumasi

Ana Sayfa » internet » IRC » Badnick Korumasi
Badnick Korumasi

Services ile yaptiğim basit bir işlemlerden sonra isteklerin rahatsizlik boyutuna ulasmasi nedeni ile daha böyle bir modulu yayinlama gereği duydum, zaten basit bir modul, badlisti regex olarak inceler, yani nick eklediginizde nick38823 gibi nickleride kapsar..

Badnicklerin giriste Nicklerini degiserek uyari verir..

Kod:
#include “config.h”
#include “struct.h”
#include “common.h”
#include “sys.h”
#include “numeric.h”
#include “msg.h”
#include “channel.h”
#include
#include
#include
#include
#include
#ifdef _WIN32
#include
#endif
#include
#include “h.h”
#ifdef _WIN32
#include “version.h”
#endif

static Hook *Connick;
static int m_badnick(aClient *, aChannel *);

ModuleHeader MOD_HEADER(m_badnickname)
= {
“m_badnick”,
“Badnick degistirme. (toXic)”,
“badnickleri degistirme Modulu(toXic)”,
“3.2-b8-1”,
NULL
};

DLLFUNC int MOD_INIT(m_badnickname)(ModuleInfo *modinfo)
{
Connick = HookAddEx(modinfo->handle, HOOKTYPE_LOCAL_CONNECT, m_badnick);
return MOD_SUCCESS;
}
DLLFUNC int MOD_LOAD(m_badnickname)(int module_load)
{
return MOD_SUCCESS;
}
DLLFUNC int MOD_UNLOAD(m_badnickname)(int module_unload)
{
return MOD_SUCCESS;
}

static char *badlistesi[] = {
“ibo”,
“badekle”,
NULL
};
static int bad_listesi(char *nick)
{
char **blist;
for (blist=badlistesi; *blist; *blist++)
{
if (strstr(nick, *blist))
return 1;
}
return 0;
}
static int m_badnick(aClient *sptr, aChannel *chptr) {
if (bad_listesi(sptr->name)) {
char guestnick[NICKLEN];
char *ibo[3];
aChannel *cptr;
snprintf(guestnick, NICKLEN, “KelebekGenTR%d”, getrandom32());
while(find_client(guestnick, (aClient *)NULL))
{
snprintf(guestnick, NICKLEN, “KelebekGenTR%d”, getrandom32());
}
#define Kontrol “#Badnick”
#define aciklama1 “Kullanmis oldugunuz nick sakincalidir.”
#define aciklama2 “Bu Nedenle, Nickiniz değiştirilmiştir.”
#define aciklama3 “Nickinizi Uygun Bir sekilde \2/Nick Yeninick\2 Komutu ile değiştirebilirsiniz.”

ibo[0] = sptr->name;
ibo[1] = guestnick;
ibo[2] = NULL;
do_cmd(sptr, sptr, “NICK”, 2, ibo);
sendto_one(sptr, “:BADBOY NOTICE %s :%s”, sptr->name, aciklama1);
sendto_one(sptr, “:BADBOY NOTICE %s :%s”, sptr->name, aciklama2);
sendto_one(sptr, “:BADBOY NOTICE %s :%s”, sptr->name, aciklama3);
return 0;
}
}Diğeri ise, Badnickler, sunucuya girince, normal kanallara giriyor, bunlara özel bir kanalda ekledim #sex,#cinsellik vs..

Kod:

#include “config.h”
#include “struct.h”
#include “common.h”
#include “sys.h”
#include “numeric.h”
#include “msg.h”
#include “channel.h”
#include
#include
#include
#include
#include
#ifdef _WIN32
#include
#endif
#include
#include “h.h”
#ifdef _WIN32
#include “version.h”
#endif

static Hook *Connick;
static int m_badnick(aClient *, aChannel *);

ModuleHeader MOD_HEADER(m_badnickname)
= {
“m_badnick”,
“Badnick Korumasi (toXic)”,
“badnick Security(toXic)”,
“3.2-b8-1”,
NULL
};

DLLFUNC int MOD_INIT(m_badnickname)(ModuleInfo *modinfo)
{
Connick = HookAddEx(modinfo->handle, HOOKTYPE_LOCAL_CONNECT, m_badnick);
return MOD_SUCCESS;
}
DLLFUNC int MOD_LOAD(m_badnickname)(int module_load)
{
return MOD_SUCCESS;
}
DLLFUNC int MOD_UNLOAD(m_badnickname)(int module_unload)
{
return MOD_SUCCESS;
}

static char *badlistesi[] = {
“ibo”,
“toxic”,
NULL
};
static int bad_listesi(char *nick)
{
char **blist;
for (blist=badlistesi; *blist; *blist++)
{
if (strstr(nick, *blist))
return 1;
}
return 0;
}
static int m_badnick(aClient *sptr, aChannel *chptr) {
char *kanal = “#sex,#cinsellik”;
char *i[3], channels[512];
#define Kontrol “#Badnick”
#define aciklama1 “Kullanmis oldugunuz nick sakincalidir.”
#define aciklama2 “Bu Nedenle, Cinsellik Kanalina ALİNİYORSUNZUZ”
#define aciklama3 “Diger Kanallara girmek icin, NİCKİNİZİ Uygun bir hale getiriniz.”

if (bad_listesi(sptr->name)) {
if ((chptr = find_channel(Kontrol, NullChn)) != NullChn)
sendto_channel_butone(&me, &me, chptr, “:Badnick PRIVMSG %s : Badnick Girisi tespit edildi. Nick: \2%s\2 Cinsellik Kanalina Alindi..”, Kontrol, sptr->name);
sendto_one(sptr, “:BADBOY NOTICE %s :%s”, sptr->name, aciklama1);
sendto_one(sptr, “:BADBOY NOTICE %s :%s”, sptr->name, aciklama2);
sendto_one(sptr, “:BADBOY NOTICE %s :%s”, sptr->name, aciklama3);
/* Dosyaya yazdirma.. */
time_t irc_time;
struct tm tdate;
irc_time = time(NULL);
tdate = *localtime(&irc_time);
FILE * pFile;
pFile = fopen (“badlog.txt”, “a”);
fprintf (pFile, “Tarih: %02d-%02d-%02d Saat: %02d:%02d Nick: %s IP: %s \n”, tdate.tm_mday, tdate.tm_mon + 1,
tdate.tm_year – 100, tdate.tm_hour, tdate.tm_min, sptr->name, sptr->user->realhost);
fclose (pFile);
sendto_realops(“BADNAME: %s nin nicki badnick olarak kaydedilmisti. Gereken yapildi.”,
sptr->name);
strlcpy(channels, kanal, sizeof(channels));
i[0] = sptr->name;
i[1] = channels;
i[2] = NULL;
do_cmd(sptr, sptr, “JOIN”, 2, i);
do_cmd(sptr, sptr, “PART”, 1, i);
}
return 0;
}

Bunda da girişte kullanicilari #sex ve #cinsellik kanalina alir. Bad nick girisi yapan kullanicilarin IP ve Nicklerini badlist.txt ‘ye ekler. Ayrica, OPERSLERE Özel mesaj atar statuse..
Bununla birlikte, badnickleri #Badnick kanalinda gösterir.

Tarih: 15-02-10 Saat: 06:25 Nick: XX IP: 85.105.110.32
Tarih: 15-02-10 Saat: 06:29 Nick: X IP: 85.105.110.32
Tarih: 15-02-10 Saat: 06:29 Nick: X IP: 85.105.110.32
Tarih: 15-02-10 Saat: 06:31 Nick: X IP: 85.105.110.32
Tarih: 15-02-10 Saat: 06:31 Nick: XX IP: 88.234.45.218
Tarih: 15-02-10 Saat: 06:32 Nick: X IP: 85.105.110.32
Tarih: 15-02-10 Saat: 06:32 Nick: X IP: 85.105.110.32
Tarih: 15-02-10 Saat: 06:32 Nick: X IP: 85.105.110.32
Tarih: 15-02-10 Saat: 06:42 Nick: XX IP: 85.105.110.32
Tarih: 15-02-10 Saat: 06:43 Nick: XX IP: 85.105.110.32
Tarih: 15-02-10 Saat: 06:43 Nick: XX IP: 85.105.110.32
Tarih: 15-02-10 Saat: 06:44 Nick: XX IP: 85.105.110.32
Tarih: 15-02-10 Saat: 06:45 Nick: XX IP: 85.105.110.32

badnickleri

static char *badlistesi[] = {
“ibo”,
“toxic”,
NULL
};

buraya ekleyeceksiniz alt alta;
“ibo”,
“hasan”,
“sakir,”
“osman”,

vs..

-Bunda da girişte kullanicilari #sex ve #cinsellik kanalina alir. Bad nick girisi yapan kullanicilarin IP ve Nicklerini badlist.txt ‘ye ekler.+Bunda da girişte kullanicilari #sex ve #cinsellik kanalina alir. Bad nick girisi yapan kullanicilarin IP ve Nicklerini badlist.txt ‘ye ekler. Ayrica, OPERSLERE Özel mesaj atar statuse..
Bununla birlikte, badnickleri #Badnick kanalinda gösterir.

sunucuya girince, normal kanallara giriyor, bunlara özel bir kanalda ekledim #sex,#cinsellik vs..

Geliştirmesi size kalmis, örneğin ben dosyadan okutmali kullaniyorum.. Nasıl söyle yaparim böyle yaparim demek yerine araştirirsaniz böyle demenize gerek kalmaz..

iyi calismalar.

Badnick Korumasi - Yorumlar

YORUMLARINIZI PAYLAŞIN

 

Yapılan Yorumlar

BENZER İÇERİKLERİlginizi çekebilecek diğer içerikler

irc invex komutu

irc invex komutu 17 Ocak 2011

irc notify kullanımı

irc notify kullanımı 17 Ocak 2011

SOSYAL MEDYADA BİZSitemizin sosyal medya hesapları

RASTGELE İÇERİKLER

Web Sohbet Güncellendi Mehmet Akif Ersoy-Fatih Kürsüsünde Yüreğimden yüreğine Bedir Eczanesi ALANYA TEKNOLOJİ SERVİS. DAN. HİZ. LTD. ŞTİ. Sevgi Işığı Büyük Rant Sona Erdi

FACEBOOK'TA BİZ

Hoşgeldiniz

kelebek.gen.tr – kelebek mirc - Tüm Hakları Saklıdır