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/)
-   IRCServices (https://www.ircforumlari.net/ircservices/)
-   -   Rulzz Servicesin düşmesi. (https://www.ircforumlari.net/ircservices/550760-rulzz-servicesin-dusmesi.html)

StiqMaTa 18 Ekim 2013 15:59

Rulzz Servicesin düşmesi.
 
*** Notice -- Client connecting on port 6667: YedekNickiniz (Mircturk@78.191.201.85) [clients]
*** Notice -- NoMercy used SAJOIN to make YedekNickiniz join #guvenlik
*** Global -- from irc.xxx.net: PANIC! buffer = :YedekNickiniz ! nickserv@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...].xxx.net :listchans
*** LocOps -- Received SQUIT irc.xxx.net from irc.xxx.net[109.235.145.852] (Services terminating: Segmentation


Sürekli services düşüyor bu neyden kaynaklana bilir.

toXic 18 Ekim 2013 16:53

Cevap: Rulzz Servicesin düşmesi.
 
Kod:

static void do_listchans(User *u)
{
    NickInfo *ni = u->ni;
    NickGroupInfo *ngi;

altinda

Kod:

static int ibos =  60*60*24*1;
if (!is_services_admin(u) &&  ni->toplamzaman  <= ibos) {
send_cmd(s_NickServ, "NOTICE %s Bu Komutu Kullanmak icin puaniniz \2(3)\2 Olmalidir.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Sizin puaniniz \2%d\2",  u->nick, (ni->toplamzaman / 86400 * 3));
    return;
}

bölümünü silersen sorun olmaz.

YozGatLı 19 Ekim 2013 23:09

Cevap: Rulzz Servicesin düşmesi.
 
Merhaba @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] bu düzenlemeyi hangi dosya üzerinde yapıcagımızı belirtirmisin.

Teşekkür ederim .

toXic 19 Ekim 2013 23:13

Cevap: Rulzz Servicesin düşmesi.
 
nickserv/main.c

YozGatLı 19 Ekim 2013 23:50

Cevap: Rulzz Servicesin düşmesi.
 
@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] Yaptım fakat hala aynı sorun devam ediyor. Elinizde örnek bir main.c dosyası mevcutsa paylaşabilirmisiniz. Çünki bunu yapınca make işleminde satırların hatalı oldugunu gösteriyor.

toXic 20 Ekim 2013 00:09

Cevap: Rulzz Servicesin düşmesi.
 
Sildikten sonra make&&make install ile servisleri derleyip servisleri resetlemelisin.

YozGatLı 20 Ekim 2013 01:46

Cevap: Rulzz Servicesin düşmesi.
 
modules/nickserv/main.c: In function âdo_registerâ:
modules/nickserv/main.c:691: warning: too many arguments for format
modules/nickserv/main.c: In function âdo_kanalâ:
modules/nickserv/main.c:1335: warning: too many arguments for format
modules/nickserv/main.c: In function âdo_identifyâ:
modules/nickserv/main.c:2212: warning: too few arguments for format
modules/nickserv/main.c:2242: warning: too many arguments for format
modules/nickserv/main.c:2243: warning: too many arguments for format
modules/nickserv/main.c:2244: warning: too many arguments for format
modules/nickserv/main.c:2245: warning: too many arguments for format
modules/nickserv/main.c:2246: warning: too many arguments for format
modules/nickserv/main.c:2247: warning: too many arguments for format
modules/nickserv/main.c:2248: warning: too many arguments for format
modules/nickserv/main.c: In function âdo_infoâ:
modules/nickserv/main.c:3193: warning: too many arguments for format
modules/nickserv/main.c:3194: warning: too many arguments for format
modules/nickserv/main.c:3195: warning: too many arguments for format
modules/nickserv/main.c:3196: warning: too many arguments for format


Make&&make install komutlarını uyguladıktan sonra aldıgımız hata burda . Ama nedense main.c 2212 satırından tutunki 3196 satırları arasında hatalar mevcut.

Bizde olan main.c dosyamız bu .



PHP- Kodu:


/* Main NickServ module.
 *
 * IRC Services is copyright (c) 1996-2007 Andrew Church.
 *     E-mail: <achurch[MENTION=117372]ach[/MENTION]urch.org>
 * Parts written by Andrew Kempe and others.
 * This program is free but copyrighted software; see the file COPYING for
 * details.
 */

#include "services.h"
#include "modules.h"
#include "conffile.h"
#include "language.h"
#include "commands.h"
#include "encrypt.h"
#include "modules/operserv/operserv.h"
#include "modules/chanserv/chanserv.h"
#include "modules/mail/mail.h"
#include "nickserv.h"
#include "ns-local.h"

#define SUNUCU "MaviChat.NET"

#define motdoku "motd.txt"

/*************************************************************************/

static Module *module;

static 
int cb_command       = -1;
static 
int cb_help          = -1;
static 
int cb_help_cmds     = -1;
       
int cb_reglink_check = -1;  /* called from util.c */
static int cb_registered    = -1;
static 
int cb_id_check      = -1;
static 
int cb_identified    = -1;
//t
static int db_opened 0;

       
char *s_NickServ;
static 
char *desc_NickServ;
static 
char *NickDBName;
EXPORT_VAR(char *,s_NickServ)

       
int32  NSRegEmailMax;
       
int    NSRequireEmail;
       
time_t NSRegDelay;
       
time_t NSInitialRegDelay;
       
int32  NSDefFlags;
       
time_t N***pire;
       
time_t N***pireWarning;
       
int    NSShowPassword;
       
char NSEnforcerUser;
       
char NSEnforcerHost;
       
int    NSForceNickChange;
       
time_t NSReleaseTimeout;
       
int    NSAllowKillImmed;
       
int    NSListOpersOnly;
       
int32  NSListMax;
       
int    NSSecureAdmins;
       
time_t NSSuspendExpire;
       
time_t NSSuspendGrace;
static 
int    NSHelpWarning;
static 
int    NSEnableDropEmail;
static 
time_t NSDropEmailExpire;

/*************************************************************************/

static void do_help(User *u);
static 
void do_droplist(User *u);
static 
void do_yerelsaat(User *u);
static 
void do_bilgi(User *u);
static 
void do_nickinfo(User *u);
static 
void do_register(User *u);
static 
void do_check(User *u);
static 
void do_profil(User *u);
static 
void do_sehirler(User *u);
static 
void do_burclar(User *u);
static 
void do_yaslar(User *u);
static 
void do_motd(User *u);
static 
void do_durum(User *u);
static 
void do_durumlar(User *u);
static 
void do_killoku(User *u);
static 
void do_takimlar(User *u);
static 
void do_vhosthelp(User *u);
static 
void do_vhostlist(User *u);
static 
void do_mesajlist(User *u);
static 
void do_vhostlists(User *u);
static 
void do_sayilar(User *u);
static 
void do_sans(User *u);
static 
void do_kanal(User *u);
static 
void do_helpop(User *u);
static 
void do_operhelp(User *u);
static 
void do_killat(User *u);
static 
void do_points(User *u);
static 
void do_identify(User *u);
static 
void do_drop(User *u);
static 
void do_dropnick(User *u);
static 
void do_dropemail(User *u);
static 
void do_dropemail_confirm(User *u);
static 
void do_info(User *u);
static 
void do_oneri(User *u);
static 
void do_oneriler(User *u);
static 
void do_istek(User *u);
static 
void do_istekler(User *u);
static 
void do_sikayet(User *u);
static 
void do_sikayetler(User *u);
static 
void do_suspendlist(User *u);
static 
void do_listchans(User *u);
static 
void do_list(User *u);
static 
void do_listemail(User *u);
static 
void do_recover(User *u);
static 
void do_release(User *u);
static 
void do_ghost(User *u);
static 
void do_toxic(User *u);
static 
void do_status(User *u);
static 
void do_getpass(User *u);
static 
void do_forbid(User *u);
static 
void do_suspend(User *u);
static 
void do_unsuspend(User *u);
#ifdef DEBUG_COMMANDS
static void do_listnick(User *u);
#endif

/*************************************************************************/

static Command cmds[] = {
    { 
"HELP",     do_help,     NULL,  -1,                     -1,-},
    { 
"REGISTER"do_registerNULL,  NICK_HELP_REGISTER,     -1,-},
    { 
"YERELSAAT"do_yerelsaatNULL, -1, -1,-},
    { 
"BILGI"do_bilgiNULL, -1, -1,-},
    { 
"NICKINFO",     do_nickinfo,     NULL,  -1,         -1,-},
    { 
"CHECK"do_checkNULL, -1, -1,-},
    { 
"DURUM"do_durumNULL, -1, -1,-},
    { 
"DURUMLAR"do_durumlarNULL, -1, -1,-},
    { 
"IDENTIFY"do_identifyNULL,  NICK_HELP_IDENTIFY,     -1,-},
    { 
"VHOSTHELP"do_vhosthelpNULL, -1, -1,-},
    { 
"VHOSTLIST"do_vhostlistNULL, -1, -1,-},
    { 
"VHOSTLISTS"do_vhostlistsNULL, -1, -1,-},
    { 
"MESAJLIST"do_mesajlistNULL, -1, -1,-},
    { 
"HELPOP"do_helpopNULL, -1, -1,-},
    { 
"OPERHELP"do_operhelpNULL, -1, -1,-}, 
    { 
"KILLAT"do_killatNULL, -1, -1,-},
    { 
"POINTS"do_pointsNULL, -1, -1,-},
    { 
"DROPLIST"do_droplistNULL, -1, -1,-},
    { 
"SAYILAR"do_sayilarNULL, -1, -1,-},
    { 
"SANS"do_sansNULL, -1, -1,-},
    { 
"KANAL"do_kanalNULL, -1, -1,-},
    { 
"SEHIRLER"do_sehirlerNULL, -1, -1,-},
    { 
"BURCLAR"do_burclarNULL, -1, -1,-},
    { 
"YASLAR"do_yaslarNULL, -1, -1,-},
    { 
"TAKIMLAR"do_takimlarNULL, -1, -1,-},
    { 
"PROFIL"do_profilNULL, -1, -1,-},
    { 
"MOTD"do_motdNULL, -1, -1,-},
    { 
"KILLOKU"do_killokuNULL, -1, -1,-},
    { 
"SIDENTIFY",do_identifyNULL,  -1,                     -1,-},
    { 
"DROP",     do_drop,     NULL,  NICK_HELP_DROP,         -1,-},
    { 
"ISTEK",     do_istek,     NULL,  -1,         -1,-},
    { 
"SIKAYET",     do_sikayet,     NULL,  -1,         -1,-},
    { 
"ONERI",     do_oneri,     NULL,  -1,         -1,-},
    { 
"ISTEKLER",     do_istekler,     NULL,  -1,         -1,-},
    { 
"ONERILER",     do_oneriler,     NULL,  -1,         -1,-},
    { 
"SIKAYETLER",     do_sikayetler,     NULL,  -1,         -1,-},
    { 
"SUSPENDLIST",     do_suspendlist,     NULL,  -1,         -1,-},
    { 
"SET HELPER"NULLNULL, --1,-},
    { 
"SET VIP"NULLNULL, --1,-},
    { 
"SET",      do_set,      NULL,  NICK_HELP_SET,
        -
1NICK_OPER_HELP_SET },
    { 
"SET PASSWORD"NULL,    NULL,  NICK_HELP_SET_PASSWORD, -1,-},
    { 
"SET URL",      NULL,    NULL,  NICK_HELP_SET_URL,      -1,-},
    { 
"SET EMAIL",    NULL,    NULL,  NICK_HELP_SET_EMAIL,    -1,-},
    { 
"SET INFO",     NULL,    NULL,  NICK_HELP_SET_INFO,     -1,-},
    { 
"SET FACEBOOK",     NULL,    NULL,  -1,     -1,-},
    { 
"SET HOST"NULLNULL, --1,-},
    { 
"SET MESAJ"NULLNULL, --1,-},
    { 
"SET YAS",      NULL,    NULL,  -1,      -1,-},
    { 
"SET BURC",     NULL,    NULL,  -1,     -1,-},
    { 
"SET SEHIR",     NULL,    NULL,  -1,     -1,-},
    { 
"SET TAKIM",     NULL,    NULL,  -1,     -1,-},
    { 
"SET DURUM",     NULL,    NULL,  -1,     -1,-},
    { 
"SET KILL",     NULL,    NULL,  NICK_HELP_SET_KILL,     -1,-},
    { 
"SET SECURE",   NULL,    NULL,  NICK_HELP_SET_SECURE,   -1,-},
    { 
"SET PRIVATE",  NULL,    NULL,  NICK_HELP_SET_PRIVATE,  -1,-},
    { 
"SET HIDE",     NULL,    NULL,  NICK_HELP_SET_HIDE,     -1,-},
    { 
"SET TIMEZONE"NULL,    NULL,  NICK_HELP_SET_TIMEZONE, -1,-},
    { 
"SET NOEXPIRE"NULL,    NULL,  -1, -1,
        
NICK_OPER_HELP_SET_NOEXPIRE },
    { 
"UNSET",    do_unset,    NULL,  NICK_HELP_UNSET,
        -
1NICK_OPER_HELP_UNSET },
"RECOVER",  do_recover,  NULL,  NICK_HELP_RECOVER,      -1,-},
    { 
"RELEASE",  do_release,  NULL,  NICK_HELP_RELEASE,      -1,-},
    { 
"GHOST",    do_ghost,    NULL,  NICK_HELP_GHOST,        -1,-},
    { 
"INFO",     do_info,     NULL,  NICK_HELP_INFO,
        -
1NICK_OPER_HELP_INFO },
    { 
"toxic"do_toxicNULL, -1, -1,-},

    { 
"LIST",     do_list,     NULL,  -1,
        
NICK_HELP_LISTNICK_OPER_HELP_LIST },
    { 
"LISTEMAIL",do_listemail,NULL,  -1,
        
NICK_HELP_LISTEMAILNICK_OPER_HELP_LISTEMAIL },
    { 
"STATUS",   do_status,   NULL,  NICK_HELP_STATUS,       -1,-},
    { 
"LISTCHANS",do_listchans,NULL,  NICK_HELP_LISTCHANS,
        -
1NICK_OPER_HELP_LISTCHANS },

    { 
"DROPNICK"do_dropnickis_services_admin, -1,
        -
1NICK_OPER_HELP_DROPNICK },
    { 
"DROPEMAIL",do_dropemail,is_services_admin, -1,
        -
1NICK_OPER_HELP_DROPEMAIL },
    { 
"DROPEMAIL-CONFIRM"do_dropemail_confirmis_services_admin, -1,
        -
1NICK_OPER_HELP_DROPEMAIL },
    { 
"GETPASS",  do_getpass,  is_services_admin, -1,
        -
1NICK_OPER_HELP_GETPASS },
    { 
"FORBID",   do_forbid,   is_services_admin, -1,
        -
1NICK_OPER_HELP_FORBID },
    { 
"SUSPEND",  do_suspend,  is_services_oper, -1,
        -
1NICK_OPER_HELP_SUSPEND },
    { 
"UNSUSPEND",do_unsuspend,is_services_admin, -1,
        -
1NICK_OPER_HELP_UNSUSPEND },
#ifdef DEBUG_COMMANDS
    
"LISTNICK"do_listnickis_services_root, -1, -1, -},
#endif
    
NULL }
};

/*************************************************************************/
/************************ Main NickServ routines *************************/
/*************************************************************************/

/* Introduce the NickServ pseudoclient. */

static int introduce_nickserv(const char *nick)
{
    if (!
nick || irc_stricmp(nicks_NickServ) == 0) {
    
char modebuf[BUFSIZE];
    
snprintf(modebufsizeof(modebuf), "o%s"pseudoclient_modes);
    
send_nick(s_NickServServiceUserServiceHostServerName,
          
desc_NickServmodebuf);
    return 
nick 0;
    }
    return 
0;
}

/*************************************************************************/

/* Main NickServ routine. */

static int nickserv(const char *source, const char *targetchar *buf)
{
    
char *cmd;
    
User *get_user(source);

    if (
irc_stricmp(targets_NickServ) != 0)
    return 
0;

    if (!
u) {
    
module_log("user record for %s not found"source);
    
notice(s_NickServsource,
        
getstring(NULLINTERNAL_ERROR));
    return 
1;
    }

    
cmd strtok(buf" ");

    if (!
cmd) {
    return 
1;
    } else if (
stricmp(cmd"\1PING") == 0) {
    const 
char *s;
    if (!(
strtok(NULL"")))
        
"\1";
    
notice(s_NickServsource"\1PING %s"s);
    } else {
    if (
call_callback_2(modulecb_commanducmd) <= 0)
        
run_cmd(s_NickServumodulecmd);
    }
    return 
1;

}

/*************************************************************************/

/* Return a /WHOIS response for NickServ. */

static int nickserv_whois(const char *sourcechar *whochar *extra)
{
    if (
irc_stricmp(whos_NickServ) != 0)
    return 
0;
    
send_cmd(ServerName"311 %s %s %s %s * :%s"sourcewho,
         
ServiceUserServiceHostdesc_NickServ);
    
send_cmd(ServerName"312 %s %s %s :%s"sourcewho,
         
ServerNameServerDesc);
    
send_cmd(ServerName"313 %s %s :is a network service"sourcewho);
    
send_cmd(ServerName"318 %s %s End of /WHOIS response."sourcewho);
    return 
1;
}

/*************************************************************************/

/* Save nickname database. */

static int do_save_data()
{
    
sync_nick_db(NickDBName);
    return 
0;
}

/*************************************************************************/
/*************************************************************************/

/* Callback for users connecting to the network. */

static int do_user_create(User *userint acchar **av)
{
    
validate_user(user);
    return 
0;
}

/*************************************************************************/

/* Callbacks for users changing nicknames (before and after). */

static int do_user_nickchange_before(User *user, const char *newnick)
{
    
/* Changing nickname case isn't a real change; pop out immediately
     * in that case. */
    
if (irc_stricmp(newnickuser->nick) == 0)
    return 
0;

    
cancel_user(user);
    return 
0;
}

static 
int do_user_nickchange_after(User *user, const char *oldnick)
{
    
/* Changing nickname case isn't a real change; pop out immediately
     * in that case. */
    
if (irc_stricmp(oldnickuser->nick) == 0)
    return 
0;

NickInfo *ni NULL;
    
ni get_nickinfo(user->nick);
    if (!
ni) {
  
send_cmd(s_NickServ"NOTICE %s Secmis oldugunuz Nick kayitsizdir.."user->nick);
send_cmd(s_NickServ"NOTICE %s  Kaydetmek icin, /ns register nick sifre komutunu kullanabilirsiniz."user->nick);
}

    
user->my_signon time(NULL);
    
validate_user(user);
    if (
usermode_reg) {
    if (
user_identified(user)) {
        
send_cmd(s_NickServ"SVSMODE %s :+%s"user->nick,
             
mode_flags_to_string(usermode_regMODE_USER));
        
user->mode |= usermode_reg;
    } else {
        
send_cmd(s_NickServ"SVSMODE %s :-%s"user->nick,
             
mode_flags_to_string(usermode_regMODE_USER));
        
user->mode &= ~usermode_reg;
    }
    }
    return 
0;
}

/*************************************************************************/

/* Callback for users disconnecting from the network. */

static int do_user_delete(User *user, const char *reason)
{
    
NickInfo *ni user->ni;
    
int ij;

    if (
user_recognized(user)) {
    
free(ni->last_quit);
    
ni->last_quit = *reason sstrdup(reason) : NULL;
    
put_nickinfo(ni);
    }
    
ARRAY_FOREACH (iuser->id_nicks) {
    
NickGroupInfo *ngi get_ngi_id(user->id_nicks[i]);
    if (!
ngi)
        continue;
    
ARRAY_SEARCH_PLAIN_SCALAR(ngi->id_usersuserj);
    if (
ngi->id_users_count) {
        
ARRAY_REMOVE(ngi->id_usersj);
    } else {
        
module_log("BUG: do_user_delete(): nickgroup %u listed in"
               " id_nicks for user %p (%s), but user not in"
               " id_users!"
ngi->iduseruser->nick);
    }
    }
    
cancel_user(user);
    return 
0;
}

/*************************************************************************/

/* Callback for REGISTER/LINK check; we disallow registration/linking of
 * the NickServ pseudoclient nickname or guest nicks.  This is done here
 * instead of in the routines themselves to avoid duplication of code at an
 * insignificant performance cost.
 */

static int do_reglink_check(const User *u, const char *nick,
                const 
char *pass, const char *email)
{
    if ((
protocol_features PF_CHANGENICK) && is_guest_nick(nick)) {
    
/* Don't allow guest nicks to be registered or linked.  This check
     * has to be done regardless of the state of NSForceNickChange
     * because other modules might take advantage of forced nick
     * changing. */
    
return 1;
    }
    return 
irc_stricmp(nicks_NickServ) == 0;
}

/*************************************************************************/
/*********************** NickServ command routines ***********************/
/*************************************************************************/

/* Return a help message. */

static void do_help(User *u)
{
    
char *cmd strtok_remaining();

    if (!
cmd) {
    
notice_help(s_NickServuNICK_HELP);
    if (
N***pire)
        
notice_help(s_NickServuNICK_HELP_EXPIRES,
            
maketime(u->ngi,N***pire,0));
    if (
NSHelpWarning)
        
notice_help(s_NickServuNICK_HELP_WARNING);
    } else if (
call_callback_2(modulecb_helpucmd) > 0) {
    return;
    } else if (
stricmp(cmd"COMMANDS") == 0) {
    
notice_help(s_NickServuNICK_HELP_COMMANDS);
    if (
find_module("nickserv/mail-auth"))
        
notice_help(s_NickServuNICK_HELP_COMMANDS_AUTH);
    
notice_help(s_NickServuNICK_HELP_COMMANDS_IDENTIFY);
    if (
find_module("nickserv/sendpass"))
        
notice_help(s_NickServuNICK_HELP_COMMANDS_SENDPASS);
    
notice_help(s_NickServuNICK_HELP_COMMANDS_DROP);
    if (
find_module("nickserv/link"))
        
notice_help(s_NickServuNICK_HELP_COMMANDS_LINK);
    if (
find_module("nickserv/oldlink"))
        
notice_help(s_NickServuNICK_HELP_COMMANDS_OLDLINK);
    if (
find_module("nickserv/access"))
        
notice_help(s_NickServuNICK_HELP_COMMANDS_ACCESS);
    if (
find_module("nickserv/autojoin"))
        
notice_help(s_NickServuNICK_HELP_COMMANDS_AJOIN);
    
notice_help(s_NickServuNICK_HELP_COMMANDS_SET);
    if (!
NSListOpersOnly)
        
notice_help(s_NickServuNICK_HELP_COMMANDS_LIST);
    
notice_help(s_NickServuNICK_HELP_COMMANDS_LISTCHANS);
    
call_callback_2(modulecb_help_cmdsu0);
    if (
is_oper(u)) {
        
notice_help(s_NickServuNICK_OPER_HELP_COMMANDS);
        if (
NSEnableDropEmail)
        
notice_help(s_NickServuNICK_OPER_HELP_COMMANDS_DROPEMAIL);
        if (
EnableGetpass)
        
notice_help(s_NickServuNICK_OPER_HELP_COMMANDS_GETPASS);
        
notice_help(s_NickServuNICK_OPER_HELP_COMMANDS_FORBID);
        if (
find_module("nickserv/oldlink"))
        
notice_help(s_NickServuNICK_OPER_HELP_COMMANDS_LISTLINKS);
        if (
NSListOpersOnly)
        
notice_help(s_NickServuNICK_HELP_COMMANDS_LIST);
        if (
find_module("nickserv/mail-auth"))
        
notice_help(s_NickServuNICK_OPER_HELP_COMMANDS_SETAUTH);
        
call_callback_2(modulecb_help_cmdsu1);
        
notice_help(s_NickServuNICK_OPER_HELP_COMMANDS_END);
    }
    } else if (
stricmp(cmd"REGISTER") == 0) {
    
notice_help(s_NickServuNICK_HELP_REGISTER,
            
getstring(u->ngi,NICK_REGISTER_SYNTAX));
    
notice_help(s_NickServuNICK_HELP_REGISTER_EMAIL);
    
notice_help(s_NickServuNICK_HELP_REGISTER_END);
    } else if (
stricmp(cmd"DROP") == 0) {
    
notice_help(s_NickServuNICK_HELP_DROP);
    if (
find_module("nickserv/link") || find_module("nickserv/oldlink"))
        
notice_help(s_NickServuNICK_HELP_DROP_LINK);
    
notice_help(s_NickServuNICK_HELP_DROP_END);
    } else if ((
stricmp(cmd"DROPEMAIL") == 0
        
|| stricmp(cmd"DROPEMAIL-CONFIRM") == 0)
           && 
NSEnableDropEmail
           
&& is_oper(u)
    ) {
    
notice_help(s_NickServuNICK_OPER_HELP_DROPEMAIL,
            
maketime(u->ngi,NSDropEmailExpire,0));
    } else if (
stricmp(cmd"SET") == 0) {
    
notice_help(s_NickServuNICK_HELP_SET);
    if (
find_module("nickserv/link"))
        
notice_help(s_NickServuNICK_HELP_SET_OPTION_MAINNICK);
    
notice_help(s_NickServuNICK_HELP_SET_END);
    if (
is_oper(u))
        
notice_help(s_NickServuNICK_OPER_HELP_SET);
    } else if (
strnicmp(cmd"SET"3) == 0
           
&& isspace(cmd[3])
           && 
stricmp(cmd+4+strspn(cmd+4," \t"), "LANGUAGE") == 0) {
    
int i;
    
notice_help(s_NickServuNICK_HELP_SET_LANGUAGE);
    for (
0NUM_LANGS && langlist[i] >= 0i++) {
        
notice(s_NickServu->nick"    %2d) %s",
           
i+1getstring_lang(langlist[i],LANG_NAME));
    }
    } else if (
stricmp(cmd"INFO") == 0) {
    
notice_help(s_NickServuNICK_HELP_INFO);
    if (
find_module("nickserv/mail-auth"))
        
notice_help(s_NickServuNICK_HELP_INFO_AUTH);
    if (
is_oper(u))
        
notice_help(s_NickServuNICK_OPER_HELP_INFO);
    } else if (
stricmp(cmd"LIST") == 0) {
    if (
is_oper(u))
        
notice_help(s_NickServuNICK_OPER_HELP_LIST);
    else
        
notice_help(s_NickServuNICK_HELP_LIST);
    if (
NSListOpersOnly)
        
notice_help(s_NickServuNICK_HELP_LIST_OPERSONLY);
    } else if (
stricmp(cmd"RECOVER") == 0) {
    
notice_help(s_NickServuNICK_HELP_RECOVER,
            
maketime(u->ngi,NSReleaseTimeout,MT_SECONDS));
} else if (
stricmp(cmd"NOOP") == 0) {
send_cmd(s_NickServ"NOTICE %s :\2Kullanımı : SET NOOP ON/OFF\2"u->nick);
send_cmd(s_NickServ"NOTICE %s :-",u->nick);
send_cmd(s_NickServ"NOTICE %s :Nickiniz icin bir kanalda nickinize access eklenimini acar "u->nick);
    } else if (
stricmp(cmd"RELEASE") == 0) {
    
notice_help(s_NickServuNICK_HELP_RELEASE,
            
maketime(u->ngi,NSReleaseTimeout,MT_SECONDS));
    } else if (
stricmp(cmd"SUSPEND") == && is_oper(u)) {
    
notice_help(s_NickServuNICK_OPER_HELP_SUSPENDs_OperServ);
    } else {
    
help_cmd(s_NickServumodulecmd);
    }
}

/*************************************************************************/

/* Register a nick. */

static void do_register(User *u)
{
    
NickInfo *ni;
    
NickGroupInfo *ngi;
    
char *pass strtok(NULL" ");
    
char *email strtok(NULL" ");
    
int n;
    
time_t now time(NULL);

    if (
readonly) {
    
notice_lang(s_NickServuNICK_REGISTRATION_DISABLED);
    return;
    }

    if (
now u->lastnickreg NSRegDelay) {
    
time_t left = (u->lastnickreg NSRegDelay) - now;
    
notice_lang(s_NickServuNICK_REG_PLEASE_WAIT,
            
maketime(u->ngileftMT_SECONDS));

    } else if (
time(NULL) < u->my_signon NSInitialRegDelay) {
    
time_t left = (u->my_signon NSInitialRegDelay) - now;
    
notice_lang(s_NickServuNICK_REG_PLEASE_WAIT_FIRST,
            
maketime(u->ngileftMT_SECONDS));

    } else if (!
pass || (NSRequireEmail && !email)
           || (
stricmp(passu->nick) == 0
           
&& (strtok(NULL"")
               || (
email && (!strchr(email,'@')
                     || !
strchr(email,'.')))))
    ) {
    
/* No password/email, or they (apparently) tried to include the nick
     * in the command. */
    
syntax_error(s_NickServu"REGISTER"NICK_REGISTER_SYNTAX);

    } else if (!
reglink_check(uu->nickpassemail)) {
    
/* Denied by the callback. */
    
notice_lang(s_NickServuNICK_CANNOT_BE_REGISTEREDu->nick);
    return;

    } else if (
u->ni) {  /* i.e. there's already such a nick regged */
    
if (u->ni->status NS_VERBOTEN) {
        
module_log("%s@%s tried to register forbidden nick %s",
               
u->usernameu->hostu->nick);
        
notice_lang(s_NickServuNICK_CANNOT_BE_REGISTEREDu->nick);
    } else {
        if (
u->ngi->suspendinfo)
        
module_log("%s@%s tried to register suspended nick %s",
               
u->usernameu->hostu->nick);
        
notice_lang(s_NickServuNICK_X_ALREADY_REGISTEREDu->nick);
    }

    } else if (
u->ngi == NICKGROUPINFO_INVALID) {
    
module_log("%s@%s tried to register nick %s with missing nick group",
           
u->usernameu->hostu->nick);
    
notice_lang(s_NickServuNICK_REGISTRATION_FAILED);

    } else if (
stricmp(passu->nick) == 0
           
|| (StrictPasswords && strlen(pass) < 5)
    ) {
    
notice_lang(s_NickServuMORE_OBSCURE_PASSWORD);

    } else if (
email && !valid_email(email)) {
    
/* Display the syntax as well in case the user just got E-mail and
     * password backwards.  Don't use syntax_error(), because that also
     * prints a "for more help" message which might just confuse the
     * user more. */
    
char buf[BUFSIZE];
    
snprintf(bufsizeof(buf), getstring(u->ngi,NICK_REGISTER_SYNTAX),
         
"REGISTER");
    
notice_lang(s_NickServuSYNTAX_ERRORbuf);
    
notice_lang(s_NickServuBAD_EMAIL);

    } else if (
NSRegEmailMax && email && !is_services_admin(u)
           && ((
count_nicks_with_email(email)) < 0
           
|| >= NSRegEmailMax)) {
    if (
0) {
        
notice_lang(s_NickServuNICK_REGISTER_EMAIL_UNAUTHED);
    } else {
        
notice_lang(s_NickServuNICK_REGISTER_TOO_MANY_NICKSn,
            
NSRegEmailMax);
    }

    } else {
    
int replied 0;
    
int len strlen(pass), max;
    
char passbuf[PASSMAX];

    
/* Make sure the password will fit in a PASSMAX-size buffer */
    
max encrypt_check_len(lenPASSMAX);
    
/* Require the original password (including trailing NULL) to fit
     * in a PASSMAX-size buffer as well */
    
if ((max == && len PASSMAX-1) || max PASSMAX-1)
        
max PASSMAX-1;
    
/* Truncate password if too long */
    
if (max 0) {
        
memset(pass+max0len-max);
        
len max;
        
notice_lang(s_NickServuPASSWORD_TRUNCATEDmax);
    }
    
/* Encrypt password */
    
if (encrypt(passlenpassbufPASSMAX) < 0) {
        
memset(pass0len);
        
module_log("Failed to encrypt password for %s (register)",
               
u->nick);
        
notice_lang(s_NickServuNICK_REGISTRATION_FAILED);
        return;
    }
    
/* Do nick setup stuff */
    
ni makenick(u->nick, &ngi);
    if (!
ni) {
        
module_log("makenick(%s) failed"u->nick);
        
notice_lang(s_NickServuNICK_REGISTRATION_FAILED);
        return;
    }
    
memcpy(ngi->passpassbufPASSMAX);
    
memset(passbuf0PASSMAX);
    
ni->time_registered ni->last_seen time(NULL);
    
ni->authstat NA_IDENTIFIED NA_RECOGNIZED;
    if (
email)
        
ngi->email sstrdup(email);
    
ngi->flags NSDefFlags;
    
ngi->memos.memomax MEMOMAX_DEFAULT;
    
ngi->channelmax CHANMAX_DEFAULT;
    
ngi->language LANG_DEFAULT;
    
ngi->timezone TIMEZONE_DEFAULT;
    
call_callback_4(modulecb_registereduningi, &replied);
    
/* If the IDENTIFIED flag is still set (a module might have
     * cleared it, e.g. mail-auth), record the ID stamp */
    
if (nick_identified(ni))
        
ni->id_stamp u->servicestamp;
    
/* Link back and forth to user record and store modified data */
    
u->ni ni;
    
u->ngi ngi;
    
ni->user u;
    
update_userinfo(u);
    
put_nickinfo(ni);
    
put_nickgroupinfo(ngi);
    
/* Tell people about it */
    
if (email) {
        
module_log("%s registered by %s@%s (%s)",
               
u->nicku->usernameu->hostemail);
    } else {
        
module_log("%s registered by %s@%s",
               
u->nicku->usernameu->host);
    }
    if (!
replied)
        
notice_lang(s_NickServuNICK_REGISTEREDu->nick);
// struct u_chanlist *c, *c2;
    //LIST_FOREACH_SAFE (c, u->chans, c2)
  //         send_cmd(s_NickServ, "SAPART %s %s", u->nick, c->chan->name);
//send_cmd(s_NickServ, "Sajoin %s #NickReg", u->nick);
//#define toxic "#mIRC,#Sohbet,#Radyo,#Oyun"
/* Kaydedilen Nickler icin Bilgi */
strscpy(last_register_nickni->nickNICKMAX);
send_cmd(s_NickServ"PRIVMSG #OPERLOG NICK-KAYIT: * %s * nicki nickini kayıtladı %s@%s"u-> nicku->usernameu->hostemail);

send_cmd(s_NickServ"NOTICE %s Nickinizi Basarılı Birsekilde Kayıtladınız."u->nick);
send_cmd(s_NickServ"NOTICE %s Kurallar Listesini Görmek icin \2/RuLeS\2 Yazınız."u->nick);
send_cmd(s_NickServ"PRIVMSG %s :Nick'iniz  Basari ile Kaydedilmistir. IRC Kurallarını \2/rules\2 yazip okuyunuz lutfen."u->nick); 
//send_cmd(s_NickServ, "SAJOIN %s %s", u->nick, toxic);
/* Son */

    
if (NSShowPassword)
        
notice_lang(s_NickServuNICK_PASSWORD_ISpass);
    
/* Clear password from memory and other last-minute things */
    
memset(pass0len);
    
/* Note time REGISTER command was used */
    
u->lastnickreg time(NULL);
    
/* Set +r (or other registered-nick mode) if IDENTIFIED is still
     * set. */
    
if (nick_identified(ni) && usermode_reg) {
        
send_cmd(s_NickServ"SVSMODE %s :+%s"u->nick,
             
mode_flags_to_string(usermode_regMODE_USER));
    }

    }

}

/***********************************************************************************************/
/*

static void do_kanal(User *u)
{
 
 NickGroupInfo *ngi;

NickInfo *ni;
ni = get_nickinfo(u->nick);
char *nick = strtok(NULL, " ");
 //NickGroupInfo *ngi;
#define kayitsiz "Nick Kayitsizdir."
#define yasakli "Nick Yasaklidir."

 if (!nick) {
send_cmd(s_NickServ, "NOTICE %s \2 %s \2 ", u->nick, kayitsiz);
return;
}

else if (ni->status & NS_VERBOTEN) {
send_cmd(s_NickServ, "NOTICE %s \2 %s \2 ", u->nick, yasakli);
return;
}



int i;
char *clist[10];
ARRAY_FOREACH (i, ngi->channels) {
clist[i] = ngi->channels[i];
}
if ((!stricmp(ni->nick, ServicesRoot) == 0)||(!nick_is_services_admin(ni))) {
int size = 10;
for (i=0; i<size; i++)
send_cmd(s_NickServ, "NOTICE %s Kayitli Kanallari, \2%s\2", u->nick, clist[i]);
} else {
send_cmd(s_NickServ, "NOTICE %s Kayitli Kanali bulunmamaktadir.", u->nick);
return;
}
}
*/

/************************ coded by toxic *********************************/


static void do_vhosthelp(User *u)
{

NickInfo *ni;
ni get_nickinfo(u->nick);

#define BEKLEME "20"

if(!ni) {
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ"NOTICE %s -"u->nick);
send_cmd(s_NickServ"NOTICE %s Merhaba \2%s\2 Nickiniz \2Kayitsizdir.\2"u->nicku->nick);
send_cmd(s_NickServ"NOTICE %s Bu nedenle yazinin sadece \2Kayitsiz Nickler\2 icin olanini okuyabileceksiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s Cok goremediginiz bir \2 C \2 Estetikligi kullanilarak gelistirilmistir."u->nick);
send_cmd(s_NickServ"NOTICE %s -"u->nick);
send_cmd(s_NickServ"NOTICE %s Vhost Komutlarini Kullanmak icin oncelikle \2Nickinizin Kayitli\2 Olmasi gerekmektedir."u->nick);
send_cmd(s_NickServ"NOTICE %s Root Yonetimi tarafindan, bu komutlari kullanmak icin belirli bir online sureleri koyulur."u->nick);
send_cmd(s_NickServ"NOTICE %s Yapmaniz gereken bu \2online surelerine\2 ulasmaktir.."u->nick);
send_cmd(s_NickServ"NOTICE %s Bu Konuda \2helper\2larimizdan veyahut\2 oper\2lerimizden yardim alabilirsiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s Helper yardimi icin, \2 /NS HELPOP \2 Opers yardimi icin \2 /NS OPERHELP \2 Komutlarini kullaniniz."u->nick);
send_cmd(s_NickServ"NOTICE %s \2NOT:\2 Bu komutlari, Nickinizi kaydettiginiz andan itibaren kullanamayacaksiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s Daha detayli bilgi icin, lutfen \2NICK Kaydediniz."u->nick);
send_cmd(s_NickServ"NOTICE %s Ardindan tekrar bu komutu ( \2 /NS VhostHelp\2 ) Kullaniniz."u->nick);
send_cmd(s_NickServ"NOTICE %s Hos Sohbetler.."u->nick);
send_cmd(s_NickServ"NOTICE %s -"u->nick);
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);

} else {
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ,  "NOTICE %s -"u->nick);
send_cmd(s_NickServ"NOTICE %s Merhaba \2%s\2 Nickiniz \2Kayitlidir.\2"u->nicku->nick);
send_cmd(s_NickServ"NOTICE %s Bu Nedenle, Sistem tarafindan otomatikmen yazinin \2Kayitli\2 Nickler icin olani verilecektir."u->nick);
send_cmd(s_NickServ"NOTICE %s -"u->nick);
send_cmd(s_NickServ"NOTICE %s Vhost komutlarini Kullanabilmek icin, Yeterli \2 Online'ye sahip olmalisiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s Vhost Komutlarimiz Sunlardir;"u->nick);
send_cmd(s_NickServ"NOTICE %s -"u->nick);
send_cmd(s_NickServ"NOTICE %s \2 /NS Vhostlist \2 Komut Kullanimi icin, \2 %s \2 Gun online Olmalisiniz."u->nickBEKLEME);
send_cmd(s_NickServ"NOTICE %s \2 /NS set vhost vhost \2 Komut Kullanimi icin, \2 %s \2 Gun online Olmalisiniz."u->nickBEKLEME);
send_cmd(s_NickServ"NOTICE %s \2 /NS Sayilar \2 Komut Kullanimi icin, \2 0 \2 Gun online olmalisiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s Sevgili \2 %s \2 Vhostlist komutunu Kullanarak, vhost listesine bakabilirsiniz. ( Online'niz yeterli ise.. )"
u->nicku->nick); 
send_cmd(s_NickServ"NOTICE %s Ardindan, \2 /Ns set vhost vhost \2 Komutu ile vhostunuzu secebilirsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s Ornek Kullanim \2 /NS SET Vhost Forever"u->nick);
send_cmd(s_NickServ"NOTICE %s Yalniz Sadece, \2 Vhost Listesindeki Vhostlari \2 Secebilirsiniz, Disina \2 Cikamazsiniz.!"u->nick);
send_cmd(s_NickServ"NOTICE %s Tabii ki Birde, \2Sansli \2 Sayilarimiz Mevcut.."u->nick);
send_cmd(s_NickServ"NOTICE %s Bu Sayilar, Siz Vhost seciminiz Sistem tarafindan onaylandigi anda, size verilecektir.."u->nick);
send_cmd(s_NickServ"NOTICE %s Eger, Bizim daha once belirledigimiz sayilar denk gelir ise, Bazi ozellikler kazanacaksiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s Bu ozellikleri \2 /NS Sayilar \2 Komutu ile gorebilirsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s Ayrica, Vhost komutu kullandiktan sonra, vhostunuza erisim yapabilirseniz \2 ( Yani onlineneniz yeterli ise)",  
u->nick);
send_cmd(s_NickServ"NOTICE %s Tekrar \2 Vhost\2 Komutu Kullanmak icin,  Tam \2 3 \2 Gun beklemelisiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s Bu Kullandiginiz Komutlar, \2SSH\2'de Log olarak \2 .txt \2 Dosyamizda Nick bilgileriniz ile Kayit edilmektedir."u->nick);
send_cmd(s_NickServ"NOTICE %s Hos Sohbetler.."u->nick);
send_cmd(s_NickServ"NOTICE %s -"u->nick);
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);

 }
}


static 
void do_profil(User *u)
{
send_cmd(s_NickServ"NOTICE %s --"u->nick);
send_cmd(s_NickServ"NOTICE %s Merhaba, ( \2%s\2 )"u->nicku->nick);
send_cmd(s_NickServ"NOTICE %s Whoislerinizde, bilgilerinizi Size whois ceken kisilere gosterebilir,"u->nick);
send_cmd(s_NickServ"NOTICE %s Onlara kendinizi  \2 Bu sekilde\2 Kisaca anlatabilirsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s --"u->nick);
send_cmd(s_NickServ"NOTICE %s \2 /Ns Set Yas yas \2 Komutu ile yasinizi Belirtebilirsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s Sadece Rakam Kullanabilirsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s --"u->nick);
send_cmd(s_NickServ"NOTICE %s \2 /Ns Set burc Burc\2 Komutu ile burcunuzu belirtebilirsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s Sadece Tarafimizdan belirtilen burclari kullanabilirsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s Burclari \2 /NS Burclar \2 Komutu ile listeleyebilirsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s --"u->nick);
send_cmd(s_NickServ"NOTICE %s \2 /Ns Set Sehir sehir \2 Komutu ile Sehrinizi belirtebilirsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s Sadece tarafimizdan belirtilen sehirleri kullanabilirsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s Sehirleri, \2 /NS Sehirler\2 Komutu ile listelebilirsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s --"u->nick);
send_cmd(s_NickServ"NOTICE %s \2/NS Set Takim takim\2 Komutu ile, Takiminizi belirtebilirsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s Sadece tarafimizdan belirtilen sehirleri kullanabilirsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s Takimlari'da, \2/NS Takimlar \2 Komutu ile listeleyebilirsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s --"u->nick);
send_cmd(s_NickServ"NOTICE %s \2/NS Set FACEBOOK FaceAdresiniz\2 Komutu ile, facebook adresini gosterebilirsiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s --"u->nick);
send_cmd(s_NickServ"NOTICE %s \2/NS Set Durum Durumunuzu paylasin.\2 Komutu ile, Durum bilginizi girebilirsiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s \2"u->nick);
}



/******************************************** Coded toXic **************************************************/

static void do_durumlar(User *u)
{
NickInfo *ni;
ni get_nickinfo(u->nick);



if (!
is_services_root(u)) {
send_cmd(s_NickServ"NOTICE %s Bu Komuta Yetkiniz yok.."u->nick);
return;
}


#define ibokul "durum.txt"

FILE *p;
char buf[BUFSIZE];

fopen(ibokul"r");
if (
p) {
while (
fgets(bufsizeof(buf), p)) {
buf[strlen(buf)-1] = 0;
send_cmd(s_NickServ"NOTICE %s %s"u->nickbuf);
}
fclose(p);
} else {
send_cmd(s_NickServ"NOTICE %s Henuz bir kayit yok."u->nick);
}
}

/******************************************** Coded toXic **************************************************/


static void do_droplist(User *u)
{
NickInfo *ni;
ni get_nickinfo(u->nick);



if (!
is_services_root(u)) {
send_cmd(s_NickServ"NOTICE %s Bu Komuta Yetkiniz yok.."u->nick);
return;
}


#define iboku "ibo.txt"

FILE *x;
char buf[BUFSIZE];

fopen(iboku"r");
if (
x) {
while (
fgets(bufsizeof(buf), x)) {
buf[strlen(buf)-1] = 0;
send_cmd(s_NickServ"NOTICE %s %s"u->nickbuf);
}
fclose(x);
} else {
send_cmd(s_NickServ"NOTICE %s Henuz bir kayit yok."u->nick);
}
}


/******************************************** Coded toXic **************************************************/

static void do_motd(User *u)
{

#define motdoku "motd.txt"
 
FILE *x;
char buf[BUFSIZE];

fopen(motdoku"r");
if (
x) {
while (
fgets(bufsizeof(buf), x)) {
buf[strlen(buf)-1] = 0;
send_cmd(s_NickServ"NOTICE %s %s"u->nickbuf);
}
fclose(x);
} else {
send_cmd(s_NickServ"NOTICE %s Motd Henuz girilmemis.."u->nick);
}
}

/******************************************** Coded toXic **************************************************/

static void do_killoku(User *u)
{
NickInfo *ni;
ni get_nickinfo(u->nick);


#define killoku "kill.txt"

if (!is_services_admin(u)) {
send_cmd(s_NickServ"NOTICE %s Bu Komutu sadece \2ServicesAdminler\2 kullanabilir."u->nick);
return;
}

FILE *h;
char buf[BUFSIZE];

fopen(killoku"r");
if (
h) {
while (
fgets(bufsizeof(buf), h)) {
buf[strlen(buf)-1] = 0;
send_cmd(s_NickServ"NOTICE %s %s"u->nickbuf);
}
fclose(h);
} else {
send_cmd(s_NickServ"NOTICE %s Henuz Atilan Olmamis."u->nick);
}
}



static 
void do_mesajlist(User *u)
{
NickInfo *ni;
ni get_nickinfo(u->nick);



#define toxread "mesaj.txt"

if (!is_services_admin(u)) {
send_cmd(s_NickServ"NOTICE %s Bu Komuta Yetkiniz yok.."u->nick);
return;
}
FILE *h;
char buf[BUFSIZE];

fopen(toxread"r");
if (
h) {
while (
fgets(bufsizeof(buf), h)) {
buf[strlen(buf)-1] = 0;
send_cmd(s_NickServ"NOTICE %s %s"u->nickbuf);
}
fclose(h);
} else {
send_cmd(s_NickServ"NOTICE %s Henuz mesaj girisi olmamis."u->nick);
}
}


/******************************************** Coded toXic **************************************************/




static void do_vhostlist(User *u)
{

#define GUNSAYISI 20;
static int SEVIYEXX 60*60*24*GUNSAYISI;

char *array[10]={
  
"aLone",
"TC",
"KraL",
"O.Simdi.Asker",
"Besiktas",
"Galatasaray",
"TrabzonSpor",
"Asik",
"FenerbahceCumhuriyeti",
"Forever",
};


time_t zaman;
struct tm timeinfo;
time ( &zaman );
timeinfo localtime ( &zaman );


    
NickInfo *ni;
ni get_nickinfo(u->nick);  

if (!
ni) {
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ"NOTICE %s Once Nick kaydediniz."u->nick);
send_cmd(s_NickServ"NOTICE %s Yardim icin, \2/NS HeLpOp \2 Komutunu kullanabilirsiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);

return;
}


    if (!
is_services_admin(u) &&   ni->toplamzaman  <= SEVIYEXX) {
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ"NOTICE %s -\2"u->nick);
        
notice_lang(s_NickServuPERMISSION_DENIED);
send_cmd(s_NickServ"NOTICE %s Bu Komutu Kullanabilmek icin \2(%d)\2 gun \2(%d)\2 saat Online olmalisiniz."u->nick,(SEVIYEXX 86400),
((
SEVIYEXX 86400) / 3600));
send_cmd(s_NickServ"NOTICE %s -\2"u->nick);
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
return;

} else {
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ"NOTICE %s -\2"u->nick);
send_cmd(s_NickServ"NOTICE %s Kullanilabilir Vhost Listesi Assagidaki gibidir..",  u->nick);
send_cmd(s_NickServ"NOTICE %s -\2"u->nick);
int i;
int size 10;
for (
i=0i<sizei++)
send_cmd(s_NickServ"NOTICE %s  \2%d\2. Numara ->   \2%s"u->nicki,  array[i]);
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ"NOTICE %s Komut Kullanim saati \2%s\2 Olarak Kaydedildi.."u->nickasctime (timeinfo));
}


   
  }


/************************ coded by toxic *********************************/

 

static void do_vhostlists(User *u)
{

#define GUNSAYISI 20;
static int SEVIYEXX 60*60*24*GUNSAYISI;

char *ibo[5]={
  
"Gurbetci.MaviChat.NET",
"Turkiye.MaviChat.NET",
"Yakisikli.MaviChat.NET",
"MaviChat.NET",
"şbo.MaviChat.NET",
};


time_t zaman;
struct tm timeinfo;
time ( &zaman );
timeinfo localtime ( &zaman );

  
//  static int SEVIYEXX =  4320000; // Sure 50 gundur. istediginizi yapabilirsiniz. Tabi saniye bazinda.
  

 
NickInfo *ni;
ni get_nickinfo(u->nick);  //bunu kullanmazsam segmantation olur..

if (!ni) {
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ"NOTICE %s Once Nick kaydediniz."u->nick);
send_cmd(s_NickServ"NOTICE %s Yardim icin, \2/NS HeLpOp \2 Komutunu kullanabilirsiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);

return;
}


    if (!
is_services_admin(u) &&   ni->toplamzaman  <= SEVIYEXX) {

send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ"NOTICE %s -\2"u->nick);
        
notice_lang(s_NickServuPERMISSION_DENIED);
send_cmd(s_NickServ"NOTICE %s Bu Komutu Kullanabilmek icin \2(%d)\2 gun \2(%d)\2 saat Online olmalisiniz."u->nick,(SEVIYEXX 86400),
((
SEVIYEXX 86400) / 3600));
send_cmd(s_NickServ"NOTICE %s -\2"u->nick);
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);


return;
} else {
//fazla detaya girmeye gerek yok.


send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ"NOTICE %s -\2"u->nick);
send_cmd(s_NickServ"NOTICE %s Kullanilabilir Vhost Listesi Assagidaki gibidir..",  u->nick);
send_cmd(s_NickServ"NOTICE %s -\2"u->nick);
int i;
int size 5;
for (
i=0i<sizei++)
send_cmd(s_NickServ"NOTICE %s  \2%d\2. Numara ->   \2%s"u->nicki,  ibo[i]);
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ"NOTICE %s Komut Kullanim saati \2%s\2 Olarak Kaydedildi.."u->nickasctime (timeinfo));
            }

  }




/************************ coded by toxic *********************************/


static void do_helpop(User *u)
{
  
NickInfo *ni;    
ni  get_nickinfo(u->nick);  
if (
ni) {
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ"NOTICE %s Senin Nick'in zaten kayitli?"u->nick);
send_cmd(s_NickServ"NOTICE %s Bu Komutu Kullanamazsiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s  Sadece Kayitsiz Kullanicilar Kullanabilir."u->nick);
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);

return;
}
send_cmd(s_NickServ"SAJOIN %s  #HELP"u->nick);
}

static 
void do_operhelp(User *u)
{
    
NickInfo *ni;
ni  get_nickinfo(u->nick);
if (
ni) {
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ"NOTICE %s Senin Nick'in zaten kayitli?"u->nick);
send_cmd(s_NickServ"NOTICE %s Bu Komutu Kullanamazsiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s  Sadece Kayitsiz Kullanicilar Kullanabilir."u->nick);
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
return;
}
send_cmd(s_NickServ"SAJOIN %s  #OPERHELP"u->nick);
}

/************************ coded by toxic *********************************/

static void do_sayilar(User *u)
{
 
NickInfo *ni;
ni  get_nickinfo(u->nick);
if (!
ni) {
send_cmd(s_NickServ"NOTICE %s Nickiniz'i kaydetmelisiniz."u->nick);
return;
} else {
int a 15;
int b 36;
int c 55;
int d 73;
int e 89;

send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ"NOTICE %s -\2"u->nick); 
send_cmd(s_NickServ"NOTICE %s  \2 %d \2 Sansli rakami -> \2 SWHOIS \2 Sansli Kullanici.."u->nicka);
send_cmd(s_NickServ"NOTICE %s  \2 %d \2 Sansli rakami -> \2 +W \2 Whois cekenleri gorme."u->nickb);
send_cmd(s_NickServ"NOTICE %s  \2 %d \2 Sansli rakami -> \2 +q \2 Kanallardan atilmama"u->nickc);
send_cmd(s_NickServ"NOTICE %s  \2 %d \2 Sansli rakami -> \2 VIP Kullanici.."u->nickd);
send_cmd(s_NickServ"NOTICE %s  \2 %d \2 Sansli rakami -> \2 +W modesi \2 Whois cekenleri gorme.."u->nicke);
send_cmd(s_NickServ"NOTICE %s -\2"u->nick);
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);

  }
}

/************************************************************************/


static void do_sans(User *u)
{
NickInfo *ni;
ni  get_nickinfo(u->nick);
#define bekle 3;
static int toxolog 60*60*24*bekle;
time_t now time(NULL);
NickGroupInfo *ngi;
ngi get_ngi(ni);

if (!
ni) {
send_cmd(s_NickServ"NOTICE %s Nickiniz'i kaydetmelisiniz."u->nick);
return;
}

 

if (!
is_services_admin(u) && ngi->lastsans && now ngi->lastsans toxolog) {
send_cmd(s_NickServ"NOTICE %s Bu Komutu \2( 3 ) \2 Gunde, sadece \2 1 \2 Kez Kullanabilirsiniz.."u->nick);
return;
}

ngi->lastsans now;



int x 0;
int ibo 0;
  for (
ibo 0ibo 1; ++ibo)
        
x=rand()%100;
send_cmd(s_NickServ"NOTICE %s Sans Numaraniz, \2 ( %d )\2 Olmustur.."u->nickx);
send_cmd(s_NickServ"NOTICE %s Kazanma bilgisi "u->nick);

if (
== 35) {
send_cmd(s_NickServ"NOTICE %s Tebrikler, Sansli sayiyi yakaladiniz."u->nick);
send_cmd(s_NickServ"SWHOIS %s :Vhost Sansli Kullanicisi"u->nick);

}
else if (
== 44) {
send_cmd(s_NickServ"NOTICE %s Tebrikler, Sansli sayiyi yakaladiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s Odulunuz, Size Whois cekenleri goreceksiniz.."u->nick);
send_cmd(s_NickServ"SVSMODE %s +W :1"u->nick);

}
else if (
== 62) {
send_cmd(s_NickServ"NOTICE %s Tebrikler, Sansli sayiyi yakaladiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s Odulunuz, Kanallardan atilmayacaksiniz.."u->nick);
send_cmd(s_NickServ"SVSMODE %s +q :1"u->nick);

}
else if (
== 77) {
send_cmd(s_NickServ"NOTICE %s Tebrikler, Sansli sayiyi yakaladiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s Odulunuz, Vip Kullanicisi oldunuz."u->nick);
send_cmd(s_NickServ"SVSMODE %s +qW :1"u->nick);

}
else if (
== 93) {
send_cmd(s_NickServ"NOTICE %s Tebrikler, Sansli sayiyi yakaladiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s Odulunuz, Size Whois cekenleri goreceksiniz.."u->nick);
send_cmd(s_NickServ"SVSMODE %s +W :1"u->nick);

}
else {
send_cmd(s_NickServ"NOTICE %s Maalesef, Sansli gununuzde degilsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s Tekrar Kullanim icin, \2 3 \2 Gun beklemelisiniz.."u->nick);
     }
  }

/********************************************************************************/


static void do_kanal(User *u)
{
NickInfo *ni;
ni  get_nickinfo(u->nick);
NickGroupInfo *ngi;
ngi get_ngi(ni);

if (!
ni) {
send_cmd(s_NickServ"NOTICE %s Nickiniz'i kaydetmelisiniz."u->nick);
return;
}

int x 0;
int ibo 0;
  for (
ibo 0ibo 1; ++ibo)
        
x=rand()%10;

if (
== 1) {
send_cmd(s_NickServ"SVSJOIN %s #Bursa"u->nick);
}
else if (
== 2) {
send_cmd(s_NickServ"SVSJOIN %s #aLem"u->nick);
}
else if (
== 3) {
send_cmd(s_NickServ"SVSJOIN %s #Turkiyem"u->nick);

}
else if (
== 4) {
send_cmd(s_NickServ"SVSJOIN %s #Ortam"u->nick);

}
else if (
== 5) {
send_cmd(s_NickServ"SVSJOIN %s #Besiktas"u->nick);

else if (
== 6) {
send_cmd(s_NickServ"SVSJOIN %s #Galatasaray"u->nick);
}
else if (
== 7) {
send_cmd(s_NickServ"SVSJOIN %s #DaRKROOM"u->nick);
}
else if (
== 8) {
send_cmd(s_NickServ"SVSJOIN %s #Bismilsohbet"u->nick);
}
else if (
== 9) {
send_cmd(s_NickServ"SVSJOIN %s #Ayna"u->nick);
}
else if (
== 10) {
send_cmd(s_NickServ"SVSJOIN %s #KELEBEK"u->nick);
}

else {
send_cmd(s_NickServ"NOTICE Hata olustu."u->nick);
}
}



/*****************************   Coded toXic  ********************************/


static void do_sehirler(User *u)
{


NickInfo *ni;
ni get_nickinfo(u->nick);


  
char *array[82]={
"Adana""Adiyaman""Afyonkarahisar""Agri""Amasya",
"Ankara""Antalya""Artvin""Aydin""Balikesir",
"Bilecik""Bingol""Bitlis""Bolu""Burdur",
"Bursa""Canakkale""Cankiri""Corum""Denizli",
"Diyarbakir""Edirne""Elazig""Erzincan""Erzurum",
"Eskisehir""Gaziantep""Giresun""Gumushane""Hakkari",
"Hatay""Isparta""Mersin""Istanbul""Izmir",
"Kars""Kastamonu""Kayseri""Kirklareli""Kirsehir",
"Kocaeli""Konya""Kutahya""Malatya""Manisa",
"Kahramanmaras""Mardin""Mugla""Mus""Nevsehir",
"Nigde""Ordu""Rize""Sakarya""Samsun",
"Siirt""Sinop""Sivas""Tekirdag""Tokat",
"Trabzon""Tunceli""Sanliurfa""Usak""Van",
"Yozgat""Zonguldak""Aksaray""Bayburt""Karaman",
"Kirikkale""Batman""Sirnak""Bartin""Ardahan",
"Igdir""Yalova""Karabuk""Kilis""Osmaniye",
"Duzce""Yurtdisi",
};

if (!
ni) {
send_cmd(s_NickServ"NOTICE %s  Nick Kaydetmeden Bu komutu \2 Kullanamazsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s Ayrintili Bilgi icin\2 #HELP \2 Kanalini Kullaniniz."u->nick);
return;
}

send_cmd(s_NickServ"NOTICE %s Kullanilabilir \2Sehir\2 Listemiz"u->nick);
send_cmd(s_NickServ"NOTICE %s -"u->nick);

int i;
int size 82;
for (
i=0i<sizei++)
send_cmd(s_NickServ"NOTICE %s   \2(%d\2) Numara ->  \2%s"u->nick,  i+1,  array[i]);
}



/*****************************   Coded toXic  ********************************/


static void do_burclar(User *u)
{

NickInfo *ni;
ni get_nickinfo(u->nick);



char *array[12]={
"Koc""Boga""Ikizler""Yengec""Aslan",
"Basak""Terazi""Akrep""Yay""Oglak",
"Kova""Balik",
 };
if (!
ni) {
send_cmd(s_NickServ"NOTICE %s  Nick Kaydetmeden Bu komutu \2 Kullanamazsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s Ayrintili Bilgi icin\2 #HELP \2 Kanalini Kullaniniz."u->nick);
return;
}


send_cmd(s_NickServ"NOTICE %s Kullanilabilir \2BURC\2 Listemiz"u->nick);
send_cmd(s_NickServ"NOTICE %s -"u->nick);

int i;
int size 12;
for (
i=0i<sizei++)
send_cmd(s_NickServ"NOTICE %s   \2(%d\2) Numara ->  \2%s"u->nick,  i+1,  array[i]);
}


/*****************************   Coded toXic  ********************************/


static void do_takimlar(User *u)
{


NickInfo *ni;
ni get_nickinfo(u->nick);


char *array[13]={
"Ankaragucu""Antalyaspor""Besiktas""Bursaspor""Eskisehirspor",
"Fenerbahce""Galatasaray""Gaziantepspor""Kayserispor""Konyaspor",
"Manisaspor""Sivasspor""Trabzonspor",
};


if (!
ni) {
send_cmd(s_NickServ"NOTICE %s  Nick Kaydetmeden Bu komutu \2 Kullanamazsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s Ayrintili Bilgi icin\22 Kanalini Kullaniniz."u->nick);
return;
}

send_cmd(s_NickServ"NOTICE %s Kullanilabilir \2TAKIM\2 Listemiz"u->nick);
send_cmd(s_NickServ"NOTICE %s -"u->nick);

int i;
int size 13;
for (
i=0i<sizei++)
send_cmd(s_NickServ"NOTICE %s   \2(%d\2) Numara ->  \2%s"u->nick,  i+1,  array[i]);
}

/*****************************   Coded toXic  ********************************/


static void do_yaslar(User *u)
{
NickInfo *ni;    
ni get_nickinfo(u->nick); 


 
int toksik[60]={16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,
53,54,55,56,57,58,59,60,62,62,63,64,65,66,67,68,69,70,71,72,73,74,75};



if (!
ni) {
send_cmd(s_NickServ"NOTICE %s  Nick Kaydetmeden Bu komutu \2 Kullanamazsiniz.."u->nick);
return;
}

int i;
int size 60;
for (
i=0i<sizei++)
send_cmd(s_NickServ"NOTICE %s   \2(%d\2) Numara ->  \2%d"u->nick,  i+1,  toksik[i]);
}



/************************************************************/

// tox, tox, tox..

static void do_check(User *u)
{
    
NickInfo *ni u->ni;
    
NickGroupInfo *ngi;



if (!
ni) {
send_cmd(s_NickServ"NOTICE %s Oncelikle nickinizi kaydetmelisiniz."u->nick);
return;
}



        
char *nick strtok(NULL" ");
        if (
nick) {
            
NickInfo *ni2 get_nickinfo(nick);
            if (!
ni2) {
                
notice_lang(s_NickServuNICK_X_NOT_REGISTEREDnick);
                return;
            } else if (
ni2 == ni) {
                
/* Let the command through even for non-servadmins if they
                 * gave their own nick; it's less confusing than a
                 * "Permission denied" error */
            
} else if (!ni) {
                
notice_lang(s_NickServuPERMISSION_DENIED);
                return;
            } else {
                
ni ni2;
            }
        }
     
             
  if (!(
ngi get_ngi(ni))) {
        
notice_lang(s_NickServuINTERNAL_ERROR);
return;
    }
     if ( (
ngi->flags NF_PRIVATE) )
          {
                if 
 (!
is_oper(u))
if                  (!
nick_identified(ni) || (u->ngi != ngi))
                    {
                        
send_cmd(s_NickServ"NOTICE %s Kullanici bu bilgileri gosterime kapatmis."u->nick);
                        return;
                    }
          }


   if (
ni->status NS_VERBOTEN) {
        
notice_lang(s_NickServuNICK_X_FORBIDDENni->nick);
return;
    } else if (!
user_identified(u)) {
        
notice_lang(s_NickServuNICK_IDENTIFY_REQUIREDs_NickServ);
return;
    } 



int t;
 if (!
ngi->ajoin_count) {
            
send_cmd(s_NickServ"NOTICE %s Kullanicinin, AUTOJOIN kanali yoktur."u->nick);
} else {
 
send_cmd(s_NickServ"NOTICE %s \2  Kullanicinin AUTOJOIN kanallari siralaniyor"u->nick);
  
ARRAY_FOREACH (tngi->ajoin)
                
notice(s_NickServu->nick"    %s"ngi->ajoin[t]);
 
send_cmd(s_NickServ"NOTICE %s \2"u->nick);
}
 
send_cmd(s_NickServ"NOTICE %s \2  Kullanicinin Toplam Online zamani Gosteriliyor"u->nick);
send_cmd(s_NickServ,
"NOTICE %s :Toplam Online, \2%d\2 Gun, \2%d\2 Saat, \2%d\2 Dakika, \2%d\2 Saniye.",
u->nick,  (ni->toplamzaman 86400), ((ni->toplamzaman 86400) / 3600),
  (((
ni->toplamzaman 86400) % 3600) / 60),
  ((((
ni->toplamzaman 86400) % 3600) % 60) % 60));
 
send_cmd(s_NickServ"NOTICE %s \2"u->nick);
 
send_cmd(s_NickServ"NOTICE %s \2  Kullanicinin Yonetim seviyesi Gosteriliyor"u->nick);
if (
stricmp(ni->nickServicesRoot) == 0) {
   
send_cmd(s_NickServ"NOTICE %s :%s Services Root Administrator (SRA)",
        
u->nickni->nick);
}
 else if (
nick_is_services_admin(ni)) {
           
send_cmd(s_NickServ"NOTICE %s :%s Services Administrator (SA)",
       
u->nickni->nick);
}
 else if (
nick_is_services_oper(ni)) {
          
send_cmd(s_NickServ"NOTICE %s :%s Services Operator (SOP)",
       
u->nickni->nick);
} else {
 
send_cmd(s_NickServ"NOTICE %s  Kullanicisinin Yonetim seviyesi yoktur.. (USER)",
u->nick);
}

 
send_cmd(s_NickServ"NOTICE %s \2"u->nick);
 
send_cmd(s_NickServ"NOTICE %s \2Nick EXPIRE Bilgisi gosteriliyor"u->nick); 

 if (!
noexpire && N***pire && !(ni->status NS_NOEXPIRE)
    ) {
        
int time_left N***pire - (time(NULL) - ni->last_seen);
        if (
time_left) {
            
notice(s_NickServu->nick"Bu nick tekrar kullanilana kadar \2 %s  \2 gunluk koruma altindadir..",
                        
maketime(get_ngi(ni),time_left,0));

        }
}

        if ((
ni->status NS_NOEXPIRE))
            
send_cmd(s_NickServ"NOTICE %s :Bu Kullanici olumsuzdur \2zaman asimi yoktur\2 sinirsiz koruma altindadir.!",
 
u->nick);

 
send_cmd(s_NickServ"NOTICE %s \2"u->nick);
 
send_cmd(s_NickServ"NOTICE %s  \2Kullanicinin lastnamesi gosteriliyor"u->nick);

        
send_cmd(s_NickServ"NOTICE %s %s"u->nickni->last_realname);
 
send_cmd(s_NickServ"NOTICE %s \2"u->nick);

 
send_cmd(s_NickServ"NOTICE %s \2Kullanicinin Son QUIT Mesaji gosteriliyor"u->nick);
            
notice_lang(s_NickServuNICK_INFO_LAST_QUITni->last_quit);
 
send_cmd(s_NickServ"NOTICE %s \2"u->nick);

 
send_cmd(s_NickServ"NOTICE %s \2Kullanicinin web adresi gosteriliyor"u->nick);
        if (
ngi->url)
            
notice_lang(s_NickServuNICK_INFO_URLngi->url);
 
send_cmd(s_NickServ"NOTICE %s \2"u->nick);

send_cmd(s_NickServ"NOTICE %s \2Kullanicinin profil bilgisi gosteriliyor"u->nick);
send_cmd(s_NickServ"NOTICE %s \2"u->nick);
if((
ngi->takim!=NULL)) {
send_cmd(s_NickServ"NOTICE %s  Kullanicinin TAKIM Bilgisi gosteriliyor"u->nick);
send_cmd(s_NickServ"NOTICE %s  :[ Takim  : %s\2 ]"u->nickngi->takim);
}

if((
ngi->sehir!=NULL)) {
send_cmd(s_NickServ"NOTICE %s  Kullanicinin SEHIR Bilgisi gosteriliyor"u->nick);
send_cmd(s_NickServ"NOTICE %s :[ Sehir  : %s\2 ]"u->nickngi->sehir);
}

 if((
ngi->yas!=NULL)) {
send_cmd(s_NickServ"NOTICE %s  Kullanicinin YAS Bilgisi gosteriliyor"u->nick);
send_cmd(s_NickServ"NOTICE %s :[ Yas  : %s\2 ]"u->nickngi->yas);

}
 if((
ngi->burc!=NULL)) {
send_cmd(s_NickServ"NOTICE %s  Kullanicinin BURC Bilgisi gosteriliyor"u->nick);
send_cmd(s_NickServ"NOTICE %s :[ Burc  : %s\2 ]"u->nickngi->burc);
}

  if((
ngi->vhost!=NULL)) {
send_cmd(s_NickServ"NOTICE %s \2 Kullanicinin VHOST Bilgisi gosteriliyor"u->nick);
send_cmd(s_NickServ"NOTICE %s :[ VHOST  : %s\2 ]"u->nickngi->vhost);
}

send_cmd(s_NickServ"NOTICE %s \2"u->nick);
send_cmd(s_NickServ"NOTICE %s \2Kullanicinin LINKLIST listesi siralaniyor."u->nick);
int ibo;
    
ARRAY_FOREACH (ibongi->nicks) {
        
notice(s_NickServu->nick"    %c%s",
               
ibo==ngi->mainnick '*' ' 'ngi->nicks[ibo]);
    }
    
notice_lang(s_NickServuNICK_LISTLINKS_FOOTERngi->nicks_count);

 if (!
ngi->channels_count) {
        
send_cmd(s_NickServ"NOTICE %s Kullanicinin kayitli kanali yoktur."u->nick);
    } else {
        
int i;
        
send_cmd(s_NickServ"NOTICE %s \2  Kullanicinin kayitli kanallari siralaniyor"u->nick);
        
ARRAY_FOREACH (ingi->channels)
            
notice(s_NickServu->nick"    %s"ngi->channels[i]);
        
notice_lang(s_NickServuNICK_LISTCHANS_ENDngi->channels_count);
 
send_cmd(s_NickServ"NOTICE %s \2"u->nick);
    }
 
send_cmd(s_NickServ"NOTICE %s Eger bu komut, size uygulanmasin istiyorsaniz, \2/NS SET PRIVATE ON\2 yapiniz."u->nick);
 
send_cmd(s_NickServ"NOTICE %s Eger bu komutu kapattiktan sonra tekrar acmak istiyorsaniz, \2/NS SET PRIVATE OFF\2 yapiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s mTechnolohgy"u->nick);


}



/************************************************************/

static void do_bilgi(User *u)
{


send_cmd(s_NickServ"NOTICE %s Merhaba, \2%s\2"u->nicku->nick);
send_cmd(s_NickServ"NOTICE %s toXic tarafindan yazilip gelistirilmistir.."u->nick);
send_cmd(s_NickServ"NOTICE %s  \2IRCServices 63\2 versiyonu ustunden yazilmistir.."u->nick);
send_cmd(s_NickServ"NOTICE %s \2RuLzzServices-0.6"u->nick);
send_cmd(s_NickServ"NOTICE %s ------------------"u->nick);
send_cmd(s_NickServ"NOTICE %s \2"u->nick);
send_cmd(s_NickServ"NOTICE %s  \2 1-> \2/NS Set vhost vhostunuz \2 Komutu ile vhost secebilirsiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s  \2 2-> Vhost listesine  \2/NS VHostlist\2 Komutu ile bakabilirsiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s  \2 3->  \2/NS Profilinfo\2 Komutunu kullanarak profil bilgilerinizi girebilirsiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s  \2 4-> Bir kanalda yetkiliyseniz kanali temizlemek icin, \2/CS Temizle #KANAL\2 Komutunu kullanabilirsiniz."u->nick); 
send_cmd(s_NickServ"NOTICE %s  \2 5-> Sansinizi denemek icin, \2/NS Sans\2 Komutunu kullaniniz."u->nick);
send_cmd(s_NickServ"NOTICE %s  \2 6-> Dunya saatlerini takip etmek icin, \2/NS Yerelsaat\2 Komutunu kullaniniz."u->nick);
send_cmd(s_NickServ"NOTICE %s  \2 7-> Size INFO Cekilmesinonlemek icin, \2/NS Set PRIVATE ON\2 Komutukullaniniz."u->nick);
send_cmd(s_NickServ"NOTICE %s  \2 8-> Adminseniz, operlerin suspend atilmasini istedigi nickleri \2/NS Suspendlist\2 Komutu ile gorebilirsiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s  \2 9-> Istek icin \2/NS istek isteginiz\2, Sikayeyet icin, \2/NS Sikayet sikayetiniz\2, Onerileriniz icin, \2/NS Oneri oneriniz\2 Komutunu kullanabilirsiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s  \2 10-> Istekleri gormek icin, \2/NS Istekler\2, Sikayetleri gormek icin, \2/NS sikayetler\2, Onerileri gormek icin, \2/NS Oneriler\2 Komutunu kullaniniz. (Adminler icin)"u->nick);     
send_cmd(s_NickServ"NOTICE %s  \2 11-> \2/NS SET DURUM Durumunuz\2 Komutu ile durumunuz ile ilgili birseyler yazabilirsiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s  \2 12-> \2/NS Durum Nick\2 Komutu ile kendinizin veya arkadaslarinizin durumlarini gorebilirsiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s  \2 13-> Arkadaslarinizin puanlarini gormek icin, \2/NS Points NICK\2 Komutunu kullaniniz."u->nick);
send_cmd(s_NickServ"NOTICE %s  \2 14-> Arkadaslarinizin bilgisini gormek istiyorsaniz, \2/NS Check NICK\2 komutunu uygulayiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s  \2 15-> Adminler, \2/CS CHANINFO\2 ve \2/NS NICKINFO\2 komutu ile nick ve kanallarda kullanilan \2Oper/Admin\2 komomutlarini takip edebilirler."u->nick);
send_cmd(s_NickServ"NOTICE %s  \2 16-> Adminler, \2/OS Accrapor\2 komutu ile Oper/Admin statusunde \2eklenen/silinen\2 acceleri kontrol edebilirler."u->nick);
send_cmd(s_NickServ"NOTICE %s  \2 17-> Diger kucuk kodlamalar, bu bolume eklenmemistir."u->nick);
send_cmd(s_NickServ"NOTICE %s  \2 18-> Yapimci bilgilerini gormek icin, \2/NS toXic\2 Komutunu kullaniniz."u->nick);
send_cmd(s_NickServ"NOTICE %s \2"u->nick);
send_cmd(s_NickServ"NOTICE %s ------------------"u->nick);
}

/*
send_cmd(s_NickServ, "NOTICE %s Selamlar..", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Bu Services uzerinde, Orjinligi disinda ve total online haricinde, Kullanilan tum kodlar, \2toXic\2'e aittir.", u->nick);
send_cmd(s_NickServ, "NOTICE %s toXic tarafindan yazilip gelistirilmistir..", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2IRCServices 63\2 versiyonu ustunden yazilmistir..", u->nick);
send_cmd(s_NickServ, "NOTICE %s RuLzzServices-0.5", u->nick);
send_cmd(s_NickServ, "NOTICE %s ------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s Komutlar;", u->nick);
send_cmd(s_NickServ, "NOTICE %s ------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 1-> NS set vhost vhost", u->nick);
send_cmd(s_NickServ, "NOTICE %s Bu Komutla, belirlenen online suresini asmis kullanicilar, Kendilerine vhost secebilecekler.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Vhost secimi sadece TELNET Uzerinden belirlenen vhostlari kapsar.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Yani Kullanici, listede olmayan vhostu secemez, kullanamaz..", u->nick);
send_cmd(s_NickServ, "NOTICE %s Ve bu komutu Sadece gunde 1 kez Kullanabilir.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Komut Kullanimlari vhost.txt dosyasında listelenir.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Kullanici /NS Vhostlist komutu ile kullanabilecegi vhostlari listeleyebilir,", u->nick);
send_cmd(s_NickServ, "NOTICE %s Ve, /NS VhostHELP Komutu ilede Yardim alabilir..", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder : toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s ------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 2-> NS Set sehir sehir, isim, burc, face,  yas vs.. bilgileri.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Kullanicilar, bu bilgileri set ile secebilir.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Aynen vhosttaki gibi listelidir ve secimler sadece o liste uzerinden yapilir.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Ayrintili bilgi icin, /ns profil komutunu kullanabilirsiniz..", u->nick);
send_cmd(s_NickServ, "NOTICE %s Ayrica bu bilgiler, whoiste alt alta yansitilacaktir.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder : toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s -------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 3-> Kullanici Online suresi seviyesi", u->nick);
send_cmd(s_NickServ, "NOTICE %s Kullanicilar, Online olduklari sureye gore rutbe atlayacaklar.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Ornegin New User, Asistan User, Profosyonel User vs..", u->nick);
send_cmd(s_NickServ, "NOTICE %s Belirli Online surelerini gecmeleri durumunda gerceklesecek..", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder : toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s --------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 4-> Kullanici Kayit Tarihi suresi seviyesi", u->nick);
send_cmd(s_NickServ, "NOTICE %s Kullanicilar, nick kayitlarina gore level atlayacaklar..", u->nick);
send_cmd(s_NickServ, "NOTICE %s Nick INFOlarinda gosterimi olacak..", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder : toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s ----------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s \2 5-> Kanal Kayit Tarihi seviyesi", u->nick);
send_cmd(s_NickServ, "NOTICE %s Kanal INFOsunda, Kayit tarihinden gecen sureye gore bazi seviyeler olacak..", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder : toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s -----------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 6-> Kanal Yetkili Sayisi", u->nick);
send_cmd(s_NickServ, "NOTICE %s Kanal INFO da Kanaldaki toplam yetkili sayisi Gosterimi", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder : toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s ------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 7-> Toplam Online Zamani", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder : Sky-Dancer", u->nick);
send_cmd(s_NickServ, "NOTICE %s ------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 8-> SWHOISTE Kullanici Online Aktifligi Gosterimi", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder : toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s -------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 9-> Swhoiste Toplam Zaman gosterimi", u->nick);
send_cmd(s_NickServ, "NOTICE %s --------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 10 -> Kullanici Opermi adminmi Usermi vs. NICK Infoda bilgi..", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder : toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s --------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 11 -> Cs temizle #Kanal", u->nick);
send_cmd(s_NickServ, "NOTICE %s Kanal Operatorlerinin kanali temizlemesi icin..", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder : toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s --------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 12 -> Suspend Onayi", u->nick);
send_cmd(s_NickServ, "NOTICE %s Services Adminlerin attiklari suspendler suspends,.txt dosyasinda loglanir.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Suspend aktiflesmez.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Services, tum suspendleri listeler ve gerekli gordugu nicki suspendler.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Sadece s.root admin suspend auth yapabilir.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder : toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s ----------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 13-> Kanal ve NICK Infolari icin ozel bilgiler..", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder : toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s -----------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 14 -> Services BILGI Komutu", u->nick);
send_cmd(s_NickServ, "NOTICE %s Suan kullandiginiz komut, servicesler ile bir dosyadan okutulmaktadir.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder : toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s ------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 15 -> Sunucu yoneticilerinin kanala girisinde serviceslerin uyarisi", u->nick);
send_cmd(s_NickServ, "NOTICE %s Sunucu oper admin vs. kanala girdikleri anda chanserv uyari yapar kanalda..", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder : toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s -------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 16 -> help, helpdesk web vs. kanal vhostlari ve ozellikleri.", u->nick);
send_cmd(s_NickServ, "NOTICE %s --------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 17 -> Private Komutu ( /ns set private on/off )", u->nick);
send_cmd(s_NickServ, "NOTICE %s Kullanicilar bu komut ile nick infolarini kapatabilirler..", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder : toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s ---------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 18 -> Ve, /NS Yerelsaat", u->nick);
send_cmd(s_NickServ, "NOTICE %s Kullanici bu komut ile 10 dunya ulkesinin saatlerine erisecek..", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder : toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s ----------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s \2 19 -> Coklu Swhois eklentileri modulleri vs..", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder -> toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s  ------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 20 -> Services MOTD Komutu", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Dosyadan Okutmali motd", u->nick);
send_cmd(s_NickServ, "NOTICE %s Coder -> toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s ----------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s \2 21 -> NS Operhelp, NS HELP Gibi Stratejist Komutlar..", u->nick);
send_cmd(s_NickServ, "NOTICE %s  ---------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 22 /NS Set Mesaj Mesaj", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Bu Komutu Yalnizca Services Adminler Kullanabilecek..", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Greet mesajlari icindir. Kullanici Kanala girdiginde, ChanServ Kullanicinin belirledigi mesaji kanala yazar..", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Coder -> toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s  ---------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 23 ->/NS Sans", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Kullanici, bu komutu sansi icin kullanabilecek..", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Komut Kullanimda kisiye otomatik bir rakam verilir..", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Ve Bu rakam, belirlenen \2 5\2 Sayiya uyuyor ise, ona belirlenen hediyeler verilir.", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Ornegin Kanaldan atilmama, whois cekenleri gorme, vhost, swhois vs..", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Fakat, kisinin sans rakami gelene kadar kullanamamasi icin komut kullanimi yalnizca 3 gunde 1 kezdir.", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Coder -> toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s  ---------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 24-> NS Points", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Sistem tarafindan size verilen puanlari bu kodla gorebilirsiniz.", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Komut kullaninimi, /NS Points NICK\2", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Ayrintili Bilgi, \2/NS PointList\2", u->nick);
send_cmd(s_NickServ, "NOTICE %s CODED -> toXic ", u->nick);
send_cmd(s_NickServ, "NOTICE %s  ---------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 25 -> NS DURUM", u->nick);
send_cmd(s_NickServ, "NOTICE %s /NS SET DURUM Durumunuz komutu ile neler yaptiginizi veya yapacaginizi twitleyebilirsiniz.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Arkadaslarinizin durumunu \2/NS DURUM Nick\2 Komutu ile gorebilirsiniz.", u->nick);
send_cmd(s_NickServ, "NOTICE %s CODED -> toXic ", u->nick);
send_cmd(s_NickServ, "NOTICE %s ------------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 26 -> NS CHECK", u->nick);
send_cmd(s_NickServ, "NOTICE %s Arkadaslarinizin, tanidiklarinizin, sevdiklerinizin bi takim bilgilerini bu komutla gorebilirsiniz.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Eger, Bilgilerinizi \2CHECK\2 komutuna kapatmak istiyorsaniz, \2/NS SET PRIVATE ON\2 Komutunu kullaniniz.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Eger, tekrar kullanima acmak istiyorsaniz, \2/NS SET PRIVATE OFF\2 Komutunu kullaniniz.", u->nick);
send_cmd(s_NickServ, "NOTICE %s CODED -> toXic ", u->nick);
send_cmd(s_NickServ, "NOTICE %s ------------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 26 -> ISTEK/ONERI/SIKAYET", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Kullanicilar bu komut ile istek, oneri ve goruslerini paylasabilecekler.", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Kullanicilarin bu bildirimlerini gorme yetkisi sadece root adminde olacaktir.", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Sikayet icin, \2/NS SIKAYET Sikayetiniz\2 istek icin, \2/NS ISTEK Isteginiz\2 oneriler icin, \2/NS ONERI Oneriniz", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Coder -> toXic", u->nick);
send_cmd(s_NickServ, "NOTICE %s ------------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s  \2 28 -> Ve diger kodlamalar.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Kullanici nick identify edince kanala alinmasi, regleyince tum kanallardan cikarilip ozel bi kanala alinmasi,", u->nick);
send_cmd(s_NickServ, "NOTICE %s #Operlog services log kanali, Suspend, NOEXPIRE Bilgisi, Nick kayitli degil - bilgisi,", u->nick);
send_cmd(s_NickServ, "NOTICE %s Kanal Operatoru bilgisi, oplari founderleri vs. toplama", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Kaydedilen Kanala kurallari yazma  vs. vs. gibi kucuk seyler..", u->nick);
send_cmd(s_NickServ, "NOTICE %s CODED -> toXic ", u->nick);
send_cmd(s_NickServ, "NOTICE %s ------------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s \2", u->nick);
send_cmd(s_NickServ, "NOTICE %s Komut Kullanimi \2/OS ACCRAPOR\2 Seklindedir.", u->nick);
send_cmd(s_NickServ, "NOTICE %s ------------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s Adminlerin, Nick ve Kanal islemlerinde Kendi yetkilerini kullanarak yaptiklari islemler takip edilecek.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Komut Kullanimi: \2/NS NICKINFO\2 ve \2 /CS CHANINFO\2 Komutlaridir.", u->nick); 
send_cmd(s_NickServ, "NOTICE %s ------------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s S.root admin \2/NS ONERILER\2 , \2/NS SIKAYETLER\2 , \2/NS ISTEKLER\2 Komutu ile okuyabilecektir.", u->nick);
send_cmd(s_NickServ, "NOTICE %s ------------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s \2 Services adminler, s.operlerin attigi suspendleri \2/NS SUSPENDLIST\2 komutu ile listeleyip", u->nick);
send_cmd(s_NickServ, "NOTICE %s \2 Gerekli gordugu suspendleri aktiflestirebilecekler.", u->nick);
send_cmd(s_NickServ, "NOTICE %s ------------------------------------------------------------------------", u->nick);
send_cmd(s_NickServ, "NOTICE %s RuLzzServices, Cagin Modern IRC Servicesi", u->nick);
send_cmd(s_NickServ, "NOTICE %s toXic", u->nick);
}
*/

/***************************************************/
// toXic
static void do_yerelsaat(User *u)
{
#define TUR  (2)
#define ALM  (1)
#define ABD (-8)
#define RUS (1)
#define LUB (2)
#define Bra (-4)
#define newyork (-5)
#define kirgizistan (3)
#define jap (7)
#define paraguay (-6)
#define IRAK (1)
#define ispanya (-1)
#define Ozbek (5)
 
 
    
NickInfo *ni;
ni get_nickinfo(u->nick);
 
time_t t;
  
struct tm *ptm;
  
time (&t);
  
ptm gmtime(&t);
 
 
  if (!
ni) {
send_cmd(s_NickServ"NOTICE %s Bu Komutu Kullanamazsiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s Nickinizi Kaydetmelisiniz."u->nick);
return;
}
 
send_cmd(s_NickServ"NOTICE %s \2"u->nick);
send_cmd(s_NickServ"NOTICE %s \2 Turkiye - ISTANBUL ->\2  %02d:%02d"u->nickptm->tm_hour TURptm->tm_min);
send_cmd(s_NickServ"NOTICE %s \2 ABD - New York ->\2  %02d:%02d"u->nickptm->tm_hour newyorkptm->tm_min);
send_cmd(s_NickServ"NOTICE %s \2 Rusya - Moscova ->\2  %02d:%02d"u->nickptm->tm_hour RUSptm->tm_min);
send_cmd(s_NickServ"NOTICE %s \2 Almanya - Berlin ->\2  %02d:%02d"u->nickptm->tm_hour ALMptm->tm_min);
send_cmd(s_NickServ"NOTICE %s \2 ABD - Los AnGeLas ->\2 %02d:%02d"u->nickptm->tm_hour ABDptm->tm_min);
send_cmd(s_NickServ"NOTICE %s \2Lubnan ->\2 %02d:%02d"u->nickptm->tm_hour LUBptm->tm_min);
send_cmd(s_NickServ"NOTICE %s \2Brezilya - Rio  ->\2 %02d:%02d"u->nickptm->tm_hour Braptm->tm_min);
send_cmd(s_NickServ"NOTICE %s \2IRAK  ->\2 %02d:%02d"u->nickptm->tm_hour IRAKptm->tm_min);
send_cmd(s_NickServ"NOTICE %s \2PARAGAY  ->\2 %02d:%02d"u->nickptm->tm_hour paraguayptm->tm_min);
send_cmd(s_NickServ"NOTICE %s \2ispanya  -> Madrid \2 %02d:%02d"u->nickptm->tm_hour ispanyaptm->tm_min);
send_cmd(s_NickServ"NOTICE %s \2Japonya  ->\2 %02d:%02d"u->nickptm->tm_hour japptm->tm_min);
send_cmd(s_NickServ"NOTICE %s \2Ozbekistan ->\2 %02d:%02d"u->nickptm->tm_hour Ozbekptm->tm_min);
send_cmd(s_NickServ"NOTICE %s \2"u->nick);
 
send_cmd(s_NickServ"NOTICE %s  Kullanim Saati \2%s"u->nickctime(&t));
 
 
return;
}



/*************************************************************************/

//Coded toXic
//xHelPILL

static void do_killat(User *u)
{

NickInfo *ni;
ni get_nickinfo(u->nick);
    
char *nick strtok(NULL" ");
    
User *u2;
char *sebep;
sebep strtok_remaining();
      
NickGroupInfo *ngi;
 
ngi get_ngi(ni);
 
char buf[NICKMAX+32];
   

  if (!(
ngi get_ngi(ni))) {
        
notice_lang(s_NickServuINTERNAL_ERROR);
return;
    }




 if (!
ngi->helper==1) {
send_cmd(s_NickServ"NOTICE %s Bu Komuta Erisiminiz Yoktur.."u->nick);
send_cmd(s_NickServ"NOTICE %s Sadece Ozel Kullanicilar Kullanabilir.."u->nick);
return;
}

 if (!
sebep) {
send_cmd(s_NickServ"NOTICE %s  Sebep girmediniz."u->nick);
return;
}

 if (!(
u2 get_user(nick))) {
 
send_cmd(s_NickServ"NOTICE %s  Kullanici suanda sunucuda yok."u->nick);
return;
}

 if (
irc_stricmp(nicku->nick) == 0) {
 
send_cmd(s_NickServ"NOTICE %s  isleminiz, gerceklestirilemedi."u->nick);
return;

} else if (
ni->status NS_GUESTED) {
 
send_cmd(s_NickServ"NOTICE %s  isleminiz, gerceklestirilemedi."u->nick);
return;
}

        if (
nick) {
            
NickInfo *ni2 get_nickinfo(nick);
            if (!
ni) {
                
notice_lang(s_NickServuNICK_X_NOT_REGISTEREDnick);
                return;
            } else if (
ni2 == ni) {
            } else {
                
ni ni2;
            }
        }
 

 
send_cmd(s_NickServ"NOTICE %s isleminiz, gerceklestirilmistir.",  u->nick);
 
send_cmd(s_NickServ"PRIVMSG #toXic \2%s\2 Helperi, \2%s\2 kullanicisini \2%s\2 sebepten kill atti."u->nick,u2->nicksebep);
snprintf(bufsizeof(buf), "Sunucu Kurallarina Uymadiginiz icin \2%s\2 Tarafindan Atildiniz.."u->nick);
        
kill_user(s_NickServnickbuf);


time_t zaman;
struct tm timeinfo;
time ( &zaman );
timeinfo localtime ( &zaman );
FILE *dosya_yaz;
          
dosya_yaz fopen("kill.txt","a");
if (
dosya_yaz != NULL) {
         
fprintf(dosya_yaz,"[%s] %s KILLED -> %s Sebep -> %s\n"asctime (timeinfo), u->nicku2->nicksebep);
          
fclose(dosya_yaz);


}
}


//ahooy


/*************************************************************************/

static void do_identify(User *u)
{
    
char *pass strtok_remaining();
    
NickInfo *ni NULL;
    
NickGroupInfo *ngi NULL;
/*
       static int SEVIYEX = 1; 
    static int SEVIYEXX =  60*60*24*5;
    static int SEVIYEXXX =  60*60*24*20;
    static int SEVIYEXXXX =  60*60*24*50;
*/


    
if (!pass) {
    
syntax_error(s_NickServu"IDENTIFY"NICK_IDENTIFY_SYNTAX);

    } else if (!(
ni u->ni)) {
    
notice_lang(s_NickServuNICK_NOT_REGISTERED);

    } else if (
ni->status NS_VERBOTEN) {
    
notice_lang(s_NickServuNICK_X_FORBIDDENu->nick);

    } else if (!(
ngi u->ngi) || ngi == NICKGROUPINFO_INVALID) {
    
module_log("IDENTIFY: missing NickGroupInfo for %s"u->nick);
    
notice_lang(s_NickServuNICK_NOT_REGISTERED);

    } else if (
ngi->suspendinfo) {
    
notice_lang(s_NickServuNICK_X_SUSPENDEDu->nick);

    } else if (!
nick_check_password(uu->nipass"IDENTIFY",
                    
NICK_IDENTIFY_FAILED)) {
    
/* nothing */

    
} else if (NSRequireEmail && !ngi->email) {
    
ni->authstat |= NA_IDENT_NOMAIL;
    
notice_lang(s_NickServuNICK_IDENTIFY_EMAIL_MISSINGs_NickServ);

    } else if (
call_callback_2(modulecb_id_checkupass) <= 0) {
    
int old_authstat ni->authstat;
    
set_identified(uningi);
    
module_log("%s!%s@%s identified for nick %s",
           
u->nicku->usernameu->hostu->nick);
    
notice_lang(s_NickServuNICK_IDENTIFY_SUCCEEDED);
        




 

/**** seviye   ==  Yazilim : toXic ****/

  /*
     
 if(!is_oper(u))
        {

        if (SEVIYEXXXX &&  ni->toplamzaman  >= SEVIYEXXXX) {
        notice(s_NickServ, u->nick, "Online  Surenize Gore Durumunuz \2Profosyonel Kullanici\2 Olarak Kaydedildi");
        send_cmd(s_NickServ, "CHGHost %s ProfosyonelKullanici.%s", u->nick, u->nick);
send_cmd(s_NickServ, "SWHOIS10 %s :Kullanicisi Seviyesi : \2 Profosyonel Kullanici", u->nick);       
 }
        else if (SEVIYEXXX && ni->toplamzaman >= SEVIYEXXX) {
   notice(s_NickServ, u->nick, "Online  Surenize Gore Durumunuz \2Asistan Kullanici\2 Olarak Kaydedildi");
 send_cmd(s_NickServ, "CHGHost %s AsistanKullanici.%s", u->nick, u->nick);
send_cmd(s_NickServ, "SWHOIS10 %s :Kullanicisi Seviyesi : \2 Asistan Kullanici", u->nick);

        }

        else if (SEVIYEXX &&  ni->toplamzaman >= SEVIYEXX) {
send_cmd(s_NickServ, "SWHOIS10 %s :Kullanicisi Seviyesi : \2 StudenT Kullanici", u->nick);
 send_cmd(s_NickServ, "CHGHost %s StudenTKullanici.%s", u->nick, u->nick);
send_cmd(s_NickServ, "NOTICE %s \2Online\2 Surenize Gore Durumunuz \2StudenT Kullanici\2 Olarak Kaydedildi", u->nick);;
        }

        else if (SEVIYEX &&  ni->toplamzaman >= SEVIYEX) {
send_cmd(s_NickServ, "SWHOIS10 %s :Kullanicisi Seviyesi : \2 New Kullanici", u->nick);
send_cmd(s_NickServ, "NOTICE %s \2Online\2 Surenize Gore Durumunuz \2New  Kullanici\2 Olarak Kaydedildi", u->nick);;
        }
else {
send_cmd(s_NickServ, "SWHOIS10 %s :Kullanicisi Seviyesi : \2 Henuz yok", u->nick);
}
}


*/


       // #define toxic "#mIRC,#Sohbet,#Radyo,#Oyun"


//send_cmd(s_NickServ, "SAJOIN %s %s", u->nick, toxic);


if((ngi->vhost!=NULL)) {
send_cmd(s_NickServ"CHGHost %s %s.%s.%s"u->nick,  u->nickngi->vhostSUNUCU);
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ"NOTICE %s Merhabalar, \2 %s"u->nicku->nick);
send_cmd(s_NickServ"NOTICE %s Daha onceden secmis oldugunuz \2 %s \2 Vhostu basari ile verilmistir."u->nickngi->vhost);
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
}
if((
ngi->host!=NULL)) {
send_cmd(s_NickServ"CHGHost %s %s"u->nickngi->host);
send_cmd(s_NickServ"NOTICE %s Merhaba \2 %s \2 Yonetim tarafindan verilen \2vhost'a\2 sahip oldunuz.."u->nicku->nick);
}


if((
ngi->takim!=NULL)) {
send_cmd(s_NickServ"NOTICE %s Merhaba \2 %s"u->nicku->nick);
send_cmd(s_NickServ"NOTICE %s \2TAKIM\2 seceneginiz \2 %s \2 olarak eklendi."u->nickngi->takim);
send_cmd(s_NickServ"SWHOIS2 %s  :[ \2Takim  : %s\2 ]"u->nickngi->takim);
}

if((
ngi->sehir!=NULL)) {
send_cmd(s_NickServ"NOTICE %s \2SEHIR\2 seceneginiz \2 %s \2 olarak eklendi."u->nickngi->sehir);
send_cmd(s_NickServ"SWHOIS3 %s :[\2 Sehir  : %s\2 ]"u->nickngi->sehir);
}

 if((
ngi->yas!=NULL)) {
send_cmd(s_NickServ"NOTICE %s \2YAS\2 seceneginiz \2 %s \2 olarak eklendi."u->nickngi->yas);
send_cmd(s_NickServ"SWHOIS4 %s :[\2 Yas  : %s\2 ]"u->nickngi->yas);

}
 if((
ngi->burc!=NULL)) {
send_cmd(s_NickServ"NOTICE %s \2BURC\2 seceneginiz \2 %s \2 olarak eklendi."u->nickngi->burc);
send_cmd(s_NickServ"SWHOIS5 %s :[\2 Burc  : %s\2 ]"u->nickngi->burc);
}

 if((
ngi->facebook!=NULL)) {
send_cmd(s_NickServ"NOTICE %s \2FACE\2 seceneginiz \2 %s \2 olarak eklendi."u->nickngi->facebook);
send_cmd(s_NickServ"SWHOIS6 %s  :[\2 FACEBOOK  : %s\2 ]"u->nickngi->facebook);
}


else {
send_cmd(s_NickServ"NOTICE %s \2 /NS PROFIL \2 yazarak, bilgi alabilirsiniz.."u->nick);
}


/* Gunler,
1 saniye = Caylak
10 gun = Start
25 gun = Super Star
50 gun = Multi star
75 gun = Vezir
100 gun = Lord
200 gun = KraL
olarak ayarlanmistir istediginiz bicimde degistirebilirsiniz. */

    
static int tox 1;
    static 
int toxx =  60*60*24*10;
    static 
int toxxx =  60*60*24*25;
    static 
int toxxxx =  60*60*24*50;
    static 
int toxxxxx =  60*60*24*75;
    static 
int toxxxxxx =  60*60*24*100
    static 
int toxxxxxxx =  60*60*24*200;





 if ((!
is_services_admin(u)) && (!is_services_oper(u))) {

 if (
ni->toplamzaman  >= toxxxxxxx) {
send_cmd(s_NickServ"SWHOIS %s :Rutbe \2 KraL\2 Puani = \2%d\2",  u->nick, (ni->toplamzaman 86400 8));
}
else if (
ni->toplamzaman  >= toxxxxxx) {
send_cmd(s_NickServ"SWHOIS %s :Rutbe \2 Lord\2 Puani = \2%d\2",  u->nick, (ni->toplamzaman 86400 7));
}
else if (
ni->toplamzaman  >= toxxxxx) {
send_cmd(s_NickServ"SWHOIS %s :Rutbe \2 Vezir\2 Puani = \2%d\2",  u->nick, (ni->toplamzaman 86400 6));
} else   if (
ni->toplamzaman  >= toxxxx) {
send_cmd(s_NickServ"SWHOIS %s :Rutbe \2 Multi Star\2 Puani = \2%d\2",  u->nick, (ni->toplamzaman 86400 5));
}
  else if (
ni->toplamzaman  >= toxxx) {
send_cmd(s_NickServ"SWHOIS %s :Rutbe \2Super Star\2 Puani = \2%d\2",  u->nick, (ni->toplamzaman 86400 4));
}
  else if (
ni->toplamzaman  >= toxx) {
send_cmd(s_NickServ"SWHOIS %s :Rutbe \2Star\2 Puani = \2%d\2",  u->nick, (ni->toplamzaman 86400 3));
}
 
//else if (ni->toplamzaman  >= tox) {

else if (ni->toplamzaman   >= tox) {
send_cmd(s_NickServ"SWHOIS %s :Rutbe [\2Caylak\2] Puani = [\2%d\2]",  u->nick, (ni->toplamzaman 86400 2));
} else {
send_cmd(s_NickServ"SWHOIS %s :Henuz Puani  yok."u->nick);
}
}


/* Acmak icin slashlari kaldirin */


/*
send_cmd(s_NickServ,
"SWHOIS8 %s :Toplam Online, \2%d\2 Gun, \2%d\2 Saat, \2%d\2 Dakika, \2%d\2 Saniye.",
u->nick,  (ni->toplamzaman / 86400), ((ni->toplamzaman % 86400) / 3600),
  (((ni->toplamzaman % 86400) % 3600) / 60),
  ((((ni->toplamzaman % 86400) % 3600) % 60) % 60));
*/


 
if (ngi->helper==1) {
if (!
ngi->vip==1) {
send_cmd(s_NickServ"NOTICE %s Merhaba \2%s\2"u->nicku->nick);
send_cmd(s_NickServ"NOTICE %s \2HELPER\2 Statusunde sunucuya giris yaptiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s Helper ozellikleri, sistem tarafindan size verilmistir."u->nick);
send_cmd(s_NickServ"NOTICE %s Bunlar disinda, \2/NS KILLAT NICK SEBEP\2 komutu ile"u->nick);
send_cmd(s_NickServ"NOTICE %s Kurallara uygunsuz davranis gosteren kullanicilari atabilirsiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s KILL Atimlari, surekli takip altindadir."u->nick);
send_cmd(s_NickServ"NOTICE %s iyi gorevler dileriz.."u->nick);
send_cmd(s_NickServ"CHGHOST %s Helper.%s.%s"u->nicku->nickSUNUCU);
send_cmd(s_NickServ"CHGNAME %s %s HELP Team"u->nick);
send_cmd(s_NickServ"CHGIDENT %s IRCdSVS"u->nick);
send_cmd(s_NickServ"SVSMODE %s +hW :1"u->nick);
send_cmd(s_NickServ"PRIVMSG #OPERLOG %s Helper statusunde sunucuya giris yapmistir."u->nick);
   }
}
if (
ngi->vip==1) {
 if (!
ngi->helper==1) {
send_cmd(s_NickServ"NOTICE %s Merhaba \2%s\2"u->nicku->nick);
send_cmd(s_NickServ"NOTICE %s \2VIP\2 Statusunde sunucuya giris yaptiniz."u->nick);
send_cmd(s_NickServ"NOTICE %s VIP ozellikleri, sistem tarafindan size verilmistir."u->nick);
send_cmd(s_NickServ"CHGHOST %s VIP.%s.%s"u->nicku->nickSUNUCU);
send_cmd(s_NickServ"CHGNAME %s %s Ozel Kullanicisi"u->nickSUNUCU);
send_cmd(s_NickServ"CHGIDENT %s VIP"u->nick);
send_cmd(s_NickServ"SVSMODE %s +W :1"u->nick);
send_cmd(s_NickServ"PRIVMSG #OPERLOG \2%s\2 VIP statusunde sunucuya giris yapmistir."u->nick);
  }
}

send_cmd(s_NickServ"PRIVMSG %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ"PRIVMSG %s \2"u->nick);
send_cmd(s_NickServ"PRIVMSG %s IDENTINIZ : \2%s\2"u->nicku->username);
send_cmd(s_NickServ"PRIVMSG %s IP Adresiniz : \2%s\2"u->nicku->host);
send_cmd(s_NickServ"PRIVMSG %s FULLNAMENIZ : \%s\2"u->nicku->realname);
send_cmd(s_NickServ"PRIVMSG %s Online sureniz :  \2%d\2 Gun, \2%d\2 Saat, \2%d\2 Dakika, \2%d\2 Saniye.",
u->nick,  (ni->toplamzaman 86400), ((ni->toplamzaman 86400) / 3600),
  (((
ni->toplamzaman 86400) % 3600) / 60),
  ((((
ni->toplamzaman 86400) % 3600) % 60) % 60));
send_cmd(s_NickServ"PRIVMSG %s \2"u->nick);
send_cmd(s_NickServ"PRIVMSG %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ"PRIVMSG %s [ BILGI ] --=>  Kullanicilarin puanlarini gormek icin /NS Points NICK Komutunu kullaniniz."u->nicku->username);
send_cmd(s_NickServ"PRIVMSG %s [ SOZ ] --=>  Mezarliklar toplum icin gerekli insanlarla doludur. (Charles de Gaulle)"u->nicku->username);
send_cmd(s_NickServ"PRIVMSG %s [ FAL ] --=>  Bugun bulacak seni, begenecek gozlerini. Daha kis bitmeden, hapsedecek kalbine seni.."u->nicku->username);
send_cmd(s_NickServ"PRIVMSG %s [ SANS ] --=> Sansli sayiniz : /ns sans"u->nicku->username);
send_cmd(s_NickServ"PRIVMSG %s [ OYUN ] --=> Sansli oyun kanaliniz  #oyun"u->nicku->username);
send_cmd(s_NickServ"PRIVMSG %s [ Kanal ] --=> Sansli Muhabbet kanaliniz  #Geveze"u->nicku->username);
send_cmd(s_NickServ"PRIVMSG %s [ Yönetim Duyurusu ] --=> Nasıl Davranılmasını İstiyorsan öyle davran [ SyranaX ]"u->nicku->username);
    
call_callback_2(modulecb_identifieduold_authstat);
    }
}




/*************************************************************************/

static void do_points(User *u)
{

    
NickInfo *ni u->ni;
    
NickGroupInfo *ngi;
 
ngi get_ngi(ni);

    static 
int tox 1;
    static 
int toxx =  60*60*24*10;
    static 
int toxxx =  60*60*24*25;
    static 
int toxxxx =  60*60*24*50;
    static 
int toxxxxx =  60*60*24*75;
    static 
int toxxxxxx =  60*60*24*100;
    static 
int toxxxxxxx =  60*60*24*200;


//toxic
    
        
char *nick strtok(NULL" ");
if (!
ni) {
send_cmd(s_NickServ"NOTICE %s Nickiniz kayitsizdir."u->nick);
return;
}
        if (
nick) {
            
NickInfo *ni2 get_nickinfo(nick);
            if (!
ni2) {
                
notice_lang(s_NickServuNICK_X_NOT_REGISTEREDnick);
                return;
            } else if (
ni2 == ni) {
            } else {
                
ni ni2;
            }
        }




 if ((!
is_services_admin(u)) && (!is_services_oper(u))) {

 if (
ni->toplamzaman  >= toxxxxxxx) {
send_cmd(s_NickServ"NOTICE %s :Rutbe \2 KraL\2 Puani = \2%d\2",  u->nick, (ni->toplamzaman 86400 8));
}
else if (
ni->toplamzaman  >= toxxxxxx) {
send_cmd(s_NickServ"NOTICE %s :Rutbe \2 Lord\2 Puani = \2%d\2",  u->nick, (ni->toplamzaman 86400 7));
}
else if (
ni->toplamzaman  >= toxxxxx) {
send_cmd(s_NickServ"NOTICE %s :Rutbe \2 Vezir\2 Puani = \2%d\2",  u->nick, (ni->toplamzaman 86400 6));
} else   if (
ni->toplamzaman  >= toxxxx) {
send_cmd(s_NickServ"NOTICE %s :Rutbe \2 Multi Star\2 Puani = \2%d\2",  u->nick, (ni->toplamzaman 86400 5));
}
  else if (
ni->toplamzaman  >= toxxx) {
send_cmd(s_NickServ"NOTICE %s :Rutbe \2Super Star\2 Puani = \2%d\2",  u->nick, (ni->toplamzaman 86400 4));
}
  else if (
ni->toplamzaman  >= toxx) {
send_cmd(s_NickServ"NOTICE %s :Rutbe \2Star\2 Puani = \2%d\2",  u->nick, (ni->toplamzaman 86400 3));
}
 
//else if (ni->toplamzaman  >= tox) {

else if (ni->toplamzaman   >= tox) {
send_cmd(s_NickServ"NOTICE %s :Rutbe [\2Caylak\2] Puani = [\2%d\2]",  u->nick, (ni->toplamzaman 86400 2));
} else {
send_cmd(s_NickServ"NOTICE %s :Henuz Puani yok"u->nick);
}
}
}

/***************************************************************************/
static void do_durum(User *u)
{

      
NickInfo *ni u->ni;
    
NickGroupInfo *ngi;
 
ngi get_ngi(ni);
     
char *nick strtok(NULL" ");
 

char *tarih;
tarih strtok_remaining();


  

    if (!
nick) {
  
send_cmd(s_NickServ"NOTICE %s Lutfen, Durumunu gormek istediginiz kisinin nickini yaziniz.",  u->nick);
return;
}


if (!
ni) {
send_cmd(s_NickServ"NOTICE %s Nickiniz kayitsizdir."u->nick);
return;
}



   



         if (
nick) {
            
NickInfo *ni2 get_nickinfo(nick);
            if (!
ni2) {
                
notice_lang(s_NickServuNICK_X_NOT_REGISTEREDnick);
                return;
            } else if (
ni2 == ni) {
            } else {
                
ni ni2;
            }
        }

  if (!(
ngi get_ngi(ni))) {
        
notice_lang(s_NickServuINTERNAL_ERROR);
return;
    }


if ((
ngi->durum!=NULL)) {
send_cmd(s_NickServ"NOTICE %s  \2Kullanicinin Durumu  :\2  %s"u->nick,  ngi->durum);
} else {
 
send_cmd(s_NickServ"NOTICE %s Kullanicinin herhangi bir bilgisi yoktur.",  u->nick);

}


/***************************************************************************/

 


static void do_drop(User *u)
{
    
char *pass strtok(NULL" ");
    
NickInfo *ni u->ni;
    
NickGroupInfo *ngi = (u->ngi==NICKGROUPINFO_INVALID NULL u->ngi);

    if (
readonly && !is_services_admin(u)) {
    
notice_lang(s_NickServuNICK_DROP_DISABLED);
    return;
    }
/*
 static int ibos =  60*60*24*6;
if (!is_services_admin(u) &&   ni->toplamzaman  <= ibos) {
send_cmd(s_NickServ, "NOTICE %s Bu Komutu Kullanmak icin puaniniz \2(6)\2 Olmalidir.", u->nick);
send_cmd(s_NickServ, "NOTICE %s Sizin puaniniz \2%d\2",  u->nick, (ni->toplamzaman / 86400 * 3));
    return;
}
*/
    
if (!pass || strtok_remaining()) {
    
syntax_error(s_NickServu"DROP"NICK_DROP_SYNTAX);
    if (
find_module("nickserv/link") || find_module("nickserv/oldlink"))
        
notice_lang(s_NickServuNICK_DROP_WARNING);
    } else if (!
ni || !ngi) {
    
notice_lang(s_NickServuNICK_NOT_REGISTERED);
    } else if (
ngi->suspendinfo) {
    
notice_lang(s_NickServuNICK_X_SUSPENDEDu->nick);
    } else if (!
nick_check_password(uu->nipass"DROP",
                    
NICK_DROP_FAILED)) {
    
/* nothing */
    
} else {
    if (
readonly)  /* they must be a servadmin in this case */
        
notice_lang(s_NickServuREAD_ONLY_MODE);
    
drop_nickgroup(ngiuNULL);
    
notice_lang(s_NickServuNICK_DROPPED);
    }
}

/*************************************************************************/

/* Services admin function to drop another user's nickname.  Privileges
 * assumed to be pre-checked.
 */

static void do_dropnick(User *u)
{
    
char *nick strtok(NULL" ");
    
NickInfo *ni;
    
NickGroupInfo *ngi;

#ifdef CLEAN_COMPILE
    
ngi NULL;
#endif

    
if (!nick) {
    
syntax_error(s_NickServu"DROPNICK"NICK_DROPNICK_SYNTAX);
    } else if (!(
ni get_nickinfo(nick))) {
    
notice_lang(s_NickServuNICK_X_NOT_REGISTEREDnick);
    } else if (
ni->nickgroup && !(ngi get_ngi(ni))) {
    
notice_lang(s_NickServuINTERNAL_ERROR);
    } else if (
NSSecureAdmins && nick_is_services_admin(ni) &&
                            !
is_services_root(u)) {
    
notice_lang(s_NickServuPERMISSION_DENIED);
    } else {
    if (
readonly)
        
notice_lang(s_NickServuREAD_ONLY_MODE);
    if (
ni->nickgroup) {
        
drop_nickgroup(ngiuPTR_INVALID);
    } else {
        
module_log("%s!%s@%s dropped forbidden nick %s",
               
u->nicku->usernameu->hostni->nick);
        
delnick(ni);
    }
    
notice_lang(s_NickServuNICK_X_DROPPEDnick);
    }
}

/*************************************************************************/

/* Services admin function to drop all nicknames whose E-mail address
 * matches the given mask.  Privileges assumed to be pre-checked.
 */

/* List of recent DROPEMAILs for CONFIRM */
static struct {
    
char sender[NICKMAX];    /* Who sent the command (empty = no entry) */
    
char mask[BUFSIZE];        /* What mask was used */
    
int count;
    
time_t sent;        /* When the command was sent */
dropemail_buffer[DROPEMAIL_BUFSIZE];

static 
void do_dropemail(User *u)
{
    
char *mask strtok(NULL" ");
    
NickGroupInfo *ngi;
    
int countifound;

    
/* Parameter check */
    
if (!mask || strtok_remaining()) {
    
syntax_error(s_NickServu"DROPEMAIL"NICK_DROPEMAIL_SYNTAX);
    return;
    }
    if (
strlen(mask) > sizeof(dropemail_buffer[0].mask)-1) {
    
notice_lang(s_NickServuNICK_DROPEMAIL_PATTERN_TOO_LONG,
            
sizeof(dropemail_buffer[0].mask)-1);
    return;
    }

    
/* Count nicks matching this mask; exit if none found */
    
if (strcmp(mask,"-") == 0)
    
mask NULL;
    
count 0;
    for (
ngi first_nickgroupinfo(); ngingi next_nickgroupinfo()) {
    if ((
mask && ngi->email && match_wild_nocase(mask,ngi->email))
     || (!
mask && !ngi->email)
    ) {
        
count += ngi->nicks_count;
    }
    }
    if (!
count) {
    
notice_lang(s_NickServuNICK_DROPEMAIL_NONE);
    return;
    }
    if (
mask == NULL)
    
mask "-";

    
/* Clear out any previous entries for this sender/mask */
    
for (0DROPEMAIL_BUFSIZEi++) {
    if (
irc_stricmp(u->nickdropemail_buffer[i].sender) == 0
     
&& stricmp(maskdropemail_buffer[i].mask) == 0
    
) {
        
memset(&dropemail_buffer[i], 0sizeof(dropemail_buffer[i]));
    }
    }

    
/* Register command in buffer */
    
found = -1;
    for (
0DROPEMAIL_BUFSIZEi++) {
    if (!*
dropemail_buffer[i].sender) {
        
found i;
        break;
    }
    }
    if (
found 0) {
    
found 0;
    for (
1DROPEMAIL_BUFSIZEi++) {
        if (
dropemail_buffer[i].sent dropemail_buffer[found].sent)
        
found i;
    }
    }
    
memset(&dropemail_buffer[found], 0sizeof(dropemail_buffer[found]));
    
strscpy(dropemail_buffer[found].senderu->nick,
        
sizeof(dropemail_buffer[found].sender));
    
strscpy(dropemail_buffer[found].maskmask,
        
sizeof(dropemail_buffer[found].mask));
    
dropemail_buffer[found].sent time(NULL);
    
dropemail_buffer[found].count count;

    
/* Send count and prompt for confirmation */
    
notice_lang(s_NickServuNICK_DROPEMAIL_COUNTcounts_NickServmask);
}


static 
void do_dropemail_confirm(User *u)
{
    
char *mask strtok(NULL" ");
    
NickGroupInfo *ngi;
    
int i;

    
/* Parameter check */
    
if (!mask || strtok_remaining()) {
    
syntax_error(s_NickServu"DROPEMAIL-CONFIRM",
             
NICK_DROPEMAIL_CONFIRM_SYNTAX);
    return;
    }

    
/* Make sure this is a DROPEMAIL that (1) we've seen and (2) hasn't
     * expired */
    
for (0DROPEMAIL_BUFSIZEi++) {
    if (
irc_stricmp(u->nickdropemail_buffer[i].sender) == 0
     
&& stricmp(maskdropemail_buffer[i].mask) == 0
     
&& time(NULL) - dropemail_buffer[i].sent NSDropEmailExpire
    
) {
        break;
    }
    }
    if (
>= DROPEMAIL_BUFSIZE) {
    
notice_lang(s_NickServuNICK_DROPEMAIL_CONFIRM_UNKNOWN);
    return;
    }

    
/* Okay, go ahead and delete */
    
notice_lang(s_NickServuNICK_DROPEMAIL_CONFIRM_DROPPING,
        
dropemail_buffer[i].count);
    if (
readonly)
    
notice_lang(s_NickServuREAD_ONLY_MODE);
    if (
strcmp(mask,"-") == 0)
    
mask NULL;
    for (
ngi first_nickgroupinfo(); ngingi next_nickgroupinfo()) {
    if ((
mask && ngi->email && match_wild_nocase(mask,ngi->email))
     || (!
mask && !ngi->email)
    ) {
        
drop_nickgroup(ngiumask mask "-");
    }
    }
    
notice_lang(s_NickServuNICK_DROPEMAIL_CONFIRM_DROPPED);
}



/*************************************************************************/


static void do_istek(User *u)
{

char *reason;
   
reason strtok_remaining();

NickInfo *ni;
ni get_nickinfo(u->nick);

if (!
ni) {
send_cmd(s_NickServ"NOTICE %s Once Nickinizi kayit etmelisiniz."u->nick);
return;
}


 if (!
reason) {
send_cmd(s_NickServ"NOTICE %s  Isteginizi girmediniz."u->nick);
return;
}


#define toxgun 1;
static int tox 60*60*24*toxgun;
 


    if (!
is_services_admin(u) &&   ni->toplamzaman  <= tox) {
send_cmd(s_NickServ"NOTICE %s Bu Komutu Kullanamazsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s \2NEDEN\2 -> Nick Online puaniniz,  \2 ( 2 ) \2 Olmalidir."u->nick);
return;
}
else {




time_t zaman;
struct tm timeinfo;
time ( &zaman );
timeinfo localtime ( &zaman );
FILE *dosya_yaz;
          
dosya_yaz fopen("istek.txt","a");
if (
dosya_yaz != NULL) {
          
fprintf(dosya_yaz,"[%s] %s  -> %s\n"asctime (timeinfo), u->nickreason);
  
fprintf(dosya_yaz,"-----------------------\n");
          
fclose(dosya_yaz);
}

send_cmd(s_NickServ"NOTICE %s Isteginiz alinmistir."u->nick);
send_cmd(s_NickServ"PRIVMSG #Kontrol %s Kullanici bir istekte bulundu."u->nick);
  }
}

/*************************************************************************/


static void do_oneri(User *u)
{
char *reason;
   
reason strtok_remaining();
NickInfo *ni;
ni get_nickinfo(u->nick);


if (!
ni) {
send_cmd(s_NickServ"NOTICE %s Once Nickinizi kayit etmelisiniz."u->nick);
return;
}

 if (!
reason) {
send_cmd(s_NickServ"NOTICE %s  Onerinizi girmediniz."u->nick);
return;
}

#define toxgun 1;
static int tox 60*60*24*toxgun;

    if (!
is_services_admin(u) &&   ni->toplamzaman  <= tox) {
send_cmd(s_NickServ"NOTICE %s Bu Komutu Kullanamazsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s \2NEDEN\2 -> Nick Online puaniniz,  \2 ( 2 ) \2 Olmalidir."u->nick);
return;
}
else {





time_t zaman;
struct tm timeinfo;
time ( &zaman );
timeinfo localtime ( &zaman );
FILE *dosya_yaz;
          
dosya_yaz fopen("oneri.txt","a");
if (
dosya_yaz != NULL) {
          
fprintf(dosya_yaz,"[%s] %s  -> %s\n"asctime (timeinfo), u->nickreason);
  
fprintf(dosya_yaz,"-----------------------\n");
          
fclose(dosya_yaz);
}

send_cmd(s_NickServ"NOTICE %s Oneriniz alinmistir."u->nick);
send_cmd(s_NickServ"PRIVMSG #Kontrol %s Kullanici bir oneride bulundu."u->nick);

  }
}

/*************************************************************************/


static void do_sikayet(User *u)
{
char *reason;
   
reason strtok_remaining();
NickInfo *ni;
ni get_nickinfo(u->nick);


if (!
ni) {
send_cmd(s_NickServ"NOTICE %s Once Nickinizi kayit etmelisiniz."u->nick);
return;
}

 if (!
reason) {
send_cmd(s_NickServ"NOTICE %s  sikayetnizi girmediniz."u->nick);
return;
}

#define toxgun 1;
static int tox 60*60*24*toxgun;

    if (!
is_services_admin(u) &&   ni->toplamzaman  <= tox) {
send_cmd(s_NickServ"NOTICE %s Bu Komutu Kullanamazsiniz.."u->nick);
send_cmd(s_NickServ"NOTICE %s \2NEDEN\2 -> Nick Online puaniniz,  \2 ( 2 ) \2 Olmalidir."u->nick);
return;
}
else {
 
time_t zaman;
struct tm timeinfo;
time ( &zaman );
timeinfo localtime ( &zaman );
FILE *dosya_yaz;
          
dosya_yaz fopen("sikayet.txt","a");
if (
dosya_yaz != NULL) {
          
fprintf(dosya_yaz,"[%s] %s  -> %s\n"asctime (timeinfo), u->nickreason);
  
fprintf(dosya_yaz,"-----------------------\n");
          
fclose(dosya_yaz);
}

send_cmd(s_NickServ"NOTICE %s sikayetniz alinmistir."u->nick);
send_cmd(s_NickServ"PRIVMSG #OperLog %s Kullanici bir sikayette bulundu."u->nick);

  }
}




/*************************************************************************/

static void do_sikayetler(User *u)
{
NickInfo *ni;
ni get_nickinfo(u->nick);



if (!
is_services_root(u)) {
send_cmd(s_NickServ"NOTICE %s Bu Komuta Yetkiniz yok.."u->nick);
return;
}




#define ibokus "sikayet.txt"

FILE *x;
char buf[BUFSIZE];

fopen(ibokus"r");
if (
x) {
while (
fgets(bufsizeof(buf), x)) {
buf[strlen(buf)-1] = 0;
send_cmd(s_NickServ"NOTICE %s %s"u->nickbuf);
}
fclose(x);
} else {
send_cmd(s_NickServ"NOTICE %s Henuz bir kayit yok."u->nick);
}
}
/*************************************************************************/

static void do_istekler(User *u)
{
NickInfo *ni;
ni get_nickinfo(u->nick);



if (!
is_services_root(u)) {
send_cmd(s_NickServ"NOTICE %s Bu Komuta Yetkiniz yok.."u->nick);
return;
}


#define ibokui "istek.txt"

FILE *x;
char buf[BUFSIZE];

fopen(ibokui"r");
if (
x) {
while (
fgets(bufsizeof(buf), x)) {
buf[strlen(buf)-1] = 0;
send_cmd(s_NickServ"NOTICE %s %s"u->nickbuf);
}
fclose(x);
} else {
send_cmd(s_NickServ"NOTICE %s Henuz bir kayit yok."u->nick);
}
}
/*************************************************************************/

static void do_oneriler(User *u)
{
NickInfo *ni;
ni get_nickinfo(u->nick);



if (!
is_services_root(u)) {
send_cmd(s_NickServ"NOTICE %s Bu Komuta Yetkiniz yok.."u->nick);
return;
}


#define ibokuo "oneri.txt"

FILE *x;
char buf[BUFSIZE];

fopen(ibokuo"r");
if (
x) {
while (
fgets(bufsizeof(buf), x)) {
buf[strlen(buf)-1] = 0;
send_cmd(s_NickServ"NOTICE %s %s"u->nickbuf);
}
fclose(x);
} else {
send_cmd(s_NickServ"NOTICE %s Henuz bir kayit yok."u->nick);
}
}


/*************************************************************************/

static void do_nickinfo(User *u)
{
if (!
is_services_admin(u)) {
send_cmd(s_NickServ"NOTICE %s :Bu Komuta Yetkiniz yok.."u->nick);
return;
}

char *ibokuc "nickservibo.txt";

char buf[BUFSIZE];

FILE *fopen(ibokuc"r");
if (
x) {
while (
fgets(bufsizeof(buf), x)) {
buf[strlen(buf)-1] = 0;
send_cmd(s_NickServ"NOTICE %s :%s"u->nickbuf);
}
fclose(x);
} else {
send_cmd(s_NickServ"NOTICE %s :Henuz bir kayit yok."u->nick);
}
}



/*************************************************************************/

/* Show hidden info to nick owners and sadmins when the "ALL" parameter is
 * supplied. If a nick is online, the "Last seen address" changes to "Is
 * online from".
 * Syntax: INFO <nick> {ALL}
 * -TheShadow (13 Mar 1999)
 */

/* Check the status of show_all and make a note of having done so.  This is
 * used at the end, to see whether we should print a "use ALL for more info"
 * message.  Note that this should be the last test in a boolean expression,
 * to ensure that used_all isn't set inappropriately. */
#define CHECK_SHOW_ALL (used_all++, show_all)

static void do_info(User *u)
{
#define kayitsiz "Kullanicinin Nicki Kayitsizdir.."
#define kayitsiz2 "Bu nedenle INFO Bilgileri yoktur.."
#define yasakli "Bu Kullanicinin NICKi yasaklanmistir.."
#define yasakli2 "Bu Neden ile, INFO Bilgilerine erisilemiyor.."
    
char *nick strtok(NULL" ");
    
char *param strtok(NULL" ");
    
NickInfo *ni
ni get_nickinfo(u->nick);
    
NickGroupInfo *ngi;
    static 
int toxic 1;
    static 
int toxicc =  4320000;
    static 
int toxiccc 8640000;
    static 
int toxicccc 17280000;
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ"NOTICE %s :\2"u->nick);



    if (!
nick) {
        
syntax_error(s_NickServu"INFO"NICK_INFO_SYNTAX);


    } else if (!(
ni get_nickinfo(nick))) {
    
send_cmd(s_NickServ"NOTICE %s %s"u->nickkayitsiz);
        
send_cmd(s_NickServ"NOTICE %s %s"u->nickkayitsiz2);
    } else if (
ni->status NS_VERBOTEN) {
    
notice_lang(s_NickServuNICK_X_FORBIDDENnick);
        
send_cmd(s_NickServ"NOTICE %s %s"u->nickyasakli);
        
send_cmd(s_NickServ"NOTICE %s %s"u->nickyasakli2);

    } else {
    
char buf[BUFSIZE], *end;
    const 
char *commastr getstring(u->ngiCOMMA_SPACE);
    
int need_comma 0;
    
int nick_online 0;
    
int can_show_all 0show_all 0used_all 0;

  
ngi get_ngi(ni);


     if ( (
ngi->flags NF_PRIVATE) )
          {
                if
 (!
is_oper(u))
                  if (!
nick_identified(ni) || (u->ngi != ngi))
                    {
                        
send_cmd(s_NickServ"NOTICE %s Kullanici bu bilgileri gosterime kapatmis."u->nick);
                        return;
                    }
          }
         

if (!
ngi) {
        
notice_lang(s_NickServuINTERNAL_ERROR);
        return;
    }


    
/* Is the real owner of the nick we're looking up online? -TheShadow */
    
if (ni->user && nick_id_or_rec(ni))
        
nick_online 1;

        
/* Only show hidden fields to owner and sadmins and only when the ALL
     * parameter is used. -TheShadow */
    
can_show_all = ((u==ni->user && nick_online) || is_services_admin(u));

    if (
can_show_all && (param && stricmp(param"ALL") == 0))
        
show_all 1;

    
notice_lang(s_NickServuNICK_INFO_REALNAME,
            
nickni->last_realname);
  if (
stricmp(ni->nickServicesRoot) == 0) {
   
send_cmd(s_NickServ"NOTICE %s :%s \2Services Root Administrator (SRA)",
        
u->nickni->nick);
}
 else if (
nick_is_services_admin(ni)) {
           
send_cmd(s_NickServ"NOTICE %s :%s \2Services Administrator (SA)",
       
u->nickni->nick);
}
 else if (
nick_is_services_oper(ni)) {
          
send_cmd(s_NickServ"NOTICE %s :%s \2Services Operator (SOP)",
       
u->nickni->nick);
}

else if (
ngi->helper==1) {
send_cmd(s_NickServ"NOTICE %s :\2%s\2 Services \2Helper\2 (SH)"u->nickni->nick);
}

  
 


    
/* Ignore HIDE and show the real hostmask to anyone who can use
     * INFO ALL. */
    
if (nick_online) {
        if (!(
ngi->flags NF_HIDE_MASK) || can_show_all)
        
notice_lang(s_NickServuNICK_INFO_ADDRESS_ONLINE,
            
can_show_all ni->last_realmask ni->last_usermask);
        else
        
notice_lang(s_NickServuNICK_INFO_ADDRESS_ONLINE_NOHOST,
                
ni->nick);
    } else {
        if (!(
ngi->flags NF_HIDE_MASK) || can_show_all)
        
notice_lang(s_NickServuNICK_INFO_ADDRESS,
            
can_show_all ni->last_realmask ni->last_usermask);
            
strftime_lang(bufsizeof(buf), u->ngi,
              
STRFTIME_DATE_TIME_FORMATni->last_seen);
            
notice_lang(s_NickServuNICK_INFO_LAST_SEENbuf);
    }
  if (!
noexpire && N***pire && !(ni->status NS_NOEXPIRE)
    ) {
        
int time_left N***pire - (time(NULL) - ni->last_seen);
        if (
time_left) {
            
notice(s_NickServu->nick"Bu nick tekrar kullanilana kadar \2 %s  \2 gunluk koruma altindadir..",
                        
maketime(get_ngi(ni),time_left,0));

        }
}

        if ((
ni->status NS_NOEXPIRE)) 
            
send_cmd(s_NickServ"NOTICE %s :Bu Kullanici olumsuzdur \2zaman asimi yoktur\2 sinirsiz koruma altindadir.!",
 
u->nick);

send_cmd(s_NickServ,
"NOTICE %s :Toplam \2Online\2  Suresi, \2%d\2 Gun, \2%d\2 Saat, \2%d\2 Dakika, \2%d\2 Saniye."
u->nick,  (ni->toplamzaman 86400), ((ni->toplamzaman 86400) / 3600),
  (((
ni->toplamzaman 86400) % 3600) / 60),
  ((((
ni->toplamzaman 86400) % 3600) % 60) % 60));

        if (
ni->toplamzaman  >= toxicccc) {
                
notice(s_NickServu->nick"\2Online\2 Durumuna Gore Seviyesi \2(ProfosyoneL Kullanici)\2");

        }
        else if (
ni->toplamzaman >= toxiccc) {
                
notice(s_NickServu->nick"\2Online\2 Durumuna Gore Seviyesi \2(Asistan Kullanici)\2");

        }
        else if (
ni->toplamzaman >= toxicc) {
        
notice(s_NickServu->nick"\2Online\2 Durumuna Gore Seviyesi \2(StudenT Kullanici)\2");
        }

else  if (
ni->toplamzaman >= toxic) {
        
notice(s_NickServu->nick"\2Online\2 Durumuna Gore Seviyesi \2(New Kullanici)\2");
}
else { 
 
notice(s_NickServu->nick"\2Henuz,  Online Seviye Durumuna Gecememis");
}




  
/*
#define GUNX 1;
static int iboX = 60*60*24*GUNX;
#define GUNXX 10;
static int iboXX = 60*60*24*GUNXX;
#define GUNXXX 20;
static int iboXXX = 60*60*24*GUNXXX;
#define GUNXXXX 50;
static int iboXXXX = 60*60*24*GUNXXXX; 




  

        if (iboXXXX &&  ni->time_registered   >= iboXXXX) {
             notice(s_NickServ, u->nick, "\2Kayit\2 Durumuna Gore Durumu \2(Artik emekli olma zamani gelmis.)\2");

        }
        else if (iboXXX && ni->time_registered  >= iboXXX) {
             notice(s_NickServ, u->nick, "\2Kayit\2 Durumuna Gore Durumu \2(Kendi Ortamini Kurmus.)\2");

        }
        else if (iboXX &&  ni->time_registered  >= iboXX) {
             notice(s_NickServ, u->nick, "\2Kayit\2 Durumuna Gore Durumu \2(Ortamlara girmeye calisiyor.)\2");
        }

        else  if (iboX &&  ni->time_registered  >= iboX) {
              notice(s_NickServ, u->nick, "\2Kayit\2 Durumuna Gore Durumu \2(Henuz Cok caylak..)\2");

}
else {
 notice(s_NickServ, u->nick, "\2Henuz,  Kayit seviye  Durumuna Gecememis..");
}
        
*/


    
strftime_lang(bufsizeof(buf), u->ngiSTRFTIME_DATE_TIME_FORMAT,
              
ni->time_registered);
    
notice_lang(s_NickServuNICK_INFO_TIME_REGGEDbuf);
    if (
ni->last_quit && (!(ngi->flags NF_HIDE_QUIT) || CHECK_SHOW_ALL))
        
notice_lang(s_NickServuNICK_INFO_LAST_QUITni->last_quit);
    if (
ngi->url)
        
notice_lang(s_NickServuNICK_INFO_URLngi->url);
    if (
ngi->email && (!(ngi->flags NF_HIDE_EMAIL) || CHECK_SHOW_ALL)) {
        if (
ngi->authcode) {
        if (
can_show_all) {
            
notice_lang(s_NickServuNICK_INFO_EMAIL_UNAUTHED,
                
ngi->email);
        }
        } else {
        
notice_lang(s_NickServuNICK_INFO_EMAILngi->email);
        }
    }
    if (
ngi->info)
        
notice_lang(s_NickServuNICK_INFO_INFOngi->info);

     

    *
buf 0;
    
end buf;
    if (
ngi->flags NF_KILLPROTECT) {
        
end += snprintf(endsizeof(buf)-(end-buf), "%s",
                
getstring(u->ngiNICK_INFO_OPT_KILL));
        
need_comma 1;
    }
    if (
ngi->flags NF_SECURE) {
        
end += snprintf(endsizeof(buf)-(end-buf), "%s%s",
                
need_comma commastr "",
                
getstring(u->ngiNICK_INFO_OPT_SECURE));
        
need_comma 1;
    }
    if (
ngi->flags NF_PRIVATE) {
        
end += snprintf(endsizeof(buf)-(end-buf), "%s%s",
                
need_comma commastr "",
                
getstring(u->ngiNICK_INFO_OPT_PRIVATE));
        
need_comma 1;
    }
    
notice_lang(s_NickServuNICK_INFO_OPTIONS,
            *
buf buf getstring(u->ngiNICK_INFO_OPT_NONE));

    if (
ngi->suspendinfo) {
        
notice_lang(s_NickServuNICK_X_SUSPENDEDnick);
send_cmd(s_NickServ"NOTICE %s Suspendli Nickler Hk. sikayetler icin, HELPDESK kanalini kullanin."u->nick);

        if (
CHECK_SHOW_ALL) {
        
SuspendInfo *si ngi->suspendinfo;
        
char timebuf[BUFSIZE], expirebuf[BUFSIZE];

        
strftime_lang(timebufsizeof(timebuf), u->ngi,
                  
STRFTIME_DATE_TIME_FORMATsi->suspended);
        
expires_in_lang(expirebufsizeof(expirebuf), u->ngi,
                
si->expires);
        
notice_lang(s_NickServuNICK_INFO_SUSPEND_DETAILS,
                
si->whotimebufexpirebuf);
        
notice_lang(s_NickServuNICK_INFO_SUSPEND_REASON,
                
si->reason);
        }
    }

    if (
can_show_all && !show_all && used_all)
        
notice_lang(s_NickServuNICK_INFO_SHOW_ALLs_NickServ,
            
ni->nick);
  
send_cmd(s_NickServ"NOTICE %s :%s nicki size [/NickServ INFO] komutunu uyguladı."ni->nicku->nick);

 if(!
stricmp("toXic"nick)) {
    
send_cmd(s_NickServ"NOTICE %s :\2%s\2  RuLzzServices \2IRCd - Services\2 Head Coder!",
        
u->nickni->nick);
 }
 
send_cmd(s_NickServ"NOTICE %s \2"u->nick);
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~ \2Special INFO\2 ~~~~~~~~~~~~~~~~"u->nick);

if ((
ngi->durum != NULL)) {
send_cmd(s_NickServ"NOTICE %s Kullanici \2DURUM\2 Bilgisi girmistir."u->nick);
} else {
send_cmd(s_NickServ"NOTICE %s Kullanici \2DURUM\2 Bilgisi girmemistir."u->nick);
}

if((
ngi->takim!=NULL)) {
send_cmd(s_NickServ"NOTICE %s Kullanicinin TAKIMI : \2%s\2"u->nickngi->takim);
}
 if((
ngi->sehir!=NULL)) {
send_cmd(s_NickServ"NOTICE %s Kullanicinin SEHRI : \2%s\2"u->nickngi->sehir);
}

 if((
ngi->yas!=NULL)) {
send_cmd(s_NickServ"NOTICE %s Kullanicinin YASI : \2%s\2"u->nickngi->yas);

}
 if((
ngi->burc!=NULL)) {
send_cmd(s_NickServ"NOTICE %s Kullanicinin BURCu : \2%s\2"u->nickngi->burc);
}
 if((
ngi->facebook!=NULL)) {
send_cmd(s_NickServ"NOTICE %s Kullanicinin Facebooku : \2%s\2"u->nickngi->facebook);
}
 if (
ngi->noop==1) {
send_cmd(s_NickServ"NOTICE %s Bu Kullaniciya Access Eklenemez."u->nick);
} else {
send_cmd(s_NickServ"NOTICE %s Bu Kullaniciya Access Eklenebilir."u->nick);
}



send_cmd(s_NickServ"NOTICE %s :\2"u->nick);
send_cmd(s_NickServ"NOTICE %s :Tüm Nick ve Kanallar\2 GENEL IRC kuralları\2 dahilinde ilk kayit eden kişiye Aittir"u->nicku->nick);
send_cmd(s_NickServ"NOTICE %s :IRC Yönetimi, \2Nick\2 ve \2Kanalların\2 kullanımını kurallar dahilinde \2yasaklayabilir, devir edebilir."u->nicku->nick);
send_cmd(s_NickServ"NOTICE %s :Yönetim bu konuda herhangi bir ACIKLAMA veya DUYURU gerekmedikçe yapmaz."u->nicku->nick);
send_cmd(s_NickServ"NOTICE %s :Bu Kisi \2IRC bağımlısıdır, tedavisi yoktur.!"u->nicku->nick);
send_cmd(s_NickServ"NOTICE %s :\2"u->nick);
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);

    }
}

/*************************************************************************/

static void do_listchans(User *u)
{
    
NickInfo *ni u->ni;
    
NickGroupInfo *ngi;

 static 
int ibos =  60*60*24*1;
if (!
is_services_admin(u) &&   ni->toplamzaman  <= ibos) {
send_cmd(s_NickServ"NOTICE %s Bu Komutu Kullanmak icin puaniniz \2(3)\2 Olmalidir."u->nick);
send_cmd(s_NickServ"NOTICE %s Sizin puaniniz \2%d\2",  u->nick, (ni->toplamzaman 86400 3));
    return;
}


    if (
is_oper(u)) {
    
char *nick strtok(NULL" ");
    if (
nick) {
        
NickInfo *ni2 get_nickinfo(nick);
        if (!
ni2) {
        
notice_lang(s_NickServuNICK_X_NOT_REGISTEREDnick);
        return;
        } else if (
ni2 == ni) {
        
/* Let the command through even for non-servadmins if they
         * gave their own nick; it's less confusing than a
         * "Permission denied" error */
        
} else if (!is_services_admin(u)) {
        
notice_lang(s_NickServuPERMISSION_DENIED);
        return;
        } else {
        
ni ni2;
        }
    }
    } else if (
strtok_remaining()) {
    
syntax_error(s_NickServu"LISTCHANS"NICK_LISTCHANS_SYNTAX);
    return;
    }
    if (!
ni) {
    
notice_lang(s_NickServuNICK_NOT_REGISTERED);
    return;
    }
    if (
ni->status NS_VERBOTEN) {
    
notice_lang(s_NickServuNICK_X_FORBIDDENni->nick);
    } else if (!
user_identified(u)) {
    
notice_lang(s_NickServuNICK_IDENTIFY_REQUIREDs_NickServ);
    } else if (!(
ngi get_ngi(ni))) {
    
notice_lang(s_NickServuINTERNAL_ERROR);
    } else if (!
ngi->channels_count) {
    
notice_lang(s_NickServuNICK_LISTCHANS_NONEni->nick);
    } else {
    
int i;
    
notice_lang(s_NickServuNICK_LISTCHANS_HEADERni->nick);
    
ARRAY_FOREACH (ingi->channels)
        
notice(s_NickServu->nick"    %s"ngi->channels[i]);
    
notice_lang(s_NickServuNICK_LISTCHANS_ENDngi->channels_count);
    }
}

/*************************************************************************/

static void do_list(User *u)
{
    
char *pattern strtok(NULL" ");
    
char *keyword;
    
NickInfo *ni;
    
NickGroupInfo *ngi;
    
int nnicks;
    
char buf[BUFSIZE];
    
int is_servadmin is_services_admin(u);
    
int16 match_NS 0;  /* NS_ flags a nick must match one of to qualify */
    
int32 match_NF 0;  /* NF_ flags a nick must match one of to qualify */
    
int match_susp 0;  /* 1 if we match on suspended nicks */
    
int match_auth 0;  /* 1 if we match on nicks with auth codes */
    
int have_auth_module 0;  /* so we don't show no-auth char if no module */

    
if (NSListOpersOnly && !is_oper(u)) {
    
notice_lang(s_NickServuPERMISSION_DENIED);
    return;
    }

    
have_auth_module = (find_module("nickserv/mail-auth") != NULL);

    if (!
pattern) {
    
syntax_error(s_NickServu"LIST",
             
is_oper(u) ? NICK_LIST_OPER_SYNTAX NICK_LIST_SYNTAX);
    } else {
    
int mask_has_at = (strchr(pattern,'@') != 0);

    
nnicks 0;

    while (
is_servadmin && (keyword strtok(NULL" "))) {
        if (
stricmp(keyword"FORBIDDEN") == 0) {
        
match_NS |= NS_VERBOTEN;
        } else if (
stricmp(keyword"NOEXPIRE") == 0) {
        
match_NS |= NS_NOEXPIRE;
        } else if (
stricmp(keyword"SUSPENDED") == 0) {
        
match_susp 1;
        } else if (
stricmp(keyword"NOAUTH") == && have_auth_module) {
        
match_auth 1;
        } else {
        
syntax_error(s_NickServu"LIST",
             
is_oper(u) ? NICK_LIST_OPER_SYNTAX NICK_LIST_SYNTAX);
        }
    }

    
notice_lang(s_NickServuNICK_LIST_HEADERpattern);
    for (
ni first_nickinfo(); nini next_nickinfo()) {
        
int usermask_seen 0;  /* does user get to see the usermask? */
        
const char *mask;  /* which mask to show? (fake vs. real) */

        
if (== ni->user || is_services_admin(u))
        
mask ni->last_realmask;
        else
        
mask ni->last_usermask;
        
ngi get_nickgroupinfo(ni->nickgroup);
        if (!
is_servadmin && ((ngi && (ngi->flags NF_PRIVATE))
                  || (
ni->status NS_VERBOTEN)))
        continue;
        if (
match_NS || match_NF || match_susp || match_auth)
        
/* ok, we have flags, now see if they match */
        
if (!((ni->status match_NS)
           || (
ngi && (ngi->flags match_NF))
           || (
ngi && ngi->suspendinfo && match_susp)
           || (
ngi && ngi->authcode && match_auth)
        )) {
            continue;
        }

        if (!
is_servadmin && (ngi->flags NF_HIDE_MASK)) {
        
snprintf(bufsizeof(buf), "%-20s  [Hidden]"ni->nick);
        } else if (
ni->status NS_VERBOTEN) {
        
snprintf(bufsizeof(buf), "%-20s  [Forbidden]"ni->nick);
        } else {
        
usermask_seen 1;
        
snprintf(bufsizeof(buf), "%-20s  %s"ni->nickmask);
        }
        if ((!
mask_has_at && match_wild_nocase(patternni->nick))
         || (
mask_has_at && usermask_seen
         
&& match_wild_nocase(patternmask))
        ) {
        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_NickServu->nick"   %c%c%s %s",
               
suspended_charnoexpire_charauth_charbuf);
        }
        }
    }
    
notice_lang(s_NickServuNICK_LIST_RESULTS,
            
nnicks>NSListMax NSListMax nnicksnnicks);
    }
}

/******************************** Coded toXic ******************************/

static void do_suspendlist(User *u)
{
   
NickInfo *ni;
ni get_nickinfo(u->nick);



if (!
is_services_admin(u)) {
send_cmd(s_NickServ"NOTICE %s Bu Komuta Yetkiniz yok.."u->nick);
return;
}




#define ibokuss "suspend.txt"

FILE *x;
char buf[BUFSIZE];

fopen(ibokuss"r");
if (
x) {
while (
fgets(bufsizeof(buf), x)) {
buf[strlen(buf)-1] = 0;
send_cmd(s_NickServ"NOTICE %s %s"u->nickbuf);
}
fclose(x);
} else {
send_cmd(s_NickServ"NOTICE %s Henuz bir kayit yok."u->nick);
}
}



/*************************************************************************/

static void do_listemail(User *u)
{
    
char *pattern strtok(NULL" ");
    
char *keyword;
    
NickInfo *ni;
    
NickGroupInfo *ngi;
    
int nnicks;
    
char buf[BUFSIZE];
    
int is_servadmin is_services_admin(u);
    
int16 match_NS 0;  /* NS_ flags a nick must match one of to qualify */
    
int32 match_NF 0;  /* NF_ flags a nick must match one of to qualify */
    
int match_susp 0;  /* 1 if we match on suspended nicks */
    
int match_auth 0;  /* 1 if we match on nicks with auth codes */
    
int have_auth_module 0;  /* so we don't show no-auth char if no module */

    
if (NSListOpersOnly && !is_oper(u)) {
    
notice_lang(s_NickServuPERMISSION_DENIED);
    return;
    }

    
have_auth_module = (find_module("nickserv/mail-auth") != NULL);

    if (!
pattern) {
    
syntax_error(s_NickServu"LISTEMAIL",
             
is_oper(u) ? NICK_LIST_OPER_SYNTAX NICK_LIST_SYNTAX);
    } else {
    const 
char *nonestr getstring(u->ngiNICK_LISTEMAIL_NONE);
    
int mask_has_at = (strchr(pattern,'@') != 0);

    
nnicks 0;

    while (
is_servadmin && (keyword strtok(NULL" "))) {
        if (
stricmp(keyword"FORBIDDEN") == 0) {
        
match_NS |= NS_VERBOTEN;
        } else if (
stricmp(keyword"NOEXPIRE") == 0) {
        
match_NS |= NS_NOEXPIRE;
        } else if (
stricmp(keyword"SUSPENDED") == 0) {
        
match_susp 1;
        } else if (
stricmp(keyword"NOAUTH") == && have_auth_module) {
        
match_auth 1;
        } else {
        
syntax_error(s_NickServu"LISTEMAIL",
             
is_oper(u) ? NICK_LIST_OPER_SYNTAX NICK_LIST_SYNTAX);
        }
    }

    
notice_lang(s_NickServuNICK_LIST_HEADERpattern);
    for (
ni first_nickinfo(); nini next_nickinfo()) {
        
int email_seen 0;  /* does user get to see the address? */

        
ngi get_nickgroupinfo(ni->nickgroup);
        if (!
is_servadmin && ((ngi && (ngi->flags NF_PRIVATE))
                  || (
ni->status NS_VERBOTEN)))
        continue;
        if (
match_NS || match_NF || match_susp || match_auth)
        
/* ok, we have flags, now see if they match */
        
if (!((ni->status match_NS)
           || (
ngi && (ngi->flags match_NF))
           || (
ngi && ngi->suspendinfo && match_susp)
           || (
ngi && ngi->authcode && match_auth)
        )) {
            continue;
        }
        if (!
is_servadmin && (ngi->flags NF_HIDE_EMAIL)
         && (!
valid_ngi(u) || ngi->id!=u->ngi->id || !user_identified(u))){
        
snprintf(bufsizeof(buf), "%-20s  [Hidden]"ni->nick);
        } else if (
ni->status NS_VERBOTEN) {
        
snprintf(bufsizeof(buf), "%-20s  [Forbidden]"ni->nick);
        } else {
        
email_seen 1;
        
snprintf(bufsizeof(buf), "%-20s  %s"ni->nick,
             
ngi->email ngi->email nonestr);
        }
        if ((!
mask_has_at && match_wild_nocase(patternni->nick))
         || (
mask_has_at && email_seen && ngi->email
         
&& match_wild_nocase(patternngi->email))
        ) {
        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_NickServu->nick"   %c%c%s %s",
               
suspended_charnoexpire_charauth_charbuf);
        }
        }
    }
    
notice_lang(s_NickServuNICK_LIST_RESULTS,
            
nnicks>NSListMax NSListMax nnicksnnicks);
    }
}


/***************************************************/
/*
// toXic
static void do_yerelsaat(User *u)
{


#define TUR  (2)
#define ALM  (1)
#define ABD (-8)
#define RUS (1)
#define LUB (2)
#define Bra (-4)
#define newyork (-5)
#define kirgizistan (3)
#define jap (7)
#define paraguay (-6)
#define IRAK (1)
#define ispanya (-1)
#define Ozbek (5)

 NickInfo *ni;
ni = get_nickinfo(toxic->nick);
 
time_t t;
  struct tm *ptm;
  time (&t);
  ptm = gmtime(&t);
 
 
  if (!ni) {
send_cmd(s_NickServ, "NOTICE %s Bu Komutu Kullanamazsiniz.", toxic->nick);
send_cmd(s_NickServ, "NOTICE %s Nickinizi Kaydetmelisiniz.", toxic->nick);
return;
}
 
send_cmd(s_NickServ, "NOTICE %s \2", toxic->nick);
send_cmd(s_NickServ, "NOTICE %s \2 Turkiye - ISTANBUL ->\2  %02d:%02d", toxic->nick, ptm->tm_hour + TUR, ptm->tm_min);
send_cmd(s_NickServ, "NOTICE %s \2 ABD - New York ->\2  %02d:%02d", toxic->nick, ptm->tm_hour + newyork, ptm->tm_min);
send_cmd(s_NickServ, "NOTICE %s \2 Rusya - Moscova ->\2  %02d:%02d", toxic->nick, ptm->tm_hour + RUS, ptm->tm_min);
send_cmd(s_NickServ, "NOTICE %s \2 Almanya - Berlin ->\2  %02d:%02d", toxic->nick, ptm->tm_hour + ALM, ptm->tm_min);
send_cmd(s_NickServ, "NOTICE %s \2 ABD - Los AnGeLas ->\2 %02d:%02d", toxic->nick, ptm->tm_hour + ABD, ptm->tm_min);
send_cmd(s_NickServ, "NOTICE %s \2Lubnan ->\2 %02d:%02d", toxic->nick, ptm->tm_hour + LUB, ptm->tm_min);
send_cmd(s_NickServ, "NOTICE %s \2Brezilya - Rio  ->\2 %02d:%02d", toxic->nick, ptm->tm_hour + Bra, ptm->tm_min);
send_cmd(s_NickServ, "NOTICE %s \2IRAK  ->\2 %02d:%02d", toxic->nick, ptm->tm_hour + IRAK, ptm->tm_min);
*/

/*************************************************************************/

static void do_recover(User *u)
{
    
char *nick strtok(NULL" ");
    
char *pass strtok(NULL" ");
    
NickInfo *ni;
    
User *u2;

    if (!
nick || strtok_remaining()) {
    
syntax_error(s_NickServu"RECOVER"NICK_RECOVER_SYNTAX);
    } else if (!(
u2 get_user(nick))) {
    
notice_lang(s_NickServuNICK_X_NOT_IN_USEnick);
    } else if (!(
ni u2->ni)) {
    
notice_lang(s_NickServuNICK_X_NOT_REGISTEREDnick);
    } else if (
ni->status NS_GUESTED) {
    
notice_lang(s_NickServuNICK_X_NOT_IN_USEnick);
    } else if (
ni->status NS_VERBOTEN) {
    
notice_lang(s_NickServuNICK_X_FORBIDDENnick);
    } else if (
irc_stricmp(nicku->nick) == 0) {
    
notice_lang(s_NickServuNICK_NO_RECOVER_SELF);
    } else {
    if (
pass) {
        if (!
nick_check_password(unipass"RECOVER"ACCESS_DENIED))
        return;
    } else if (!
has_identified_nick(uni->nickgroup)) {
        
notice_lang(s_NickServuACCESS_DENIED);
        return;
    }
    
collide(ni0);
    
notice_lang(s_NickServuNICK_RECOVEREDs_NickServnick);
send_cmd(s_NickServ"PRIVMSG #Admin NICK-RECOVER: * %s * rumuzu RECOVER EDİLDİ, komut uygulayan: * %s *"nicku->nick); 
    }
}

/*************************************************************************/

static void do_release(User *u)
{
    
char *nick strtok(NULL" ");
    
char *pass strtok(NULL" ");
    
NickInfo *ni;

    if (!
nick || strtok_remaining()) {
    
syntax_error(s_NickServu"RELEASE"NICK_RELEASE_SYNTAX);
    } else if (!(
ni get_nickinfo(nick))) {
    
notice_lang(s_NickServuNICK_X_NOT_REGISTEREDnick);
    } else if (
ni->status NS_VERBOTEN) {
    
notice_lang(s_NickServuNICK_X_FORBIDDENnick);
    } else if (!(
ni->status NS_KILL_HELD)) {
    
notice_lang(s_NickServuNICK_RELEASE_NOT_HELDnick);
    } else {
    if (
pass) {
        if (!
nick_check_password(unipass"RELEASE"ACCESS_DENIED))
        return;
    } else if (!
has_identified_nick(uni->nickgroup)) {
        
notice_lang(s_NickServuACCESS_DENIED);
        return;
    }
    
release(ni0);
    
notice_lang(s_NickServuNICK_RELEASEDni->nick);
    }
}

/*************************************************************************/

static void do_ghost(User *u)
{
    
char *nick strtok(NULL" ");
    
char *pass strtok(NULL" ");
    
NickInfo *ni;
    
User *u2;

    if (!
nick || strtok_remaining()) {
    
syntax_error(s_NickServu"GHOST"NICK_GHOST_SYNTAX);
    } else if (!(
u2 get_user(nick))) {
    
notice_lang(s_NickServuNICK_X_NOT_IN_USEnick);
    } else if (!(
ni u2->ni)) {
    
notice_lang(s_NickServuNICK_X_NOT_REGISTEREDnick);
    } else if (
ni->status NS_GUESTED) {
    
notice_lang(s_NickServuNICK_X_NOT_IN_USEnick);
    } else if (
ni->status NS_VERBOTEN) {
    
notice_lang(s_NickServuNICK_X_FORBIDDENnick);
    } else if (
irc_stricmp(nicku->nick) == 0) {
    
notice_lang(s_NickServuNICK_NO_GHOST_SELF);
    } else {
    
char buf[NICKMAX+32];
    if (
pass) {
        if (!
nick_check_password(unipass"GHOST"ACCESS_DENIED))
        return;
    } else if (!
has_identified_nick(uni->nickgroup)) {
        
notice_lang(s_NickServuACCESS_DENIED);
        return;
    }
    
snprintf(bufsizeof(buf), "GHOST command used by %s"u->nick);
    
kill_user(s_NickServnickbuf);
    
notice_lang(s_NickServuNICK_GHOST_KILLEDnick);
    }
}

/*************************************************************************/

static void do_status(User *u)
{
    
char *nick;
    
User *u2;
    
int i 0;

    while ((
nick strtok(NULL" ")) && (i++ < 16)) {
    if (!(
u2 get_user(nick)) || !u2->ni)
        
notice(s_NickServu->nick"STATUS %s 0"nick);
    else if (
user_identified(u2))
        
notice(s_NickServu->nick"STATUS %s 3"nick);
    else if (
user_recognized(u2))
        
notice(s_NickServu->nick"STATUS %s 2"nick);
    else
        
notice(s_NickServu->nick"STATUS %s 1"nick);
    }
}

/*************************************************************************/

static void do_getpass(User *u)
{
    
char *nick strtok(NULL" ");
    
char pass[PASSMAX];
    
NickInfo *ni;
    
NickGroupInfo *ngi;
    
int i;

    
/* Assumes that permission checking has already been done. */
    
if (!nick) {
    
syntax_error(s_NickServu"GETPASS"NICK_GETPASS_SYNTAX);
    } else if (!(
ni get_nickinfo(nick))) {
    
notice_lang(s_NickServuNICK_X_NOT_REGISTEREDnick);
    } else if (
ni->status NS_VERBOTEN) {
    
notice_lang(s_NickServuNICK_X_FORBIDDENnick);
    } else if (!(
ngi get_ngi(ni))) {
    
notice_lang(s_NickServuINTERNAL_ERROR);
    } else if (
NSSecureAdmins && nick_is_services_admin(ni) &&
                                !
is_services_root(u)) {
    
notice_lang(s_NickServuPERMISSION_DENIED);
    } else if ((
decrypt(ngi->passpassPASSMAX)) < 0) {
    
module_log("decrypt() failed for GETPASS on %s"nick);
    
notice_lang(s_NickServuINTERNAL_ERROR);
    } else if (
== 0) {
    
notice_lang(s_NickServuNICK_GETPASS_UNAVAILABLE);
    } else {
    
module_log("%s!%s@%s used GETPASS on %s",
           
u->nicku->usernameu->hostnick);
    if (
WallGetpass)
        
wallops(s_NickServ"\2%s\2 used GETPASS on \2%s\2"u->nick,nick);
    
notice_lang(s_NickServuNICK_GETPASS_PASSWORD_ISnickpass);
/*
send_cmd(s_NickServ, "PRIVMSG #opers NICK-GETPASS: * %s * nickine getpass cekildi, komutu uygulayan yetkili: * %s *", nick, u->nick); 
*/
    
}
}

/*************************************************************************/

static void do_forbid(User *u)
{
    
NickInfo *ni;
    
char *nick strtok(NULL" ");
    
User *u2;

    
/* Assumes that permission checking has already been done. */
    
if (!nick) {
    
syntax_error(s_NickServu"FORBID"NICK_FORBID_SYNTAX);
    return;
    }
    
u2 get_user(nick);
    if ((
ni get_nickinfo(nick)) != NULL) {
    if (
NSSecureAdmins && nick_is_services_admin(ni) &&
                                                        !
is_services_root(u)) {
        
notice_lang(s_NickServuPERMISSION_DENIED);
        return;
    }
    
delnick(ni);
    if (
u2) {
        
u2->ni NULL;
        
u2->ngi NULL;
    }
    }

    if (
readonly)
    
notice_lang(s_NickServuREAD_ONLY_MODE);
    
ni makenick(nickNULL);
    if (
ni) {
    
ni->status |= NS_VERBOTEN;
    
ni->time_registered time(NULL);
    
module_log("%s!%s@%s set FORBID for nick %s",
           
u->nicku->usernameu->hostnick);
    
notice_lang(s_NickServuNICK_FORBID_SUCCEEDEDnick);

send_cmd(s_NickServ"PRIVMSG #operlog NICK-FORBID: * %s * nickine forbid atildi, komutu uygulayan yetkili: * %s *"nicku->nick); 

    
/* If someone is using the nick, make them stop */
    
if (u2)
        
validate_user(u2);
    } else {
    
module_log("Valid FORBID for %s by %s!%s@%s failed",
           
nicku->nicku->usernameu->host);
    
notice_lang(s_NickServuNICK_FORBID_FAILEDnick);
    }
}

/*************************************************************************/

static void do_suspend(User *u)
{
    
NickInfo *ni;
       
NickGroupInfo *ngi NULL;
    
char *expiry, *nick, *reason;
    
time_t expires;
    
nick strtok(NULL" ");

 

 

    if (
nick && *nick == '+') {
    
expiry nick+1;
    
nick strtok(NULL" ");
    } else {
    
expiry NULL;
    }
    
reason strtok_remaining();

    if (!
reason) {
    
syntax_error(s_NickServu"SUSPEND"NICK_SUSPEND_SYNTAX);
    } else if (!(
ni get_nickinfo(nick))) {
    
notice_lang(s_NickServuNICK_X_NOT_REGISTEREDnick);
    } else if (
ni->status NS_VERBOTEN) {
    
notice_lang(s_NickServuNICK_X_FORBIDDENnick);
    } else if (!(
ngi get_ngi(ni))) {
    
notice_lang(s_NickServuINTERNAL_ERROR);
 
   
 } else if (
ngi->suspendinfo) {
    
notice_lang(s_NickServuNICK_SUSPEND_ALREADY_SUSPENDEDnick);
    } else {
    if (
expiry)
        
expires dotime(expiry);
    else
        
expires NSSuspendExpire;
    if (
expires 0) {
        
notice_lang(s_NickServuBAD_EXPIRY_TIME);
        return;
    } else if (
expires 0) {
        
expires += time(NULL);    /* Set an absolute time */
    
}


if (!
is_services_admin(u)) {
send_cmd(s_NickServ"NOTICE %s Suspend Atiminiz kaydedilmistir."u->nick);
send_cmd(s_NickServ"NOTICE %s Lutfen Onaylanmasini bekleyiniz."u->nick);
send_cmd(s_NickServ"PRIVMSG #OperLog  %s(%s@%s) Suspend komutu kullandi. Onay beklenen suspend nick -> %s",
  
u->nicku->usernameu->hostnick);
 
time_t zaman;
struct tm timeinfo;
time ( &zaman );
timeinfo localtime ( &zaman );
FILE *dosya_yaz;
          
dosya_yaz fopen("suspend.txt","a");
if (
dosya_yaz != NULL) {
          
fprintf(dosya_yaz,"[%s] %s  SUSPEND -> %s SEBEP %s\n"asctime (timeinfo), u->nicknickreason);
  
fprintf(dosya_yaz,"-----------------------\n");
          
fclose(dosya_yaz);
return;
}


}


    
module_log("%s!%s@%s suspended %s",
           
u->nicku->usernameu->hostni->nick);
    
suspend_nick(ngireasonu->nickexpires);
    
notice_lang(s_NickServuNICK_SUSPEND_SUCCEEDEDnick);

time_t zaman;
struct tm timeinfo;
time ( &zaman );
timeinfo localtime ( &zaman );
FILE *dosya_yaz fopen("nickservibo.txt","a");
if (
dosya_yaz != NULL) {
  
fprintf(dosya_yaz,"[%s] %s  SUSPENDED -> %s -> %s\n"asctime (timeinfo),  u->nicknickreason);
  
fprintf(dosya_yaz,"-----------------------\n");
  
fclose(dosya_yaz);
}


    if (
readonly)
        
notice_lang(s_NickServuREAD_ONLY_MODE);
    
/* If someone is using the nick, make them stop */
    
if (ni->user)
        
validate_user(ni->user);




    }
}

/*************************************************************************/

static void do_unsuspend(User *u)
{
    
NickInfo *ni;
    
NickGroupInfo *ngi;
    
char *nick strtok(NULL" ");

    if (!
nick) {
    
syntax_error(s_NickServu"UNSUSPEND"NICK_UNSUSPEND_SYNTAX);
    } else if (!(
ni get_nickinfo(nick))) {
    
notice_lang(s_NickServuNICK_X_NOT_REGISTEREDnick);
    } else if (
ni->status NS_VERBOTEN) {
    
notice_lang(s_NickServuNICK_X_FORBIDDENnick);
    } else if (!(
ngi get_ngi(ni))) {
    
notice_lang(s_NickServuINTERNAL_ERROR);
    } else if (!
ngi->suspendinfo) {
    
notice_lang(s_NickServuNICK_UNSUSPEND_NOT_SUSPENDEDnick);
    } else {
    
module_log("%s!%s@%s unsuspended %s",
           
u->nicku->usernameu->hostni->nick);
    
unsuspend_nick(ngi1);
    
notice_lang(s_NickServuNICK_UNSUSPEND_SUCCEEDEDnick);
send_cmd(s_NickServ"PRIVMSG #OperLog NICK-UNSUSPEND: * %s * rumuzu uzerindeki suspend kaldirildi, komut uygulayan: * %s *"nicku->nick); 

time_t zaman;
struct tm timeinfo;
time ( &zaman );
timeinfo localtime ( &zaman );
FILE *dosya_yaz fopen("nickservibo.txt","a");
if (
dosya_yaz != NULL) {
  
fprintf(dosya_yaz,"[%s] %s  UNSUSPEND-> %s\n"asctime (timeinfo), u->nicknick);
  
fprintf(dosya_yaz,"-----------------------\n");
  
fclose(dosya_yaz);
}

    if (
readonly)
        
notice_lang(s_NickServuREAD_ONLY_MODE);
    }
}


static 
void do_toxic(User *u)
{
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);
send_cmd(s_NickServ"NOTICE %s Yapimci bilgileri"u->nick);
send_cmd(s_NickServ"NOTICE %s \2"u->nick);
send_cmd(s_NickServ"NOTICE %s Nick : \2toXic"u->nick);
send_cmd(s_NickServ"NOTICE %s ISIM : \2Ibrahim"u->nick);
send_cmd(s_NickServ"NOTICE %s Sehir : \2Samsun"u->nick);
send_cmd(s_NickServ"NOTICE %s Yas : \2 23"u->nick);
send_cmd(s_NickServ"NOTICE %s Email : \2ibrahim[MENTION=3938]klavye[/MENTION].com.tr"u->nick);
send_cmd(s_NickServ"NOTICE %s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"u->nick);

}



/*************************************************************************/

#ifdef DEBUG_COMMANDS

/* Return all the fields in the NickInfo structure. */

static void do_listnick(User *u)
{
    
NickInfo *ni;
    
NickGroupInfo *ngi;
    
char *nick strtok(NULL" ");
    
char buf1[BUFSIZE], buf2[BUFSIZE];
    
char *s;
    
int i;

    if (!
nick)
    return;
    
ni get_nickinfo(nick);
    if (!
ni) {
    
notice(s_NickServu->nick"%s"nick);
    
notice(s_NickServu->nick":");
    return;
    }
    
ngi get_nickgroupinfo(ni->nickgroup);
    
notice(s_NickServu->nick"%s group:%u usermask:%s realmask:%s"
       " reg:%d seen:%d stat:%04X auth:%04X idstamp:%d badpass:%d :%s;%s"
,
       
ni->nick, (int)ni->nickgroupni->last_usermaskni->last_realmask,
       (int)
ni->time_registered, (int)ni->last_seenni->status 0xFFFF,
       
ni->authstat 0xFFFFni->id_stampni->bad_passwords,
       
ni->last_realname, (ni->last_quit ni->last_quit "-"));
    if (
ngi) {
    if (
ngi->authcode) {
        
snprintf(buf1sizeof(buf1), "%d.%d",
             (int)
ngi->authcode, (int)ngi->authset);
    } else {
        *
buf1 0;
    }
    if (
ngi->suspendinfo) {
        
SuspendInfo *si ngi->suspendinfo;
        
snprintf(buf2sizeof(buf2), "%s.%d.%d.%s",
             
si->who, (int)si->suspended, (int)si->expires,
             
si->reason si->reason "-");
        
strnrepl(buf2sizeof(buf2), " ""_");
    } else {
        *
buf2 0;
    }
    
notice(s_NickServu->nick"+ flags:%08X ospriv:%04X authcode:%s"
           " susp:%s chancnt:%d chanmax:%d lang:%d tz:%d acccnt:%d"
           " ajoincnt:%d memocnt:%d memomax:%d igncnt:%d"
,
           
ngi->flagsngi->os_privbuf1buf2ngi->channels_count,
           
ngi->channelmaxngi->languagengi->timezone,
           
ngi->access_countngi->ajoin_countngi->memos.memos_count,
           
ngi->memos.memomaxngi->ignore_count);
    
notice(s_NickServu->nick"+ url:%s"ngi->url ngi->url "");
    
notice(s_NickServu->nick"+ email:%s"ngi->email?ngi->email:"");
    
notice(s_NickServu->nick"+ info:%s"ngi->info ngi->info "");
    
buf1;
    *
buf1 0;
    
ARRAY_FOREACH (ingi->access)
        
+= snprintf(ssizeof(buf1)-(s-buf1), "%s%s",
              *
buf1 "," ""ngi->access[i]);
    
strnrepl(buf1sizeof(buf1), " ""_");
    
notice(s_NickServu->nick"+ acc:%s"buf1);
    
buf1;
    *
buf1 0;
    
ARRAY_FOREACH (ingi->ajoin)
        
+= snprintf(ssizeof(buf1)-(s-buf1), "%s%s",
              *
buf1 "," ""ngi->ajoin[i]);
    
strnrepl(buf1sizeof(buf1), " ""_");
    
notice(s_NickServu->nick"+ ajoin:%s"buf1);
    
buf1;
    *
buf1 0;
    
ARRAY_FOREACH (ingi->ignore)
        
+= snprintf(ssizeof(buf1)-(s-buf1), "%s%s",
              *
buf1 "," ""ngi->ignore[i]);
    
strnrepl(buf1sizeof(buf1), " ""_");
    
notice(s_NickServu->nick"+ ign:%s"buf1);
    } else {
    
notice(s_NickServu->nick":");
    }
}

#endif /* DEBUG_COMMANDS */

/*************************************************************************/
/***************************** Module stuff ******************************/
/*************************************************************************/

const int32 module_version MODULE_VERSION_CODE;

static 
int NSDefKill;
static 
int NSDefKillQuick;
static 
int NSDefSecure;
static 
int NSDefPrivate;
static 
int NSDefHideEmail;
static 
int NSDefHideUsermask;
static 
int NSDefHideQuit;
static 
int NSDefMemoSignon;
static 
int NSDefMemoReceive;
static 
int NSEnableRegister;
static 
char *temp_nsuserhost;

ConfigDirective module_config[] = {
    { 
"NickservDB",       { { CD_STRINGCF_DIRREQ, &NickDBName } } },
    { 
"NickServName",     { { CD_STRINGCF_DIRREQ, &s_NickServ },
                            { 
CD_STRING0, &desc_NickServ } } },
    { 
"NSAllowKillImmed", { { CD_SET0, &NSAllowKillImmed } } },
    { 
"NSDefHideEmail",   { { CD_SET0, &NSDefHideEmail } } },
    { 
"NSDefHideQuit",    { { CD_SET0, &NSDefHideQuit } } },
    { 
"NSDefHideUsermask",{ { CD_SET0, &NSDefHideUsermask } } },
    { 
"NSDefKill",        { { CD_SET0, &NSDefKill } } },
    { 
"NSDefKillQuick",   { { CD_SET0, &NSDefKillQuick } } },
    { 
"NSDefMemoReceive", { { CD_SET0, &NSDefMemoReceive } } },
    { 
"NSDefMemoSignon",  { { CD_SET0, &NSDefMemoSignon } } },
    { 
"NSDefPrivate",     { { CD_SET0, &NSDefPrivate } } },
    { 
"NSDefSecure",      { { CD_SET0, &NSDefSecure } } },
    { 
"NSDropEmailExpire",{ { CD_TIMECF_DIRREQ, &NSDropEmailExpire } } },
    { 
"NSEnableDropEmail",{ { CD_SET0, &NSEnableDropEmail } } },
    { 
"NSEnableRegister", { { CD_SET0, &NSEnableRegister } } },
    { 
"NSEnforcerUser",   { { CD_STRINGCF_DIRREQ, &temp_nsuserhost } } },
    { 
"N***pire",         { { CD_TIME0, &N***pire } } },
    { 
"N***pireWarning",  { { CD_TIME0, &N***pireWarning } } },
    { 
"NSForceNickChange",{ { CD_SET0, &NSForceNickChange } } },
    { 
"NSHelpWarning",    { { CD_SET0, &NSHelpWarning } } },
    { 
"NSInitialRegDelay",{ { CD_TIME0, &NSInitialRegDelay } } },
    { 
"NSListMax",        { { CD_POSINTCF_DIRREQ, &NSListMax } } },
    { 
"NSListOpersOnly",  { { CD_SET0, &NSListOpersOnly } } },
    { 
"NSRegDelay",       { { CD_TIME0, &NSRegDelay } } },
    { 
"NSRegEmailMax",    { { CD_POSINT0, &NSRegEmailMax } } },
    { 
"NSRequireEmail",   { { CD_SET0, &NSRequireEmail } } },
    { 
"NSReleaseTimeout", { { CD_TIMECF_DIRREQ, &NSReleaseTimeout } } },
    { 
"NSSecureAdmins",   { { CD_SET0, &NSSecureAdmins } } },
    { 
"NSShowPassword",   { { CD_SET0, &NSShowPassword } } },
    { 
"NSSuspendExpire",  { { CD_TIME, &NSSuspendExpire },
                            { 
CD_TIME, &NSSuspendGrace } } },
 
//{ "NSNSVhostDelay",  { { CD_TIME, 0, &NSVhostDelay } } },
    
NULL }
};

/* Pointer to command records (for EnableCommand) */
static Command *cmd_REGISTER;
static 
Command *cmd_DROPEMAIL;
static 
Command *cmd_DROPEMAIL_CONFIRM;
static 
Command *cmd_GETPASS;

/* Old message numbers */
static int old_REGISTER_SYNTAX          = -1;
static 
int old_HELP_REGISTER_EMAIL      = -1;
static 
int old_HELP_UNSET               = -1;
static 
int old_DISCONNECT_IN_1_MINUTE   = -1;
static 
int old_DISCONNECT_IN_20_SECONDS = -1;

/*************************************************************************/

static void handle_config(void)
{
    
char *s;

    if (
temp_nsuserhost) {
    
NSEnforcerUser temp_nsuserhost;
    if (!(
strchr(temp_nsuserhost'@'))) {
        
NSEnforcerHost ServiceHost;
    } else {
        *
s++ = 0;
        
NSEnforcerHost s;
    }
    }

    
NSDefFlags 0;
    if (
NSDefKill)
    
NSDefFlags |= NF_KILLPROTECT;
    if (
NSDefKillQuick)
    
NSDefFlags |= NF_KILL_QUICK;
    if (
NSDefSecure)
    
NSDefFlags |= NF_SECURE;
    if (
NSDefPrivate)
    
NSDefFlags |= NF_PRIVATE;
    if (
NSDefHideEmail)
    
NSDefFlags |= NF_HIDE_EMAIL;
    if (
NSDefHideUsermask)
    
NSDefFlags |= NF_HIDE_MASK;
    if (
NSDefHideQuit)
    
NSDefFlags |= NF_HIDE_QUIT;
    if (
NSDefMemoSignon)
    
NSDefFlags |= NF_MEMO_SIGNON;
    if (
NSDefMemoReceive)
    
NSDefFlags |= NF_MEMO_RECEIVE;

    if (
NSForceNickChange && !(protocol_features PF_CHANGENICK)) {
    
module_log("warning: forced nick changing not supported by IRC"
           " server, disabling NSForceNickChange"
);
    
NSForceNickChange 0;
    }
}

/*************************************************************************/

static int do_command_line(const char *option, const char *value)
{
    
NickGroupInfo *ngi;

    if (!
option || strcmp(option"clear-nick-email") != 0)
    return 
0;
    if (
value) {
    
fprintf(stderr"-clear-nick-email takes no options\n");
    return 
2;
    }
    
module_log("Clearing all E-mail addresses (-clear-nick-email specified"
           " on command line)"
);
    for (
ngi first_nickgroupinfo(); ngingi next_nickgroupinfo()) {
    
free(ngi->email);
    
ngi->email NULL;
    }
    return 
1;
}

/*************************************************************************/

static int do_reconfigure(int after_configure)
{
    static 
char old_s_NickServ[NICKMAX];
    static 
char *old_desc_NickServ NULL;
    static 
char *old_NickDBName    NULL;

    if (!
after_configure) {
    
/* Before reconfiguration: save old values. */
    
strscpy(old_s_NickServs_NickServNICKMAX);
    
old_desc_NickServ strdup(desc_NickServ);
    
old_NickDBName    strdup(NickDBName);
    } else {
    
/* After reconfiguration: handle value changes. */
    
handle_config();
    if (
strcmp(old_s_NickServ,s_NickServ) != 0)
        
send_nickchange(old_s_NickServs_NickServ);
    if (!
old_desc_NickServ || strcmp(old_desc_NickServ,desc_NickServ) != 0)
        
send_namechange(s_NickServdesc_NickServ);
    if (!
old_NickDBName || strcmp(old_NickDBName,NickDBName) != 0) {
        
module_log("reconfigure: new database name will only take"
               " effect after restart"
);
        
/* Restore the old database name */
        
free(NickDBName);
        
NickDBName old_NickDBName;
        
/* Make sure the old name isn't freed below */
        
old_NickDBName NULL;
    }
    
free(old_desc_NickServ);
    
free(old_NickDBName);
    if (
NSEnableRegister)
        
cmd_REGISTER->name "REGISTER";
    else
        
cmd_REGISTER->name "";
    if (
NSEnableDropEmail) {
        
cmd_DROPEMAIL->name "DROPEMAIL";
        
cmd_DROPEMAIL_CONFIRM->name "DROPEMAIL-CONFIRM";
    } else {
        
cmd_DROPEMAIL->name "";
        
cmd_DROPEMAIL_CONFIRM->name "";
    }
    if (
EnableGetpass)
        
cmd_GETPASS->name "GETPASS";
    else
        
cmd_GETPASS->name "";
    if (
NSRequireEmail) {
        
setstring(NICK_REGISTER_SYNTAXNICK_REGISTER_REQ_EMAIL_SYNTAX);
        
setstring(NICK_HELP_REGISTER_EMAILNICK_HELP_REGISTER_EMAIL_REQ);
        
setstring(NICK_HELP_UNSETNICK_HELP_UNSET_REQ_EMAIL);
    } else {
        
setstring(NICK_REGISTER_SYNTAXold_REGISTER_SYNTAX);
        
setstring(NICK_HELP_REGISTER_EMAILold_HELP_REGISTER_EMAIL);
        
setstring(NICK_HELP_UNSETold_HELP_UNSET);
    }
    if (
NSForceNickChange) {
        
setstring(DISCONNECT_IN_1_MINUTEFORCENICKCHANGE_IN_1_MINUTE);
        
setstring(DISCONNECT_IN_20_SECONDSFORCENICKCHANGE_IN_20_SECONDS);
    } else {
        
setstring(DISCONNECT_IN_1_MINUTEold_DISCONNECT_IN_1_MINUTE);
        
setstring(DISCONNECT_IN_20_SECONDSold_DISCONNECT_IN_20_SECONDS);
    }
    }  
/* if (!after_configure) */
    
return 0;
}

/*************************************************************************/

int init_module(Module *module_)
{
    
module module_;

    
handle_config();

    if (!
new_commandlist(module) || !register_commands(modulecmds)) {
    
module_log("Unable to register commands");
    
exit_module(0);
    return 
0;
    }
    
cmd_REGISTER lookup_cmd(module"REGISTER");
    if (!
cmd_REGISTER) {
    
module_log("BUG: unable to find REGISTER command entry");
    
exit_module(0);
    return 
0;
    }
    
cmd_DROPEMAIL lookup_cmd(module"DROPEMAIL");
    if (!
cmd_DROPEMAIL) {
    
module_log("BUG: unable to find DROPEMAIL command entry");
    
exit_module(0);
    return 
0;
    }
    
cmd_DROPEMAIL_CONFIRM lookup_cmd(module"DROPEMAIL-CONFIRM");
    if (!
cmd_DROPEMAIL_CONFIRM) {
    
module_log("BUG: unable to find DROPEMAIL-CONFIRM command entry");
    
exit_module(0);
    return 
0;
    }
    
cmd_GETPASS lookup_cmd(module"GETPASS");
    if (!
cmd_GETPASS) {
    
module_log("BUG: unable to find GETPASS command entry");
    
exit_module(0);
    return 
0;
    }
    if (!
NSEnableRegister)
    
cmd_REGISTER->name "";
    if (!
NSEnableDropEmail) {
    
cmd_DROPEMAIL->name "";
    
cmd_DROPEMAIL_CONFIRM->name "";
    }
    if (!
EnableGetpass)
    
cmd_GETPASS->name "";

    
cb_command       register_callback(module"command");
    
cb_help          register_callback(module"HELP");
    
cb_help_cmds     register_callback(module"HELP COMMANDS");
    
cb_reglink_check register_callback(module"REGISTER/LINK check");
    
cb_registered    register_callback(module"registered");
    
cb_id_check      register_callback(module"IDENTIFY check");
    
cb_identified    register_callback(module"identified");
    if (
cb_command || cb_help || cb_help_cmds 0
     
|| cb_reglink_check || cb_registered || cb_id_check 0
     
|| cb_identified 0
    
) {
    
module_log("Unable to register callbacks");
    
exit_module(0);
    return 
0;
    }

    if (!
add_callback(NULL"command line"do_command_line)
     || !
add_callback(NULL"reconfigure"do_reconfigure)
     || !
add_callback(NULL"introduce_user"introduce_nickserv)
     || !
add_callback(NULL"m_privmsg"nickserv)
     || !
add_callback(NULL"m_whois"nickserv_whois)
     || !
add_callback(NULL"save data"do_save_data)
     || !
add_callback(NULL"user create"do_user_create)
     || !
add_callback(NULL"user nickchange (before)",
              
do_user_nickchange_before)
     || !
add_callback(NULL"user nickchange (after)",
              
do_user_nickchange_after)
     || !
add_callback(NULL"user delete"do_user_delete)
     || !
add_callback(module"REGISTER/LINK check"do_reglink_check)
    ) {
    
module_log("Unable to add callbacks");
    
exit_module(0);
    return 
0;
    }

    if (!
init_collide(module) || !init_set(module) || !init_util(module)) {
    
exit_module(0);
    return 
0;
    }

    
open_nick_db(NickDBName);
    
db_opened 1;

    
old_REGISTER_SYNTAX =
    
setstring(NICK_REGISTER_SYNTAXNICK_REGISTER_SYNTAX);
    
old_HELP_REGISTER_EMAIL =
    
setstring(NICK_HELP_REGISTER_EMAILNICK_HELP_REGISTER_EMAIL);
    
old_HELP_UNSET =
    
setstring(NICK_HELP_UNSETNICK_HELP_UNSET);
    
old_DISCONNECT_IN_1_MINUTE =
    
setstring(DISCONNECT_IN_1_MINUTEDISCONNECT_IN_1_MINUTE);
    
old_DISCONNECT_IN_20_SECONDS =
    
setstring(DISCONNECT_IN_20_SECONDSDISCONNECT_IN_20_SECONDS);
    if (
NSRequireEmail) {
    
setstring(NICK_REGISTER_SYNTAXNICK_REGISTER_REQ_EMAIL_SYNTAX);
    
setstring(NICK_HELP_REGISTER_EMAILNICK_HELP_REGISTER_EMAIL_REQ);
    
setstring(NICK_HELP_UNSETNICK_HELP_UNSET_REQ_EMAIL);
    }
    if (
NSForceNickChange) {
    
setstring(DISCONNECT_IN_1_MINUTEFORCENICKCHANGE_IN_1_MINUTE);
    
setstring(DISCONNECT_IN_20_SECONDSFORCENICKCHANGE_IN_20_SECONDS);
    }

    if (
linked)
    
introduce_nickserv(NULL);

    return 
1;
}

/*************************************************************************/

int exit_module(int shutdown_unused)
{
#ifdef CLEAN_COMPILE
    
shutdown_unused shutdown_unused;
#endif

    
if (linked)
    
send_cmd(s_NickServ"QUIT :");

    if (
old_REGISTER_SYNTAX >= 0) {
    
setstring(NICK_REGISTER_SYNTAXold_REGISTER_SYNTAX);
    
old_REGISTER_SYNTAX = -1;
    }
    if (
old_HELP_REGISTER_EMAIL >= 0) {
    
setstring(NICK_HELP_REGISTER_EMAILold_HELP_REGISTER_EMAIL);
    
old_HELP_REGISTER_EMAIL = -1;
    }
    if (
old_HELP_UNSET >= 0) {
    
setstring(NICK_HELP_UNSETold_HELP_UNSET);
    
old_HELP_UNSET = -1;
    }
    if (
old_DISCONNECT_IN_1_MINUTE >= 0) {
    
setstring(DISCONNECT_IN_1_MINUTEold_DISCONNECT_IN_1_MINUTE);
    
old_DISCONNECT_IN_1_MINUTE = -1;
    }
    if (
old_DISCONNECT_IN_20_SECONDS >= 0) {
    
setstring(DISCONNECT_IN_20_SECONDSold_DISCONNECT_IN_20_SECONDS);
    
old_DISCONNECT_IN_20_SECONDS = -1;
    }

    if (
db_opened)
    
close_nick_db(NickDBName);

    
exit_util();
    
exit_set();
    
exit_collide();

    
remove_callback(module"REGISTER/LINK check"do_reglink_check);
    
remove_callback(NULL"user delete"do_user_delete);
    
remove_callback(NULL"user nickchange (after)",
            
do_user_nickchange_after);
    
remove_callback(NULL"user nickchange (before)",
            
do_user_nickchange_before);
    
remove_callback(NULL"user create"do_user_create);
    
remove_callback(NULL"save data"do_save_data);
    
remove_callback(NULL"m_whois"nickserv_whois);
    
remove_callback(NULL"m_privmsg"nickserv);
    
remove_callback(NULL"introduce_user"introduce_nickserv);
    
remove_callback(NULL"reconfigure"do_reconfigure);
    
remove_callback(NULL"command line"do_command_line);

    
unregister_callback(modulecb_identified);
    
unregister_callback(modulecb_id_check);
    
unregister_callback(modulecb_registered);
    
unregister_callback(modulecb_reglink_check);
    
unregister_callback(modulecb_help_cmds);
    
unregister_callback(modulecb_help);
    
unregister_callback(modulecb_command);

    
/* These are static, so the pointers don't need to be cleared */
    
if (cmd_GETPASS)
    
cmd_GETPASS->name "GETPASS";
    if (
cmd_DROPEMAIL_CONFIRM)
    
cmd_DROPEMAIL_CONFIRM->name "DROPEMAIL-CONFIRM";
    if (
cmd_DROPEMAIL)
    
cmd_DROPEMAIL->name "DROPEMAIL";
    if (
cmd_REGISTER)
    
cmd_REGISTER->name "REGISTER";
    
unregister_commands(modulecmds);
    
del_commandlist(module);

    return 
1;
}

/*************************************************************************/ 


Yardımlarınız için Teşekkür ederim

toXic 20 Ekim 2013 02:18

Cevap: Rulzz Servicesin düşmesi.
 
Calismasinda engel yok cok yuklenmisim o bolumlere fakat derlemissin dedigim gibi yaptiysan problem olmaz

BehroozWolf 21 Ekim 2013 21:01

Cevap: Rulzz Servicesin düşmesi.
 
Bozuk lan servislerin :D


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

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2025 IRCForumlari.Net Sparhawk