.TH "modules.cpp" 3 "12 Dec 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*- .ad l .nh .SH NAME modules.cpp \- .SH SYNOPSIS .br .PP \fC#include 'inspircd_config.h'\fP .br \fC#include 'inspircd.h'\fP .br \fC#include 'inspircd_io.h'\fP .br \fC#include 'inspircd_util.h'\fP .br \fC#include \fP .br \fC#include \fP .br \fC#include \fP .br \fC#include \fP .br \fC#include \fP .br \fC#include \fP .br \fC#include \fP .br \fC#include \fP .br \fC#include \fP .br \fC#include 'users.h'\fP .br \fC#include 'ctables.h'\fP .br \fC#include 'globals.h'\fP .br \fC#include 'modules.h'\fP .br \fC#include 'dynamic.h'\fP .br \fC#include 'wildcard.h'\fP .br \fC#include 'message.h'\fP .br \fC#include 'mode.h'\fP .br \fC#include 'xline.h'\fP .br \fC#include 'commands.h'\fP .br \fC#include 'inspstring.h'\fP .br \fC#include 'helperfuncs.h'\fP .br \fC#include 'hashcomp.h'\fP .br \fC#include 'socket.h'\fP .br \fC#include 'socketengine.h'\fP .br .SS "Classes" .in +1c .ti -1c .RI "class \fBExtMode\fP" .br .in -1c .SS "Typedefs" .in +1c .ti -1c .RI "typedef nspace::hash_map< \fBstd::string\fP, \fBuserrec\fP *, nspace::hash< \fBstring\fP >, \fBirc::StrHashComp\fP > \fBuser_hash\fP" .br .ti -1c .RI "typedef nspace::hash_map< \fBstd::string\fP, \fBchanrec\fP *, nspace::hash< \fBstring\fP >, \fBirc::StrHashComp\fP > \fBchan_hash\fP" .br .ti -1c .RI "typedef nspace::hash_map< in_addr, \fBstring\fP *, nspace::hash< in_addr >, \fBirc::InAddr_HashComp\fP > \fBaddress_cache\fP" .br .ti -1c .RI "typedef nspace::hash_map< \fBstd::string\fP, \fBWhoWasUser\fP *, nspace::hash< \fBstring\fP >, \fBirc::StrHashComp\fP > \fBwhowas_hash\fP" .br .ti -1c .RI "typedef std::deque< \fBcommand_t\fP > \fBcommand_table\fP" .br .ti -1c .RI "typedef std::vector< \fBExtMode\fP > \fBExtModeList\fP" .br .ti -1c .RI "typedef ExtModeList::iterator \fBExtModeListIter\fP" .br .in -1c .SS "Functions" .in +1c .ti -1c .RI "bool \fBModeDefined\fP (char modechar, int type)" .br .ti -1c .RI "bool \fBModeIsListMode\fP (char modechar, int type)" .br .ti -1c .RI "bool \fBModeDefinedOper\fP (char modechar, int type)" .br .ti -1c .RI "int \fBModeDefinedOn\fP (char modechar, int type)" .br .ti -1c .RI "int \fBModeDefinedOff\fP (char modechar, int type)" .br .ti -1c .RI "bool \fBDoAddExtendedMode\fP (char modechar, int type, bool requires_oper, int params_on, int params_off)" .br .ti -1c .RI "void \fBModeMakeList\fP (char modechar)" .br .ti -1c .RI "std::vector< \fBModule\fP * > \fBmodules\fP (255)" .br .ti -1c .RI "std::vector< \fBircd_module\fP * > \fBfactory\fP (255)" .br .in -1c .SS "Variables" .in +1c .ti -1c .RI "\fBSocketEngine\fP * \fBSE\fP" .br .ti -1c .RI "int \fBMODCOUNT\fP = -1" .br .ti -1c .RI "std::vector< \fBModule\fP * > \fBmodules\fP" .br .ti -1c .RI "std::vector< \fBircd_module\fP * > \fBfactory\fP" .br .ti -1c .RI "std::vector< \fBstd::string\fP > \fBinclude_stack\fP" .br .ti -1c .RI "std::vector< \fBInspSocket\fP * > \fBmodule_sockets\fP" .br .ti -1c .RI "time_t \fBTIME\fP" .br .ti -1c .RI "int \fBLogLevel\fP" .br .ti -1c .RI "char \fBServerName\fP [MAXBUF]" .br .ti -1c .RI "char \fBNetwork\fP [MAXBUF]" .br .ti -1c .RI "char \fBServerDesc\fP [MAXBUF]" .br .ti -1c .RI "char \fBAdminName\fP [MAXBUF]" .br .ti -1c .RI "char \fBAdminEmail\fP [MAXBUF]" .br .ti -1c .RI "char \fBAdminNick\fP [MAXBUF]" .br .ti -1c .RI "char \fBdiepass\fP [MAXBUF]" .br .ti -1c .RI "char \fBrestartpass\fP [MAXBUF]" .br .ti -1c .RI "char \fBmotd\fP [MAXBUF]" .br .ti -1c .RI "char \fBrules\fP [MAXBUF]" .br .ti -1c .RI "char \fBlist\fP [MAXBUF]" .br .ti -1c .RI "char \fBPrefixQuit\fP [MAXBUF]" .br .ti -1c .RI "char \fBDieValue\fP [MAXBUF]" .br .ti -1c .RI "int \fBdebugging\fP" .br .ti -1c .RI "int \fBWHOWAS_STALE\fP" .br .ti -1c .RI "int \fBWHOWAS_MAX\fP" .br .ti -1c .RI "int \fBDieDelay\fP" .br .ti -1c .RI "time_t \fBstartup_time\fP" .br .ti -1c .RI "int \fBNetBufferSize\fP" .br .ti -1c .RI "int \fBMaxWhoResults\fP" .br .ti -1c .RI "time_t \fBnb_start\fP" .br .ti -1c .RI "std::vector< \fBstd::string\fP > \fBmodule_names\fP" .br .ti -1c .RI "int \fBboundPortCount\fP" .br .ti -1c .RI "int \fBportCount\fP" .br .ti -1c .RI "int \fBports\fP [MAXSOCKS]" .br .ti -1c .RI "std::stringstream \fBconfig_f\fP" .br .ti -1c .RI "FILE * \fBlog_file\fP" .br .ti -1c .RI "\fBuserrec\fP * \fBfd_ref_table\fP [65536]" .br .ti -1c .RI "\fBuser_hash\fP \fBclientlist\fP" .br .ti -1c .RI "\fBchan_hash\fP \fBchanlist\fP" .br .ti -1c .RI "\fBwhowas_hash\fP \fBwhowas\fP" .br .ti -1c .RI "\fBcommand_table\fP \fBcmdlist\fP" .br .ti -1c .RI "\fBfile_cache\fP \fBMOTD\fP" .br .ti -1c .RI "\fBfile_cache\fP \fBRULES\fP" .br .ti -1c .RI "\fBaddress_cache\fP \fBIP\fP" .br .ti -1c .RI "\fBExtModeList\fP \fBEMode\fP" .br .in -1c .SH "Typedef Documentation" .PP .SS "typedef nspace::hash_map, \fBirc::InAddr_HashComp\fP> \fBaddress_cache\fP" .PP Definition at line 117 of file modules.cpp. .SS "typedef nspace::hash_map<\fBstd::string\fP, \fBchanrec\fP*, nspace::hash<\fBstring\fP>, \fBirc::StrHashComp\fP> \fBchan_hash\fP" .PP Definition at line 116 of file modules.cpp. .SS "typedef std::deque<\fBcommand_t\fP> \fBcommand_table\fP" .PP Definition at line 119 of file modules.cpp. .SS "typedef std::vector<\fBExtMode\fP> \fBExtModeList\fP" .PP Definition at line 145 of file modules.cpp. .SS "typedef ExtModeList::iterator \fBExtModeListIter\fP" .PP Definition at line 146 of file modules.cpp. .SS "typedef nspace::hash_map<\fBstd::string\fP, \fBuserrec\fP*, nspace::hash<\fBstring\fP>, \fBirc::StrHashComp\fP> \fBuser_hash\fP" .PP Definition at line 115 of file modules.cpp. .SS "typedef nspace::hash_map<\fBstd::string\fP, \fBWhoWasUser\fP*, nspace::hash<\fBstring\fP>, \fBirc::StrHashComp\fP> \fBwhowas_hash\fP" .PP Definition at line 118 of file modules.cpp. .SH "Function Documentation" .PP .SS "bool DoAddExtendedMode (char modechar, int type, bool requires_oper, int params_on, int params_off)" .PP Definition at line 215 of file modules.cpp. .PP References EMode, and ModeDefined(). .PP Referenced by Server::AddExtendedListMode(), and Server::AddExtendedMode(). .PP .nf 216 { 217 if (ModeDefined(modechar,type)) { 218 return false; 219 } 220 EMode.push_back(ExtMode(modechar,type,requires_oper,params_on,params_off)); 221 return true; 222 } .fi .PP .SS "std::vector<\fBircd_module\fP*> factory (255)" .PP .SS "bool ModeDefined (char modechar, int type)" .PP Definition at line 152 of file modules.cpp. .PP References EMode. .PP Referenced by DoAddExtendedMode(). .PP .nf 153 { 154 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++) 155 { 156 if ((i->modechar == modechar) && (i->type == type)) 157 { 158 return true; 159 } 160 } 161 return false; 162 } .fi .PP .SS "int ModeDefinedOff (char modechar, int type)" .PP Definition at line 202 of file modules.cpp. .PP References EMode. .PP .nf 203 { 204 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++) 205 { 206 if ((i->modechar == modechar) && (i->type == type)) 207 { 208 return i->params_when_off; 209 } 210 } 211 return 0; 212 } .fi .PP .SS "int ModeDefinedOn (char modechar, int type)" .PP Definition at line 189 of file modules.cpp. .PP References EMode. .PP .nf 190 { 191 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++) 192 { 193 if ((i->modechar == modechar) && (i->type == type)) 194 { 195 return i->params_when_on; 196 } 197 } 198 return 0; 199 } .fi .PP .SS "bool ModeDefinedOper (char modechar, int type)" .PP Definition at line 176 of file modules.cpp. .PP References EMode. .PP .nf 177 { 178 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++) 179 { 180 if ((i->modechar == modechar) && (i->type == type) && (i->needsoper == true)) 181 { 182 return true; 183 } 184 } 185 return false; 186 } .fi .PP .SS "bool ModeIsListMode (char modechar, int type)" .PP Definition at line 164 of file modules.cpp. .PP References EMode. .PP .nf 165 { 166 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++) 167 { 168 if ((i->modechar == modechar) && (i->type == type) && (i->list == true)) 169 { 170 return true; 171 } 172 } 173 return false; 174 } .fi .PP .SS "void ModeMakeList (char modechar)" .PP Definition at line 225 of file modules.cpp. .PP References EMode, and MT_CHANNEL. .PP Referenced by Server::AddExtendedListMode(). .PP .nf 226 { 227 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++) 228 { 229 if ((i->modechar == modechar) && (i->type == MT_CHANNEL)) 230 { 231 i->list = true; 232 return; 233 } 234 } 235 return; 236 } .fi .PP .SS "std::vector<\fBModule\fP*> modules (255)" .PP .SH "Variable Documentation" .PP .SS "char \fBAdminEmail\fP[MAXBUF]" .PP .SS "char \fBAdminName\fP[MAXBUF]" .PP .SS "char \fBAdminNick\fP[MAXBUF]" .PP .SS "int \fBboundPortCount\fP" .PP .SS "\fBchan_hash\fP \fBchanlist\fP" .PP .SS "\fBuser_hash\fP \fBclientlist\fP" .PP .SS "\fBcommand_table\fP \fBcmdlist\fP" .PP .SS "std::stringstream \fBconfig_f\fP" .PP .SS "int \fBdebugging\fP" .PP .SS "int \fBDieDelay\fP" .PP .SS "char \fBdiepass\fP[MAXBUF]" .PP .SS "char \fBDieValue\fP[MAXBUF]" .PP .SS "\fBExtModeList\fP \fBEMode\fP" .PP Definition at line 149 of file modules.cpp. .PP Referenced by DoAddExtendedMode(), ModeDefined(), ModeDefinedOff(), ModeDefinedOn(), ModeDefinedOper(), ModeIsListMode(), and ModeMakeList(). .SS "std::vector<\fBircd_module\fP*> factory" .PP .SS "\fBuserrec\fP* \fBfd_ref_table\fP[65536]" .PP .SS "std::vector<\fBstd::string\fP> \fBinclude_stack\fP" .PP Referenced by ConfigReader::ConfigReader(). .SS "\fBaddress_cache\fP \fBIP\fP" .PP .SS "char \fBlist\fP[MAXBUF]" .PP .SS "FILE* \fBlog_file\fP" .PP .SS "int \fBLogLevel\fP" .PP .SS "int \fBMaxWhoResults\fP" .PP Definition at line 81 of file channels.cpp. .SS "int \fBMODCOUNT\fP = -1" .PP Definition at line 1005 of file modules.cpp. .SS "std::vector<\fBstd::string\fP> \fBmodule_names\fP" .PP .SS "std::vector<\fBInspSocket\fP*> \fBmodule_sockets\fP" .PP Referenced by Server::AddSocket(), and Server::DelSocket(). .SS "std::vector<\fBModule\fP*> modules" .PP .SS "\fBfile_cache\fP \fBMOTD\fP" .PP .SS "char \fBmotd\fP[MAXBUF]" .PP .SS "time_t \fBnb_start\fP" .PP .SS "int \fBNetBufferSize\fP" .PP .SS "char \fBNetwork\fP[MAXBUF]" .PP .SS "int \fBportCount\fP" .PP .SS "int \fBports\fP[MAXSOCKS]" .PP .SS "char \fBPrefixQuit\fP[MAXBUF]" .PP .SS "char \fBrestartpass\fP[MAXBUF]" .PP .SS "\fBfile_cache\fP \fBRULES\fP" .PP .SS "char \fBrules\fP[MAXBUF]" .PP .SS "\fBSocketEngine\fP* \fBSE\fP" .PP .SS "char \fBServerDesc\fP[MAXBUF]" .PP .SS "char \fBServerName\fP[MAXBUF]" .PP .SS "time_t \fBstartup_time\fP" .PP .SS "time_t \fBTIME\fP" .PP .SS "\fBwhowas_hash\fP \fBwhowas\fP" .PP .SS "int \fBWHOWAS_MAX\fP" .PP .SS "int \fBWHOWAS_STALE\fP" .PP .SH "Author" .PP Generated automatically by Doxygen for InspIRCd from the source code.