#include <stdlib.h>#include <string.h>#include <stdio.h>#include <fcntl.h>#include <ctype.h>#include <time.h>#include <unistd.h>
Go to the source code of this file.
Data Structures | |
| struct | memo_ |
| struct | dbFILE_ |
| struct | MemoInfo |
| struct | ChanAccess |
| struct | AutoKick |
| struct | nickalias_ |
| struct | nickcore_ |
| struct | chaninfo_ |
| struct | botinfo_ |
| struct | badword_ |
| struct | hostcore_ |
Defines | |
| #define | NICK_DB_1 "nick1.db" |
| #define | NICK_DB_2 "nick2.db" |
| #define | NICK_DB_NEW "nick.db" |
| #define | CHAN_DB_1 "chan1.db" |
| #define | CHAN_DB_2 "chan2.db" |
| #define | CHAN_DB_NEW "chan.db" |
| #define | BOT_DB_1 "bot1.db" |
| #define | BOT_DB_2 "bot2.db" |
| #define | BOT_DB_NEW "bot.db" |
| #define | HOST_DB_1 "hosts1.db" |
| #define | HOST_DB_2 "hosts2.db" |
| #define | HOST_DB_NEW "hosts.db" |
| #define | C_LBLUE "\033[1;34m" |
| #define | C_NONE "\033[m" |
| #define | getc_db(f) (fgetc((f)->fp)) |
| #define | HASH(nick) ((tolower((nick)[0])&31)<<5 | (tolower((nick)[1])&31)) |
| #define | HASH2(chan) ((chan)[1] ? ((chan)[1]&31)<<5 | ((chan)[2]&31) : 0) |
| #define | read_buffer(buf, f) (read_db((f),(buf),sizeof(buf)) == sizeof(buf)) |
| #define | write_buffer(buf, f) (write_db((f),(buf),sizeof(buf)) == sizeof(buf)) |
| #define | read_db(f, buf, len) (fread((buf),1,(len),(f)->fp)) |
| #define | write_db(f, buf, len) (fwrite((buf),1,(len),(f)->fp)) |
| #define | read_int8(ret, f) ((*(ret)=fgetc((f)->fp))==EOF ? -1 : 0) |
| #define | write_int8(val, f) (fputc((val),(f)->fp)==EOF ? -1 : 0) |
| #define | SAFE(x) |
| #define | READ(x) |
Typedefs | |
| typedef int16_t | int16 |
| typedef u_int16_t | uint16 |
| typedef int32_t | int32 |
| typedef u_int32_t | uint32 |
| typedef struct memo_ | Memo |
| typedef struct dbFILE_ | dbFILE |
| typedef struct nickalias_ | NickAlias |
| typedef struct nickcore_ | NickCore |
| typedef struct chaninfo_ | ChannelInfo |
| typedef struct botinfo_ | BotInfo |
| typedef struct badword_ | BadWord |
| typedef struct hostcore_ | HostCore |
Functions | |
| dbFILE * | open_db_write (const char *service, const char *filename, int version) |
| dbFILE * | open_db_read (const char *service, const char *filename, int version) |
| NickCore * | findcore (const char *nick, int version) |
| NickAlias * | findnick (const char *nick) |
| BotInfo * | findbot (char *nick) |
| ChannelInfo * | cs_findchan (const char *chan) |
| char * | strscpy (char *d, const char *s, size_t len) |
| int | write_file_version (dbFILE *f, uint32 version) |
| int | mystricmp (const char *s1, const char *s2) |
| int | delnick (NickAlias *na, int donttouchthelist) |
| int | write_string (const char *s, dbFILE *f) |
| int | write_ptr (const void *ptr, dbFILE *f) |
| int | read_int16 (int16 *ret, dbFILE *f) |
| int | read_int32 (int32 *ret, dbFILE *f) |
| int | read_uint16 (uint16 *ret, dbFILE *f) |
| int | read_uint32 (uint32 *ret, dbFILE *f) |
| int | read_string (char **ret, dbFILE *f) |
| int | write_int16 (uint16 val, dbFILE *f) |
| int | write_int32 (uint32 val, dbFILE *f) |
| int | read_ptr (void **ret, dbFILE *f) |
| int | delcore (NickCore *nc) |
| void | alpha_insert_chan (ChannelInfo *ci) |
| void | insert_bot (BotInfo *bi) |
| void | close_db (dbFILE *f) |
| int | main (int argc, char *argv[]) |
Variables | |
| ChannelInfo * | chanlists [256] |
| NickAlias * | nalists [1024] |
| NickCore * | nclists [1024] |
| BotInfo * | botlists [256] |
| int | preferfirst = 0 |
| int | prefersecond = 0 |
| int | preferoldest = 0 |
| int | prefernewest = 0 |
| int | nonick = 0 |
| int | nochan = 0 |
| int | nobot = 0 |
| int | nohost = 0 |
| #define BOT_DB_1 "bot1.db" |
| #define BOT_DB_2 "bot2.db" |
| #define BOT_DB_NEW "bot.db" |
| #define C_LBLUE "\033[1;34m" |
| #define C_NONE "\033[m" |
| #define CHAN_DB_1 "chan1.db" |
| #define CHAN_DB_2 "chan2.db" |
| #define CHAN_DB_NEW "chan.db" |
| #define getc_db | ( | f | ) | (fgetc((f)->fp)) |
Definition at line 111 of file db-merger.c.
| #define HASH | ( | nick | ) | ((tolower((nick)[0])&31)<<5 | (tolower((nick)[1])&31)) |
Definition at line 112 of file db-merger.c.
| #define HASH2 | ( | chan | ) | ((chan)[1] ? ((chan)[1]&31)<<5 | ((chan)[2]&31) : 0) |
| #define HOST_DB_1 "hosts1.db" |
| #define HOST_DB_2 "hosts2.db" |
| #define HOST_DB_NEW "hosts.db" |
| #define NICK_DB_1 "nick1.db" |
| #define NICK_DB_2 "nick2.db" |
| #define NICK_DB_NEW "nick.db" |
| #define READ | ( | x | ) |
Value:
do { \ if ((x) < 0) { \ printf("Error, the database is broken, trying to continue... no guarantee.\n"); \ exit(0); \ } \ } while (0)
Definition at line 125 of file db-merger.c.
Referenced by main().
| #define read_buffer | ( | buf, | |||
| f | ) | (read_db((f),(buf),sizeof(buf)) == sizeof(buf)) |
Definition at line 114 of file db-merger.c.
| #define read_db | ( | f, | |||
| buf, | |||||
| len | ) | (fread((buf),1,(len),(f)->fp)) |
Definition at line 116 of file db-merger.c.
| #define read_int8 | ( | ret, | |||
| f | ) | ((*(ret)=fgetc((f)->fp))==EOF ? -1 : 0) |
Definition at line 118 of file db-merger.c.
| #define SAFE | ( | x | ) |
Value:
do { \ if ((x) < 0) { \ printf("Error, the database is broken, trying to continue... no guarantee.\n"); \ } \ } while (0)
Definition at line 120 of file db-merger.c.
| #define write_buffer | ( | buf, | |||
| f | ) | (write_db((f),(buf),sizeof(buf)) == sizeof(buf)) |
Definition at line 115 of file db-merger.c.
| #define write_db | ( | f, | |||
| buf, | |||||
| len | ) | (fwrite((buf),1,(len),(f)->fp)) |
Definition at line 117 of file db-merger.c.
| #define write_int8 | ( | val, | |||
| f | ) | (fputc((val),(f)->fp)==EOF ? -1 : 0) |
Definition at line 119 of file db-merger.c.
Definition at line 142 of file db-merger.c.
Definition at line 141 of file db-merger.c.
| typedef struct chaninfo_ ChannelInfo |
Definition at line 140 of file db-merger.c.
Definition at line 137 of file db-merger.c.
Definition at line 143 of file db-merger.c.
| typedef int16_t int16 |
Definition at line 132 of file db-merger.c.
| typedef int32_t int32 |
Definition at line 134 of file db-merger.c.
Definition at line 136 of file db-merger.c.
| typedef struct nickalias_ NickAlias |
Definition at line 138 of file db-merger.c.
Definition at line 139 of file db-merger.c.
| typedef u_int16_t uint16 |
Definition at line 133 of file db-merger.c.
| typedef u_int32_t uint32 |
Definition at line 135 of file db-merger.c.
| void alpha_insert_chan | ( | ChannelInfo * | ci | ) |
Definition at line 1951 of file chanserv.c.
| void close_db | ( | dbFILE * | f | ) |
Close a database file. If the file was opened for write, remove the backup we (may have) created earlier.
| dbFile | struct |
Definition at line 374 of file datafiles.c.
| ChannelInfo* cs_findchan | ( | const char * | chan | ) |
Definition at line 1889 of file chanserv.c.
| int delcore | ( | NickCore * | nc | ) |
Definition at line 1951 of file db-merger.c.
References nickcore_::access, nickcore_::accesscount, nickcore_::display, nickcore_::email, nickcore_::greet, HASH, MemoInfo::memocount, MemoInfo::memos, nickcore_::memos, nickcore_::next, nickcore_::pass, nickcore_::prev, memo_::text, and nickcore_::url.
| int delnick | ( | NickAlias * | na, | |
| int | donttouchthelist | |||
| ) |
Definition at line 1927 of file db-merger.c.
References HASH, nickalias_::last_quit, nickalias_::last_realname, nickalias_::last_usermask, nickalias_::next, nickalias_::nick, and nickalias_::prev.
| BotInfo* findbot | ( | char * | nick | ) |
Definition at line 618 of file botserv.c.
References find_nickuid(), ircd, botinfo_::next, uid_::nick, botinfo_::nick, stricmp(), tolower, ircdvars_::ts6, and UseTS6.
| NickCore * findcore | ( | const char * | nick, | |
| int | version | |||
| ) |
Definition at line 1859 of file db-merger.c.
References nickcore_::display, HASH, mystricmp(), nickcore_::next, and nickcore_::unused.
| NickAlias* findnick | ( | const char * | nick | ) |
Definition at line 1214 of file nickserv.c.
References alog(), debug, HASH, nickalias_::next, nickalias_::nick, and stricmp().
| void insert_bot | ( | BotInfo * | bi | ) |
Definition at line 572 of file botserv.c.
References botinfo_::next, botinfo_::nick, botinfo_::prev, stricmp(), and tolower.
| int main | ( | int | argc, | |
| char * | argv[] | |||
| ) |
Definition at line 317 of file db-merger.c.
References chaninfo_::access, nickcore_::access, chaninfo_::accesscount, nickcore_::accesscount, AutoKick::addtime, chaninfo_::akick, chaninfo_::akickcount, nickcore_::aliascount, alpha_insert_chan(), chaninfo_::badwords, chaninfo_::bantype, chaninfo_::bi, BOT_DB_1, BOT_DB_2, BOT_DB_NEW, chaninfo_::botflags, chaninfo_::bwcount, c, C_LBLUE, C_NONE, chaninfo_::capsmin, chaninfo_::capspercent, CHAN_DB_1, CHAN_DB_2, CHAN_DB_NEW, botinfo_::chancount, nickcore_::channelcount, nickcore_::channelmax, close_db(), botinfo_::created, hostcore_::creator, AutoKick::creator, cs_findchan(), delcore(), delnick(), chaninfo_::desc, nickcore_::display, chaninfo_::email, nickcore_::email, chaninfo_::entry_message, findbot(), findcore(), findnick(), botinfo_::flags, AutoKick::flags, chaninfo_::flags, memo_::flags, nickcore_::flags, chaninfo_::floodlines, chaninfo_::floodsecs, chaninfo_::forbidby, chaninfo_::forbidreason, chaninfo_::founder, chaninfo_::founderpass, getc_db, nickcore_::greet, HASH, botinfo_::host, HOST_DB_1, HOST_DB_2, HOST_DB_NEW, nickcore_::icq, badword_::in_use, ChanAccess::in_use, insert_bot(), nickcore_::language, hostcore_::last, nickalias_::last_quit, nickalias_::last_realname, ChanAccess::last_seen, nickalias_::last_seen, chaninfo_::last_topic, chaninfo_::last_topic_setter, chaninfo_::last_topic_time, chaninfo_::last_used, nickalias_::last_usermask, ChanAccess::level, chaninfo_::levels, AutoKick::mask, MemoInfo::memocount, MemoInfo::memomax, chaninfo_::memos, MemoInfo::memos, nickcore_::memos, chaninfo_::mlock_flood, chaninfo_::mlock_key, chaninfo_::mlock_limit, chaninfo_::mlock_off, chaninfo_::mlock_on, chaninfo_::mlock_redirect, mystricmp(), chaninfo_::name, AutoKick::nc, ChanAccess::nc, nickalias_::nc, hostcore_::next, botinfo_::next, chaninfo_::next, nickalias_::next, nickcore_::next, hostcore_::nick, botinfo_::nick, nickalias_::nick, NICK_DB_1, NICK_DB_2, NICK_DB_NEW, nobot, nochan, nohost, nonick, memo_::number, open_db_read(), open_db_write(), nickcore_::pass, preferfirst, prefernewest, preferoldest, prefersecond, botinfo_::prev, chaninfo_::prev, nickalias_::prev, nickcore_::prev, READ, read_buffer, read_int16(), read_int32(), read_string(), read_uint16(), read_uint32(), botinfo_::real, AutoKick::reason, chaninfo_::repeattimes, SAFE, memo_::sender, nickalias_::status, strdup(), chaninfo_::successor, memo_::text, hostcore_::time, memo_::time, chaninfo_::time_registered, nickalias_::time_registered, tolower, chaninfo_::ttb, badword_::type, AutoKick::u, nickcore_::unused, chaninfo_::url, nickcore_::url, botinfo_::user, hostcore_::vHost, hostcore_::vIdent, badword_::word, write_buffer, write_int16(), write_int32(), write_int8, and write_string().
| int mystricmp | ( | const char * | s1, | |
| const char * | s2 | |||
| ) |
Definition at line 1912 of file db-merger.c.
Referenced by alpha_insert_chan(), cs_findchan(), findbot(), findcore(), findnick(), insert_bot(), and main().
| dbFILE * open_db_read | ( | const char * | service, | |
| const char * | filename, | |||
| int | version | |||
| ) |
Definition at line 1648 of file db-merger.c.
References dbFILE_::filename, dbFILE_::fp, dbFILE_::mode, and strscpy().
| dbFILE * open_db_write | ( | const char * | service, | |
| const char * | filename, | |||
| int | version | |||
| ) |
Definition at line 1680 of file db-merger.c.
References dbFILE_::filename, dbFILE_::fp, dbFILE_::mode, strscpy(), and write_file_version().
| int read_ptr | ( | void ** | ret, | |
| dbFILE * | f | |||
| ) |
Read Pointer
| ret | pointer to read | |
| dbFile | struct |
Definition at line 490 of file datafiles.c.
| int read_string | ( | char ** | ret, | |
| dbFILE * | f | |||
| ) |
Read String
| ret | string | |
| dbFile | struct |
Definition at line 526 of file datafiles.c.
Definition at line 1739 of file db-merger.c.
References dbFILE_::fp.
Referenced by main(), and read_string().
| char* strscpy | ( | char * | d, | |
| const char * | s, | |||
| size_t | len | |||
| ) |
Write the current version number to the file.
| f | dbFile Struct Member |
Definition at line 63 of file datafiles.c.
Write a 16bit integer
| ret | 16bit integer to write | |
| dbFile | struct |
Definition at line 427 of file datafiles.c.
Write a unsigned 32bit integer
| ret | unsigned 32bit integer to write | |
| dbFile | struct |
Definition at line 468 of file datafiles.c.
| int write_ptr | ( | const void * | ptr, | |
| dbFILE * | f | |||
| ) |
Write Pointer
| ret | pointer to write | |
| dbFile | struct |
Definition at line 510 of file datafiles.c.
| int write_string | ( | const char * | s, | |
| dbFILE * | f | |||
| ) |
Write String
| ret | string | |
| dbFile | struct |
Definition at line 555 of file datafiles.c.
Definition at line 312 of file db-merger.c.
| ChannelInfo* chanlists[256] |
Definition at line 309 of file db-merger.c.
Definition at line 310 of file db-merger.c.
Definition at line 311 of file db-merger.c.
| int nobot = 0 |
| int nochan = 0 |
| int nohost = 0 |
| int nonick = 0 |
| int preferfirst = 0 |
| int prefernewest = 0 |
| int preferoldest = 0 |
| int prefersecond = 0 |
1.5.7.1