|
yepaa Nickli Üyeden Alıntı
|
Baron sorumu anlıyamamışsın genede sağol Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Cr de /ns set protect high on Komutunu kullanınca user bir başkası onun nicki ile giriş yapamaz . Kendisi kendi nicki ile girmek istediği zaman başka bir nickle servere giriş yaptıktan sonra /ns recover nick şifre yazdıktan sonra kendi nickine geçiş yapabilir. Yani bir nevi kendi nicki ile giriş yapılmasını engeller. Bunu diyorum yani cr de var unrealde neden bu yapılamıyor . |
Mantık olduğu sürece imkansız bişey yoktur
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Bu postunu gördükten sonra yemek yemeye çıkacaktım ki vazgeçtim birden, yemek yemeye ara verip SSH'a takılı kaldım, 25 dakka uğraştırdı ama umarım aradığınız soruya cevap verecek bir iş çıkmıştır
IRCServices'de
/ns set kill immed on yapıldığında kullanıma kapatır. Aşağıda verilen kodlarlada nicke geçiş yapabilirsiniz.
Kod: Kodu kopyalamak için üzerine çift tıklayın!
cd ircservices*
Kod: Kodu kopyalamak için üzerine çift tıklayın!
pico modules/nickserv/main.c
pico yardımı ile dosyamızın içine girdikten sonra,
Kod: Kodu kopyalamak için üzerine çift tıklayın!
static void do_listemail(User *u);
satırının altına;
Kod: Kodu kopyalamak için üzerine çift tıklayın!
static void do_login(User *u);
ekleyin, yine aynı dosyada;
Kod: Kodu kopyalamak için üzerine çift tıklayın!
{ "UNSET", do_unset, NULL, NICK_HELP_UNSET,
-1, NICK_OPER_HELP_UNSET },
satırının altına ise;
Kod: Kodu kopyalamak için üzerine çift tıklayın!
{ "LOGIN", do_login, NULL, NICK_HELP_LOGIN, -1,-1 },
ekleyin, yine aynı dosyada;
Kod: Kodu kopyalamak için üzerine çift tıklayın!
if (++nnicks <= NSListMax) {
char suspended_char = ' ';
char noexpire_char = ' ';
const char *auth_char = have_auth_module ? " " : "";
if (is_servadmin) {
if (ngi && ngi->suspendinfo)
suspended_char = '*';
if (ni->status & NS_NOEXPIRE)
noexpire_char = '!';
if (have_auth_module && ngi && ngi->authcode)
auth_char = "?";
}
notice(s_NickServ, u->nick, " %c%c%s %s",
suspended_char, noexpire_char, auth_char, buf);
}
}
}
notice_lang(s_NickServ, u, NICK_LIST_RESULTS,
nnicks>NSListMax ? NSListMax : nnicks, nnicks);
}
}
satırlarını bulun, hemen altına;
Kod: Kodu kopyalamak için üzerine çift tıklayın!
static void do_login(User *u)
{
char *nick = strtok(NULL, " ");
char *pass = strtok_remaining();
NickInfo *ni;
User *u2;
if (!nick) {
syntax_error(s_NickServ, u, "LOGIN", NICK_LOGIN_SYNTAX);
} else if (!(u2 = get_user(nick))) {
notice_lang(s_NickServ, u, NICK_LOGIN_KILL, nick);
send_cmd(s_NickServ, "SVSNICK %s %s 1:1", u->nick, nick);
} else if (!(ni = u2->ni)) {
notice_lang(s_NickServ, u, NICK_X_NOT_REGISTERED, nick);
} else if (ni->status & NS_GUESTED) {
notice_lang(s_NickServ, u, NICK_X_NOT_IN_USE, nick);
} else if (ni->status & NS_VERBOTEN) {
notice_lang(s_NickServ, u, NICK_X_FORBIDDEN, nick);
} else if (irc_stricmp(nick, u->nick) == 0) {
notice_lang(s_NickServ, u, NICK_NO_LOGIN);
} else {
char buf[NICKMAX+32];
if (pass) {
if (!nick_check_password(u, ni, pass, "LOGIN", ACCESS_DENIED))
return;
} else if (!has_identified_nick(u, ni->nickgroup)) {
notice_lang(s_NickServ, u, ACCESS_DENIED);
return;
}
snprintf(buf, sizeof(buf), "LOGIN command used by %s", u->nick);
kill_user(s_NickServ, nick, buf);
notice_lang(s_NickServ, u, NICK_LOGIN_KILL, nick);
send_cmd(s_NickServ, "SVSNICK %s %s 1:1", u->nick, nick);
}
}
satırlarını ekleyin, kaydedip çıkın.
Kod: Kodu kopyalamak için üzerine çift tıklayın!
pico lang/index
Kod: Kodu kopyalamak için üzerine çift tıklayın!
NICK_AJOIN_LIST_X
satırının altına;
Kod: Kodu kopyalamak için üzerine çift tıklayın!
NICK_LOGIN_SYNTAX
NICK_NO_LOGIN
NICK_LOGIN_KILL
NICK_HELP_LOGIN
satırlarını ekleyin dosyayı kaydedip çıkın.
Kod: Kodu kopyalamak için üzerine çift tıklayın!
pico lang/tr.l
Kod: Kodu kopyalamak için üzerine çift tıklayın!
NICK_AJOIN_LIST_X_EMPTY
satırının altına;
Kod: Kodu kopyalamak için üzerine çift tıklayın!
NICK_LOGIN_SYNTAX
^BLOGIN^B nickiniz [sifreniz]
NICK_NO_LOGIN
Suanda zaten kendi nickinizdesiniz.
NICK_LOGIN_KILL
Basarili bir sekilde nickinize hizli gecis yaptiniz.
satırlarını ekleyin, yine aynı dosyada bulunan;
Kod: Kodu kopyalamak için üzerine çift tıklayın!
NICK_HELP_UNSET_REQ_EMAIL
Kullanimi: UNSET {URL | INFO}
Nickinize bagli URL ve ya INFO ayarini silmeye yarar.
satırının altına ise;
Kod: Kodu kopyalamak için üzerine çift tıklayın!
NICK_HELP_LOGIN
Kullanimi: ^BLOGIN^ nickiniz [sifreniz]
Sunucu icerisinde nickinize dogrudan giris yapmanizi saglar, komut nick asili kaldiginda veya kalmadiginda islev gorebilir.
kaydedip çıkın
Kod: Kodu kopyalamak için üzerine çift tıklayın!
make
Kod: Kodu kopyalamak için üzerine çift tıklayın!
make install
Ardından servislerinize restart atın. NOT: Denenmedi fakat çalışacaktır, herhangi bir hata görüldüğünde bildirirseniz sevinirim, iyi çalışmalar.