chanserv.c File Reference

#include "services.h"
#include "pseudo.h"

Go to the source code of this file.

Defines

#define SAFE(x)
#define SAFE(x)

Functions

void alpha_insert_chan (ChannelInfo *ci)
void chanserv (User *u, char *buf)
int check_access (User *user, ChannelInfo *ci, int what)
int check_kick (User *user, char *chan, time_t chants)
void check_modes (Channel *c)
int check_should_halfop (User *user, char *chan)
int check_should_op (User *user, char *chan)
int check_should_owner (User *user, char *chan)
int check_should_protect (User *user, char *chan)
int check_should_voice (User *user, char *chan)
int check_topiclock (Channel *c, time_t topic_time)
int check_valid_admin (User *user, Channel *chan, int servermode)
int check_valid_op (User *user, Channel *chan, int servermode)
ChannelInfocs_findchan (const char *chan)
char * cs_get_flood (ChannelInfo *ci)
char * cs_get_key (ChannelInfo *ci)
char * cs_get_limit (ChannelInfo *ci)
char * cs_get_redirect (ChannelInfo *ci)
void cs_init (void)
void cs_remove_bot (const BotInfo *bi)
void cs_remove_nick (const NickCore *nc)
void cs_set_flood (ChannelInfo *ci, char *value)
void cs_set_key (ChannelInfo *ci, char *value)
void cs_set_limit (ChannelInfo *ci, char *value)
void cs_set_redirect (ChannelInfo *ci, char *value)
int delchan (ChannelInfo *ci)
void expire_chans ()
int get_access (User *user, ChannelInfo *ci)
ChanAccessget_access_entry (NickCore *nc, ChannelInfo *ci)
int get_access_level (ChannelInfo *ci, NickAlias *na)
void get_chanserv_stats (long *nrec, long *memuse)
int get_idealban (ChannelInfo *ci, User *u, char *ret, int retlen)
char * get_mlock_modes (ChannelInfo *ci, int complete)
const char * get_xop_level (int level)
int is_founder (User *user, ChannelInfo *ci)
int is_identified (User *user, ChannelInfo *ci)
int is_real_founder (User *user, ChannelInfo *ci)
AutoKickis_stuck (ChannelInfo *ci, char *mask)
void listchans (int count_only, const char *chan)
void load_cs_dbase (void)
ChannelInfomakechan (const char *chan)
void moduleAddChanServCmds (void)
void record_topic (const char *chan)
void reset_levels (ChannelInfo *ci)
void restore_topic (char *chan)
void save_cs_dbase (void)
void save_cs_rdb_dbase (void)
void stick_all (ChannelInfo *ci)
void stick_mask (ChannelInfo *ci, AutoKick *akick)
void update_cs_lastseen (User *user, ChannelInfo *ci)

Variables

ChannelInfochanlists [256]
CSModeUtil csmodeutils []
LevelInfo levelinfo []
int levelinfo_maxwidth = 0


Define Documentation

#define SAFE (  ) 

Value:

do {                        \
    if ((x) < 0) {                      \
    restore_db(f);                      \
    log_perror("Write error on %s", ChanDBName);        \
    if (time(NULL) - lastwarn > WarningTimeout) {       \
        anope_cmd_global(NULL, "Write error on %s: %s", ChanDBName, \
            strerror(errno));           \
        lastwarn = time(NULL);              \
    }                           \
    return;                         \
    }                               \
} while (0)

Definition at line 834 of file chanserv.c.

#define SAFE (  ) 

Value:

do {                    \
    if ((x) < 0) {                  \
    if (!forceload)                 \
        fatal("Read error on %s", ChanDBName);  \
    failed = 1;                 \
    break;                      \
    }                           \
} while (0)

Definition at line 834 of file chanserv.c.


Function Documentation

void alpha_insert_chan ( ChannelInfo ci  ) 

Definition at line 1910 of file chanserv.c.

References alog(), chanlists, debug, chaninfo_::name, chaninfo_::next, chaninfo_::prev, stricmp(), and tolower.

void chanserv ( User u,
char *  buf 
)

Definition at line 378 of file chanserv.c.

References anope_cmd_ctcp(), CHANSERV, mod_run_cmd(), user_::nick, notice_lang(), s_ChanServ, skeleton, and stricmp().

Referenced by m_privmsg().

int check_access ( User user,
ChannelInfo ci,
int  what 
)

Definition at line 1875 of file chanserv.c.

References ACCESS_FOUNDER, ACCESS_INVALID, CA_AUTODEOP, CA_NOJOIN, CI_SECUREOPS, chaninfo_::flags, get_access(), chaninfo_::last_used, and chaninfo_::levels.

Referenced by bot_raw_ban(), bot_raw_kick(), botchanmsgs(), canBanUser(), chan_adduser2(), chan_set_correct_modes(), chan_set_user_status(), check_kick(), check_should_halfop(), check_should_op(), check_should_protect(), check_should_voice(), check_valid_admin(), check_valid_op(), do_access(), do_act(), do_akick(), do_assign(), do_badwords(), do_ban(), do_clear(), do_cs_kick(), do_cs_topic(), do_enforce_restricted(), do_fantasy(), do_getkey(), do_invite(), do_kickcmd(), do_read(), do_say(), do_set(), do_set_limit(), do_unassign(), do_unban(), do_util(), memo_send(), my_cs_appendtopic(), my_cs_enforce(), plexus_check_valid_halfop(), and plexus_check_valid_op().

int check_kick ( User user,
char *  chan,
time_t  chants 
)

Definition at line 1472 of file chanserv.c.

References add_timeout(), AK_ISNICK, AK_USED, chaninfo_::akick, alog(), anope_cmd_join(), anope_cmd_kick(), anope_cmd_mode(), BUFSIZE, CA_NOJOIN, check_access(), CI_INHABIT, CI_SUSPENDED, CI_VERBOTEN, channel_::creation_time, cs_findchan(), CSAutokickReason, CSInhabit, timeout_::data, debug, do_cmode(), ircdvars_::except, findchan(), AutoKick::flags, chaninfo_::flags, get_idealban(), getstring, user_::host, ircd, is_excepted(), is_ulined(), user_::isSuperAdmin, AutoKick::mask, match_usermask(), user_::na, server_::name, AutoKick::nc, nickalias_::nc, user_::nick, nick_recognized(), AutoKick::reason, s_ChanServ, user_::server, sstrdup(), AutoKick::u, channel_::usercount, user_::username, and whosends.

Referenced by do_akick(), do_join(), and do_sjoin().

void check_modes ( Channel c  ) 

Definition at line 1072 of file chanserv.c.

References alog(), anope_cmd_global(), anope_cmd_mode(), channel_::bouncy_modes, BUFSIZE, CBM_MINUS_NO_ARG, cbmodeinfos, cbmodes, channel_::chanserv_modecount, channel_::chanserv_modetime, channel_::ci, cbmodeinfo_::csgetvalue, debug, DefConModesCI, DefConModesOff, DefConModesOn, DefConModesSet, cbmodeinfo_::flag, cbmode_::flags, cbmodeinfo_::getvalue, ircd, chaninfo_::mlock_off, chaninfo_::mlock_on, cbmodeinfo_::mode, channel_::mode, channel_::name, ircdvars_::regmode, s_ChanServ, channel_::server_modecount, cbmode_::setvalue, and whosends.

Referenced by chan_create(), chan_set_modes(), do_clear(), do_register(), and do_set_mlock().

int check_should_halfop ( User user,
char *  chan 
)

Definition at line 1390 of file chanserv.c.

References anope_cmd_mode(), CA_AUTOHALFOP, check_access(), CI_VERBOTEN, cs_findchan(), chaninfo_::flags, user_::nick, and whosends.

int check_should_op ( User user,
char *  chan 
)

Definition at line 1347 of file chanserv.c.

References anope_cmd_mode(), CA_AUTOOP, check_access(), CI_SECURE, CI_VERBOTEN, cs_findchan(), chaninfo_::flags, user_::nick, nick_identified(), and whosends.

int check_should_owner ( User user,
char *  chan 
)

Definition at line 1407 of file chanserv.c.

References anope_cmd_mode(), CI_SECUREFOUNDER, CI_VERBOTEN, cs_findchan(), chaninfo_::flags, ircd, is_founder(), is_real_founder(), user_::nick, ircdvars_::ownerset, stripModePrefix(), and whosends.

int check_should_protect ( User user,
char *  chan 
)

Definition at line 1429 of file chanserv.c.

References ircdvars_::adminset, anope_cmd_mode(), CA_AUTOPROTECT, check_access(), CI_VERBOTEN, cs_findchan(), chaninfo_::flags, ircd, user_::nick, stripModePrefix(), and whosends.

int check_should_voice ( User user,
char *  chan 
)

Definition at line 1370 of file chanserv.c.

References anope_cmd_mode(), CA_AUTOVOICE, check_access(), CI_SECURE, CI_VERBOTEN, cs_findchan(), chaninfo_::flags, user_::nick, nick_identified(), and whosends.

int check_topiclock ( Channel c,
time_t  topic_time 
)

Definition at line 1666 of file chanserv.c.

References alog(), anope_cmd_join(), anope_cmd_mode(), anope_cmd_part(), anope_cmd_topic(), channel_::ci, CI_TOPICLOCK, channel_::creation_time, debug, chaninfo_::flags, ircd, ircdvars_::join2set, chaninfo_::last_topic, chaninfo_::last_topic_setter, chaninfo_::last_topic_time, chaninfo_::name, channel_::name, NICKMAX, s_ChanServ, sstrdup(), strscpy(), channel_::topic, channel_::topic_setter, channel_::topic_time, ircdvars_::topictsforward, and whosends.

Referenced by anope_event_tburst(), anope_event_topic(), and do_topic().

int check_valid_admin ( User user,
Channel chan,
int  servermode 
)

Definition at line 1227 of file chanserv.c.

References ircdvars_::admin, ircdvars_::adminunset, anope_cmd_mode(), CA_AUTODEOP, CA_AUTOPROTECT, check_access(), channel_::ci, CI_VERBOTEN, chaninfo_::flags, ircd, channel_::name, user_::nick, notice_lang(), s_ChanServ, and whosends.

int check_valid_op ( User user,
Channel chan,
int  servermode 
)

Definition at line 1262 of file chanserv.c.

References ircdvars_::adminunset, anope_cmd_mode(), CA_AUTODEOP, CA_AUTOHALFOP, CA_AUTOOP, check_access(), channel_::ci, CI_VERBOTEN, chaninfo_::flags, ircdvars_::halfop, ircd, channel_::name, user_::nick, notice_lang(), ircdvars_::owner, ircdvars_::ownerunset, ircdvars_::protect, s_ChanServ, stripModePrefix(), and whosends.

ChannelInfo* cs_findchan ( const char *  chan  ) 

Definition at line 1848 of file chanserv.c.

References alog(), chanlists, debug, chaninfo_::name, chaninfo_::next, stricmp(), and tolower.

char* cs_get_flood ( ChannelInfo ci  ) 

Definition at line 2314 of file chanserv.c.

References chaninfo_::mlock_flood.

char* cs_get_key ( ChannelInfo ci  ) 

Definition at line 2325 of file chanserv.c.

References chaninfo_::mlock_key.

char* cs_get_limit ( ChannelInfo ci  ) 

Definition at line 2336 of file chanserv.c.

References chaninfo_::mlock_limit, and snprintf().

char* cs_get_redirect ( ChannelInfo ci  ) 

Definition at line 2354 of file chanserv.c.

References chaninfo_::mlock_redirect.

void cs_init ( void   ) 

Definition at line 369 of file chanserv.c.

References moduleAddChanServCmds().

Referenced by init_secondary().

void cs_remove_bot ( const BotInfo bi  ) 

Definition at line 1832 of file chanserv.c.

References chaninfo_::bi, chanlists, and chaninfo_::next.

Referenced by delbot().

void cs_remove_nick ( const NickCore nc  ) 

Definition at line 1759 of file chanserv.c.

References alog(), anope_cmd_mode(), chaninfo_::c, chanlists, nickcore_::channelcount, delchan(), nickcore_::display, chaninfo_::founder, ircd, channel_::mode, chaninfo_::name, chaninfo_::next, nick_is_services_admin(), ircdvars_::regmode, s_ChanServ, chaninfo_::successor, and whosends.

void cs_set_flood ( ChannelInfo ci,
char *  value 
)

Definition at line 2365 of file chanserv.c.

References anope_flood_mode_check(), ircdvars_::chan_fmode, ircd, chaninfo_::mlock_flood, chaninfo_::mlock_on, and sstrdup().

void cs_set_key ( ChannelInfo ci,
char *  value 
)

Definition at line 2385 of file chanserv.c.

References anope_get_key_mode(), chaninfo_::mlock_key, chaninfo_::mlock_on, and sstrdup().

void cs_set_limit ( ChannelInfo ci,
char *  value 
)

Definition at line 2405 of file chanserv.c.

References anope_get_limit_mode(), chaninfo_::mlock_limit, and chaninfo_::mlock_on.

void cs_set_redirect ( ChannelInfo ci,
char *  value 
)

Definition at line 2419 of file chanserv.c.

References ircdvars_::chan_lmode, ircd, chaninfo_::mlock_on, chaninfo_::mlock_redirect, and sstrdup().

int delchan ( ChannelInfo ci  ) 

Definition at line 1964 of file chanserv.c.

References alog(), anope_cmd_part(), chaninfo_::bi, BSMinUsers, chaninfo_::c, botinfo_::chancount, channel_::ci, debug, chaninfo_::founder, user_::founder_chans, channel_::name, chaninfo_::name, user_::u_chaninfolist::next, user_::next, user_::nick, botinfo_::nick, channel_::usercount, and userlist.

Referenced by cs_remove_nick(), db_mysql_load_cs_dbase(), do_drop(), do_forbid(), do_register(), and expire_chans().

void expire_chans ( void   ) 

Definition at line 1730 of file chanserv.c.

References alog(), chaninfo_::c, chanlists, CI_NO_EXPIRE, CI_SUSPENDED, CI_VERBOTEN, CSExpire, delchan(), nickcore_::display, EVENT_CHAN_EXPIRE, chaninfo_::founder, chaninfo_::last_used, chaninfo_::name, chaninfo_::next, and send_event().

Referenced by expire_all().

int get_access ( User user,
ChannelInfo ci 
)

Definition at line 2229 of file chanserv.c.

References ACCESS_FOUNDER, ACCESS_SUPERADMIN, CI_SECURE, chaninfo_::flags, get_access_entry(), is_founder(), user_::isSuperAdmin, ChanAccess::level, user_::na, nickalias_::nc, nick_identified(), and nick_recognized().

Referenced by bot_raw_ban(), bot_raw_kick(), bot_raw_mode(), check_access(), do_access(), do_ban(), do_cs_kick(), do_drop(), do_set_password(), do_status(), do_util(), and do_xop().

ChanAccess* get_access_entry ( NickCore nc,
ChannelInfo ci 
)

Definition at line 2207 of file chanserv.c.

References chaninfo_::access, ChanAccess::in_use, and ChanAccess::nc.

Referenced by get_access(), and update_cs_lastseen().

int get_access_level ( ChannelInfo ci,
NickAlias na 
)

Definition at line 2437 of file chanserv.c.

References chaninfo_::access, ACCESS_FOUNDER, chaninfo_::accesscount, chaninfo_::founder, ChanAccess::in_use, ChanAccess::level, ChanAccess::nc, and nickalias_::nc.

Referenced by do_alist().

void get_chanserv_stats ( long *  nrec,
long *  memuse 
)

Definition at line 300 of file chanserv.c.

References chaninfo_::accesscount, AK_ISNICK, chaninfo_::akick, chaninfo_::akickcount, chaninfo_::badwords, chaninfo_::bwcount, CA_SIZE, chanlists, AutoKick::creator, chaninfo_::desc, chaninfo_::email, chaninfo_::entry_message, AutoKick::flags, ircdvars_::fmode, chaninfo_::forbidby, chaninfo_::forbidreason, ircd, chaninfo_::last_topic, chaninfo_::levels, ircdvars_::Lmode, AutoKick::mask, MemoInfo::memocount, MemoInfo::memos, chaninfo_::memos, chaninfo_::mlock_flood, chaninfo_::mlock_key, chaninfo_::mlock_redirect, chaninfo_::next, AutoKick::reason, memo_::text, chaninfo_::ttb, TTB_SIZE, AutoKick::u, chaninfo_::url, and badword_::word.

Referenced by do_stats().

int get_idealban ( ChannelInfo ci,
User u,
char *  ret,
int  retlen 
)

Definition at line 2277 of file chanserv.c.

References chaninfo_::bantype, common_get_vhost(), common_get_vident(), create_mask(), snprintf(), and USERMAX.

Referenced by bot_raw_ban(), check_kick(), do_ban(), do_enforce_cmode_R(), do_enforce_restricted(), and do_tban().

char* get_mlock_modes ( ChannelInfo ci,
int  complete 
)

Definition at line 131 of file chanserv.c.

References BUFSIZE, cbmodeinfos, cbmodeinfo_::csgetvalue, cbmodeinfo_::flag, chaninfo_::mlock_off, chaninfo_::mlock_on, and cbmodeinfo_::mode.

Referenced by do_set_mlock(), and listchans().

const char* get_xop_level ( int  level  ) 

Definition at line 2464 of file chanserv.c.

References ACCESS_AOP, ACCESS_FOUNDER, ACCESS_HOP, ACCESS_SOP, ACCESS_VOP, ircdvars_::halfop, and ircd.

Referenced by do_alist().

int is_founder ( User user,
ChannelInfo ci 
)

Definition at line 2152 of file chanserv.c.

References CI_SECURE, chaninfo_::flags, chaninfo_::founder, is_identified(), user_::isSuperAdmin, user_::na, nickalias_::nc, nick_identified(), and nick_recognized().

Referenced by chan_set_correct_modes(), check_should_owner(), do_deowner(), do_drop(), do_identify(), do_info(), do_levels(), do_owner(), get_access(), and update_cs_lastseen().

int is_identified ( User user,
ChannelInfo ci 
)

Definition at line 2192 of file chanserv.c.

References user_::founder_chans, and user_::u_chaninfolist::next.

Referenced by do_identify(), and is_founder().

int is_real_founder ( User user,
ChannelInfo ci 
)

Definition at line 2174 of file chanserv.c.

References CI_SECURE, chaninfo_::flags, chaninfo_::founder, user_::isSuperAdmin, user_::na, nickalias_::nc, nick_identified(), and nick_recognized().

Referenced by check_should_owner(), do_drop(), and do_logout().

AutoKick* is_stuck ( ChannelInfo ci,
char *  mask 
)

Definition at line 2502 of file chanserv.c.

References AK_STUCK, AK_USED, chaninfo_::akick, AutoKick::flags, ircd, AutoKick::mask, match_wild_nocase(), ircdvars_::reversekickcheck, and AutoKick::u.

Referenced by del_ban().

void listchans ( int  count_only,
const char *  chan 
)

Definition at line 192 of file chanserv.c.

References BUFSIZE, chanlists, CI_KEEPTOPIC, CI_NO_EXPIRE, CI_PRIVATE, CI_RESTRICTED, CI_SECURE, CI_SECUREOPS, CI_TOPICLOCK, CI_VERBOTEN, cs_findchan(), chaninfo_::desc, nickcore_::display, chaninfo_::email, chaninfo_::flags, chaninfo_::founder, get_mlock_modes(), getstring, chaninfo_::last_topic, chaninfo_::last_topic_setter, chaninfo_::last_used, chaninfo_::mlock_off, chaninfo_::mlock_on, chaninfo_::name, chaninfo_::next, chaninfo_::time_registered, and chaninfo_::url.

Referenced by do_listchans().

void load_cs_dbase ( void   ) 

Definition at line 412 of file chanserv.c.

References chaninfo_::access, ACCESS_INVALID, chaninfo_::accesscount, AutoKick::addtime, AK_ISNICK, AK_USED, chaninfo_::akick, chaninfo_::akickcount, alog(), chaninfo_::badwords, chaninfo_::bantype, chaninfo_::bi, chaninfo_::botflags, chaninfo_::bwcount, chaninfo_::c, CA_AUTOPROTECT, CA_BAN, CA_BANME, CA_KICK, CA_KICKME, CA_OPDEOP, CA_OPDEOPME, CA_PROTECT, CA_PROTECTME, CA_SIZE, CA_TOPIC, chaninfo_::capsmin, chaninfo_::capspercent, CHAN_VERSION, ChanDBName, chanlists, CI_INHABIT, CI_VERBOTEN, AutoKick::creator, CSDefBantype, chaninfo_::desc, chaninfo_::email, chaninfo_::entry_message, fatal(), findbot(), findcore(), findnick(), memo_::flags, AutoKick::flags, chaninfo_::flags, chaninfo_::floodlines, chaninfo_::floodsecs, ircdvars_::fmode, chaninfo_::forbidby, chaninfo_::forbidreason, chaninfo_::founder, chaninfo_::founderpass, get_file_version(), getc_db, badword_::in_use, ChanAccess::in_use, ircd, ChanAccess::last_seen, chaninfo_::last_topic, chaninfo_::last_topic_setter, chaninfo_::last_topic_time, chaninfo_::last_used, ChanAccess::level, chaninfo_::levels, ircdvars_::Lmode, AutoKick::mask, MemoInfo::memocount, MemoInfo::memomax, MemoInfo::memos, chaninfo_::memos, chaninfo_::mlock_flood, chaninfo_::mlock_key, chaninfo_::mlock_limit, chaninfo_::mlock_off, chaninfo_::mlock_on, chaninfo_::mlock_redirect, memo_::moduleData, chaninfo_::name, AutoKick::nc, ChanAccess::nc, nickalias_::nc, chaninfo_::next, memo_::number, open_db(), chaninfo_::prev, read_buffer, read_int16(), read_int32(), read_string(), AutoKick::reason, chaninfo_::repeattimes, reset_levels(), s_ChanServ, SAFE, scalloc(), memo_::sender, sstrdup(), chaninfo_::successor, memo_::text, memo_::time, chaninfo_::time_registered, chaninfo_::ttb, TTB_SIZE, badword_::type, AutoKick::u, chaninfo_::url, and badword_::word.

Referenced by do_listchans(), and init_secondary().

ChannelInfo* makechan ( const char *  chan  ) 

Definition at line 1943 of file chanserv.c.

References alpha_insert_chan(), CHANMAX, chaninfo_::name, reset_levels(), scalloc(), strscpy(), chaninfo_::time_registered, chaninfo_::ttb, and TTB_SIZE.

Referenced by do_forbid(), and do_register().

void moduleAddChanServCmds ( void   ) 

Definition at line 121 of file chanserv.c.

References ChanServCoreModules, ChanServCoreNumber, and modules_core_init().

Referenced by cs_init().

void record_topic ( const char *  chan  ) 

Definition at line 1590 of file chanserv.c.

References channel_::ci, findchan(), chaninfo_::last_topic, chaninfo_::last_topic_setter, chaninfo_::last_topic_time, NICKMAX, readonly, sstrdup(), strscpy(), channel_::topic, channel_::topic_setter, and channel_::topic_time.

Referenced by anope_event_tburst(), anope_event_topic(), and do_topic().

void reset_levels ( ChannelInfo ci  ) 

Definition at line 2130 of file chanserv.c.

References alog(), CA_SIZE, debug, chaninfo_::levels, and scalloc().

Referenced by db_mysql_load_cs_dbase(), do_levels(), do_set_xop(), load_cs_dbase(), and makechan().

void restore_topic ( char *  chan  ) 

Definition at line 1618 of file chanserv.c.

References anope_cmd_join(), anope_cmd_mode(), anope_cmd_part(), anope_cmd_topic(), channel_::ci, CI_KEEPTOPIC, channel_::creation_time, findchan(), chaninfo_::flags, ircd, ircdvars_::join2set, chaninfo_::last_topic, chaninfo_::last_topic_setter, chaninfo_::last_topic_time, channel_::name, NICKMAX, s_ChanServ, sstrdup(), strscpy(), channel_::topic, channel_::topic_setter, channel_::topic_sync, channel_::topic_time, and whosends.

Referenced by chan_create(), do_sjoin(), and restore_unsynced_topics().

void save_cs_dbase ( void   ) 

Definition at line 847 of file chanserv.c.

References chaninfo_::access, chaninfo_::accesscount, AutoKick::addtime, AK_ISNICK, AK_USED, chaninfo_::akick, chaninfo_::akickcount, chaninfo_::badwords, chaninfo_::bantype, chaninfo_::bi, chaninfo_::botflags, chaninfo_::bwcount, CA_SIZE, chaninfo_::capsmin, chaninfo_::capspercent, CHAN_VERSION, ChanDBName, chanlists, AutoKick::creator, chaninfo_::desc, nickcore_::display, chaninfo_::email, chaninfo_::entry_message, memo_::flags, AutoKick::flags, chaninfo_::flags, chaninfo_::floodlines, chaninfo_::floodsecs, ircdvars_::fmode, chaninfo_::forbidby, chaninfo_::forbidreason, chaninfo_::founder, chaninfo_::founderpass, badword_::in_use, ChanAccess::in_use, ircd, ChanAccess::last_seen, chaninfo_::last_topic, chaninfo_::last_topic_setter, chaninfo_::last_topic_time, chaninfo_::last_used, ChanAccess::level, chaninfo_::levels, ircdvars_::Lmode, AutoKick::mask, MemoInfo::memocount, MemoInfo::memomax, MemoInfo::memos, chaninfo_::memos, chaninfo_::mlock_flood, chaninfo_::mlock_key, chaninfo_::mlock_limit, chaninfo_::mlock_off, chaninfo_::mlock_on, chaninfo_::mlock_redirect, chaninfo_::name, AutoKick::nc, ChanAccess::nc, chaninfo_::next, botinfo_::nick, memo_::number, open_db(), AutoKick::reason, chaninfo_::repeattimes, s_ChanServ, SAFE, memo_::sender, chaninfo_::successor, memo_::text, memo_::time, chaninfo_::time_registered, chaninfo_::ttb, TTB_SIZE, badword_::type, AutoKick::u, chaninfo_::url, badword_::word, write_buffer, write_int16(), write_int32(), write_int8, and write_string().

Referenced by save_databases().

void save_cs_rdb_dbase ( void   ) 

Definition at line 982 of file chanserv.c.

References alog(), chanlists, chaninfo_::next, rdb_clean_table(), rdb_clean_table_where(), rdb_close(), rdb_open(), rdb_save_cs_info(), rdb_tag_table(), and rdb_tag_table_where().

Referenced by save_databases().

void stick_all ( ChannelInfo ci  ) 

Definition at line 2564 of file chanserv.c.

References AK_STUCK, AK_USED, chaninfo_::akick, anope_cmd_mode(), chaninfo_::c, chan_set_modes(), AutoKick::flags, AutoKick::mask, channel_::name, s_ChanServ, sstrdup(), AutoKick::u, and whosends.

Referenced by chan_create().

void stick_mask ( ChannelInfo ci,
AutoKick akick 
)

Definition at line 2530 of file chanserv.c.

References channel_::bancount, channel_::bans, chaninfo_::c, ircd, AutoKick::mask, match_wild_nocase(), ircdvars_::reversekickcheck, and AutoKick::u.

Referenced by del_ban(), and do_akick().