PDA

Forumumuza bedava üye olup bilgilerinizi internette binlerce insan ile paylaşabilirsiniz.: Tıklayın

Orijinalini görmek için tıklayınız : Last registered channel/nick


ceXun
17-06-2008, 13:19
* Baslamadan once mutlaka yedek aliniz.
* Satir kaymalarini engellemek icin editplus kullanabilirsiniz.
* Tesekkurler DiabLo <[Sadece Kayıtlı Üyeler linkleri görebilir...]>

# CHANSERV
# <chanserv.h>
# cd ircservices-5.0.xx\modules\chanserv
# pico -w chanserv.h

chanserv.h dosyasinin icerisinde

struct channelinfo_ {

yazan satirin hemen uzerine

char last_register_chan[CHANMAX];

satirini ekleyin ve dosyayi kaydedip cikin.



# <main.c>
# cd ircservices-5.0.xx\modules\chanserv
# pico -w main.c

main.c dosyasinin icerisinde bulunan

put_channelinfo(ci);
module_log("Channel %s registered by %s!%s@%s",
chan, u->nick, u->username, u->host);

satirinin uzerine

strscpy(last_register_chan, ci->name, CHANMAX);

ekleyip kaydedin.



# NICKSERV
# <nickserv.h>
# cd ircservices-5.0.xx\modules\nickserv
# pico -w nickserv.h

nickserv.h dosyasinin icerisinde bulunan

struct nickinfo_ {

satirinin hemen uzerine

char last_register_nick[NICKMAX];

satirini ekleyip kaydedin.

# <main.c>
# cd ircservices-5.0.xx\modules\nickserv
# pico -w main.c

main.c icerisinde bulunan

/* Link back and forth to user record and store modified data */
u->ni = ni;
u->ngi = ngi;
ni->user = u;

satirlarinin hemen altina,

strscpy(last_register_nick, ni->nick, NICKMAX);

ekleyip kaydedin.


# OPERSERV
# <news.h>
# cd ircservices-5.0.xx\modules\operserv
# pico -w news.h

news.h dosyasi icerisinde bulunan

typedef struct newsitem_ NewsItem;

satirlarinin hemen uzerine

char last_register_chan[CHANMAX];
char last_register_nick[NICKMAX];

satirlarini ekleyip kaydedin.



# <news.c>
# cd ircservices-5.0.xx\modules\operserv
# pico -w news.c

news.c icerisinde

static int new_user_callback(User *u)
{
display_news(u, NEWS_LOGON);
return 0;
}

yazan satiri

static int new_user_callback(User *u)
{
send_cmd(s_GlobalNoticer, "NOTICE %s :\2§~¤§¤~~¤§¤~~¤§¤~~¤§¤~~¤§¤~~¤§¤~~¤§¤~~¤§\2", u->nick);
send_cmd(s_GlobalNoticer, "NOTICE %s :En Son kaydedilen nick: \2%s\2", u->nick, last_register_nick);
send_cmd(s_GlobalNoticer, "NOTICE %s :En Son kaydedilen kanal: \2%s\2", u->nick, last_register_chan);
send_cmd(s_GlobalNoticer, "NOTICE %s :\2§~¤§¤~~¤§¤~~¤§¤~~¤§¤~~¤§¤~~¤§¤~~¤§¤~~¤§\2", u->nick);
display_news(u, NEWS_LOGON);
return 0;
}

olarak degistirin.


# DATABASE
# cd ircservices-5.0.xx\modules\database
# pico -w version4.c

version4.c dosyasi icerisinde bulunan

if (!local_no_supass)
SAFE(write_buffer(local_supass, f));

satirlarinin hemen altina

SAFE(write_buffer(last_register_nick, f));
SAFE(write_buffer(last_register_chan, f));

ekleyip kaydedin.


Bu islemlerin ardindan ircservices-5.0.xx dizini icerisinde

make

ve

make install

islemlerini sirasiyla uygulayin.


Simdi sunucunuza giris yaparak birer adet kanal ve rumuz kaydedin.
Daha sonra:

# DATABASE
# <version4.c>
# ircservices-5.0.xx\modules\database
# pico -w version4.c

version4.c dosyasina giris yaparak

if (!local_no_supass)
SAFE(read_buffer(local_supass, f));
}

satirlarinin altina

SAFE(read_buffer(last_register_nick, f));
SAFE(read_buffer(last_register_chan, f));

satirlarini ekleyin ve kaydedin.


Simdi tekrar ircservices-5.0.xx dizini icerisinde

make

ve

make install

islemlerini uygulayin ve servislerinizi yeniden baslatin. (/os restart)
Denenmistir, herhangi bir hataya raslanmamistir. Satir kaymalarini engelleyebilmek icin mutlaka EditPlus kullanmanizi tavsiye ediyorum.

Iyi calismalar.




Hosting Hizmetleri TOPlist