Tekil Mesaj gösterimi
Alt 02 Temmuz 2007, 21:24   #1
Çevrimdışı
SpecifiC
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Kanala, nick kayıt(register) tarihlerine göre user alın. (CR Service uyumlu)




Bu kodun yazılım amacı;

CR2.1 sistemli bir serverde kanala saldırı yapıldıgı anda serverin bu saldırılara karşı etkili tek kanal kipi +R (yani registersiz nicklerin girişini durdurmak) , fakat saldırmakta inat eden kişiler nicklerini kayıt ederek kanala girebilmekte ve amacını gerçekleştirmektedir... Bu durumdaki zayıflıktan yola çıkarak, userlerin kanala girebilmeleri için nick kayıt tarihlerini kotrol ederek 1,2,3,4... gün önceden kayıt altına alınmış olması gerektigi şartını koyabiliriz....

Kodu load ettikten sonra gerekli ayarlamarı yapmak için
/SpecifiC komutunu kullanabilirsiniz.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
;##################################################### ;# +Ro $me ;# Code by SpecifiC ;# start /SpecifiC ;) ;##################################################### dialog regtime { title "RegTime" size -1 -1 115 42 option dbu list 1, 3 16 50 21, size box "", 2, 0 -1 115 42 edit "", 3, 3 6 50 10 edit "", 4, 90 15 17 10 check "Korumayı aktif et", 5, 58 5 53 10 text "Gün", 6, 75 16 13 8 button "KaytEt", 7, 78 28 30 10, OK button "+", 8, 57 16 10 9 button "-", 9, 57 27 10 9 } on *:dialog:regtime:*:*: { if $devent == sclick { ;###### DİKKAT BURADA (SA)MODE Kullanılıyor ;###### samode $did(3) +Ro $me ;###### op için üstteki kpd yerine ;###### cs op $did(3) $me ;###### yapılabilir :) if $did == 8 { if !$istok(%chans,$did(3),44) { set %chans $addtok(%chans,$did(3),44) | did -a $dname 1 $did(3) | sajoin $did(3) | samode $did(3) +Ro $me | did -r $dname 3 } } if $did == 9 { if $istok(%chans,$did(1).seltext,44) { set %chans $remtok(%chans,$did(1).seltext,44) | samode $did(1).seltext -Ro $me | did -d $dname 1 $did(1).sel } } if $did == 5 { if ($did(5).state == 1) { did -e $dname 4,6 | set %Spec on } | else { did -b $dname 4,6 | set %Spec off } } if $did == 7 { set %gun $did(4) } } if $devent == init { if %Spec == on { did -c $dname 5 | did -e $dname 4,6 } | else { did -b $dname 4,6 } did -a $dname 4 %gun var %n $numtok(%chans,44) while %n { did -a $dname 1 $gettok(%chans,%n,44) dec %n } } } alias specific { if !$dialog(regtime) { dialog -m regtime regtime } } alias infocek { if $hget(joinnick,1).item != $null { .set %aktifnick $hget(joinnick,1).item | .ns info $hget(joinnick,1).item | .hdel joinnick $hget(joinnick,1).item } } alias infocek2 { if $hget(joinnick,1).item == $null { .hadd -m joinnick $1 $2 | .set %aktifnick $1 | .ns info $1 } | else { .hadd -m joinnick $1 $2 } } ;Nick notice control on *:notice:*:?: { if $nick == NickServ && %Spec == on { if *Time registered :* iswm $1- { tarihbak $4 } | if *End of nick info* iswm $1- { .hdel joinnick %aktifnick | infocek } } } ;START HASH TABLE AND DAY(S) on *:start: { if $hget(joinnick) == $null { hmake joinnick 1000 } | if %gun == $null { set %gun 1 } } ;EVENT join/part on !*:join:$(%chans): { if %Spec == on { infocek2 $nick $chan } } on !*:part:$(%chans): { if $hget(joinnick,$nick) { .hdel joinnick $nick } } ;############################################ ;DATE Control ;############################################ alias tarihbak { var %t = $+($gettok($1,2,47),/,$gettok($1,1,47),/,$gettok($1,3,47)) if $ctime(%t) >= $calc($ctime - $calc(86400 * %gun)) { if $me isop $hget(joinnick,%aktifnick) { mode $hget(joinnick,%aktifnick) +bb %aktifnick $address(%aktifnick,2) kick $hget(joinnick,%aktifnick) %aktifnick Bu kanala girebilmek için rumuzunuzun %gun gün önceden kayıtlı olması gerekmektedir. } } } ;##### End code.


 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları eglen sohbet Mobil Chat