Tekil Mesaj gösterimi
Alt 29 Eylül 2014, 17:51   #1
Çevrimdışı
xwerswoodx
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
/NickServ REGISTERNICK Komutu




Huyum kurusun hep üşengeçliğin sonucunda kendimce bir kod yazdım, paylaşayım isteyen varsa yararlansın dedim.

Kod, /ns link ve /ns register komutlarının birleşimidir yani tamamı benim tarafımdan yazılmamıştır.


Kullanımı: /nickserv registernick nick şifre email şeklindedir.
Süre sınırı, email sınırı vb. tarzı limitler olmadan hiç nicke geçmeden nick kayıt etmenizi sağlar. Services Admin (/os admin list) listesinde olmanız gerekmektedir.

ircservices*.* > modules > nickserv > main.c

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
static void do_unsuspend(User *u);

altına
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
static void do_registernick(User *u);

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
{ "DROPNICK", do_dropnick, is_services_admin, -1, -1, NICK_OPER_HELP_DROPNICK },

altına
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
{ "REGISTERNICK", do_registernick, is_services_admin, -1, -1, NICK_HELP_REGISTER },

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
/*************************************************************************/ static void do_identify(User *u) {

üstüne

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
/*************************************************************************/ static void do_registernick(User *u) { char *nick = strtok(NULL, " "); char *pass = strtok(NULL, " "); char *email = strtok(NULL, " "); NickInfo *ni = u->ni, *ni2; NickGroupInfo *ngi = u->ngi, *ngi2; int n; if (readonly) { notice_lang(s_NickServ, u, NICK_REGISTRATION_DISABLED); } else if (!is_services_admin(u)) { notice_lang(s_NickServ, u, PERMISSION_DENIED); } else if (!nick || !pass || (NSRequireEmail && !email) || (stricmp(pass, u->nick) == 0 && (strtok(NULL, "") || (email && (!strchr(email,'@') || !strchr(email,'.')))))) { send_cmd(s_NickServ, "NOTICE %s Kullanimi: \2REGISTERNICK \37nick\37 \37sifre\37 \37email\37\2", u->nick); } else if (strlen(nick) > protocol_nickmax) { notice_lang(s_NickServ, u, NICK_TOO_LONG, protocol_nickmax); } else if (!valid_nick(nick)) { notice_lang(s_NickServ, u, NICK_INVALID, nick); } else if (stricmp(pass, u->nick) == 0 || (StrictPasswords && strlen(pass) < 5)) { notice_lang(s_NickServ, u, MORE_OBSCURE_PASSWORD); } else if (email && !valid_email(email)) { send_cmd(s_NickServ, "NOTICE %s Lütfen gecerli bir email adresi giriniz.", u->nick); } else if (!reglink_check(u, nick, NULL, NULL)) { notice_lang(s_NickServ, u, NICK_CANNOT_BE_REGISTERED, nick); } else if (!ni || !ngi || ngi == NICKGROUPINFO_INVALID) { notice_lang(s_NickServ, u, NICK_NOT_REGISTERED); } else if (!user_identified(u)) { notice_lang(s_NickServ, u, NICK_IDENTIFY_REQUIRED, s_NickServ); } else if (irc_stricmp(u->nick, nick) == 0) { send_cmd(s_NickServ, "NOTICE %s Kullandığınız nicki kayıt edemezsiniz.", u->nick); } else if ((ni2 = get_nickinfo(nick)) != NULL) { if (ni2->status & NS_VERBOTEN) notice_lang(s_NickServ, u, NICK_X_FORBIDDEN, nick); else notice_lang(s_NickServ, u, NICK_X_ALREADY_REGISTERED, nick); put_nickinfo(ni2); } else if (get_user(nick)) { notice_lang(s_NickServ, u, NICK_LINK_IN_USE, nick); } else { Password passbuf; init_password(&passbuf); if (encrypt_password(pass, strlen(pass), &passbuf) != 0) { clear_password(&passbuf); memset(pass, 0, strlen(pass)); module_log("Failed to encrypt password for %s (register)", u->nick); notice_lang(s_NickServ, u, NICK_REGISTRATION_FAILED); return; } ni2 = makenick(nick, &ngi2); if (!ni) { clear_password(&passbuf); module_log("makenick(%s) failed", u->nick); notice_lang(s_NickServ, u, NICK_REGISTRATION_FAILED); return; } copy_password(&ngi2->pass, &passbuf); clear_password(&passbuf); if (ni->last_usermask) ni2->last_usermask = sstrdup(ni->last_usermask); if (ni->last_realmask) ni2->last_realmask = sstrdup(ni->last_realmask); if (ni->last_realname) ni2->last_realname = sstrdup(ni->last_realname); if (ni->last_quit) ni2->last_quit = sstrdup(ni->last_quit); ni2->time_registered = ni2->last_seen = time(NULL); if (email) ngi2->email = sstrdup(email); ngi2->flags = NSDefFlags; ngi2->memos.memomax = MEMOMAX_DEFAULT; ngi2->channelmax = CHANMAX_DEFAULT; ngi2->language = LANG_DEFAULT; ngi2->timezone = TIMEZONE_DEFAULT; put_nickinfo(ni2); notice_lang(s_NickServ, u, NICK_REGISTERED, nick); if (readonly) notice_lang(s_NickServ, u, READ_ONLY_MODE); } }

HELP yada türkçe çeviri yapmadım dilerseniz siz yapabilirsiniz.

Alıntı:
[14:22:48] -NickServ- Guard nick'i basari ile kaydedilmistir.
[14:22:55] -NickServ- Host nick'i basari ile kaydedilmistir.
[14:23:02] -NickServ- Host nickine linkli nickler:
[14:23:02] -NickServ- *Host
[14:23:02] -NickServ- 1 linkli nick.


 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları reklam ver Benimmekan Mobil Sohbet