#include "inspircd.h"#include "inspircd_io.h"#include "inspircd_util.h"#include "inspircd_config.h"#include <unistd.h>#include <fcntl.h>#include <sys/errno.h>#include <sys/ioctl.h>#include <sys/utsname.h>#include <cstdio>#include <time.h>#include <string>#include <hash_map>#include <map>#include <sstream>#include <vector>#include <errno.h>#include <deque>#include <sched.h>#include "connection.h"#include "users.h"#include "servers.h"#include "ctables.h"#include "globals.h"#include "modules.h"#include "dynamic.h"#include "wildcard.h"#include "message.h"#include "mode.h"#include "xline.h"#include "commands.h"Include dependency graph for modules.cpp:

Go to the source code of this file.
Namespaces | |
| namespace | nspace |
Compounds | |
| class | ExtMode |
| struct | InAddr_HashComp |
| struct | StrHashComp |
Defines | |
| #define | nspace std |
Typedefs | |
| typedef nspace::hash_map< std::string, userrec *, nspace::hash< string >, StrHashComp > | user_hash |
| typedef nspace::hash_map< std::string, chanrec *, nspace::hash< string >, StrHashComp > | chan_hash |
| typedef nspace::hash_map< in_addr, string *, nspace::hash< in_addr >, InAddr_HashComp > | address_cache |
| typedef std::deque< command_t > | command_table |
| typedef std::vector< ExtMode > | ExtModeList |
| typedef ExtModeList::iterator | ExtModeListIter |
Functions | |
| bool | ModeDefined (char modechar, int type) |
| bool | ModeIsListMode (char modechar, int type) |
| bool | ModeDefinedOper (char modechar, int type) |
| int | ModeDefinedOn (char modechar, int type) |
| int | ModeDefinedOff (char modechar, int type) |
| bool | DoAddExtendedMode (char modechar, int type, bool requires_oper, int params_on, int params_off) |
| void | ModeMakeList (char modechar) |
| std::vector< Module * > | modules (255) |
| std::vector< ircd_module * > | factory (255) |
Variables | |
| int | MODCOUNT = -1 |
| vector< Module * > | modules |
| vector< ircd_module * > | factory |
| int | LogLevel |
| char | ServerName [MAXBUF] |
| char | Network [MAXBUF] |
| char | ServerDesc [MAXBUF] |
| char | AdminName [MAXBUF] |
| char | AdminEmail [MAXBUF] |
| char | AdminNick [MAXBUF] |
| char | diepass [MAXBUF] |
| char | restartpass [MAXBUF] |
| char | motd [MAXBUF] |
| char | rules [MAXBUF] |
| char | list [MAXBUF] |
| char | PrefixQuit [MAXBUF] |
| char | DieValue [MAXBUF] |
| int | debugging |
| int | WHOWAS_STALE |
| int | WHOWAS_MAX |
| int | DieDelay |
| time_t | startup_time |
| int | NetBufferSize |
| int | MaxWhoResults |
| time_t | nb_start |
| std::vector< int > | fd_reap |
| std::vector< std::string > | module_names |
| char | bannerBuffer [MAXBUF] |
| int | boundPortCount |
| int | portCount |
| int | UDPportCount |
| int | ports [MAXSOCKS] |
| int | defaultRoute |
| std::vector< long > | auth_cookies |
| std::stringstream | config_f |
| serverrec * | me [32] |
| FILE * | log_file |
| user_hash | clientlist |
| chan_hash | chanlist |
| user_hash | whowas |
| command_table | cmdlist |
| file_cache | MOTD |
| file_cache | RULES |
| address_cache | IP |
| ExtModeList | EMode |
|
|
Definition at line 42 of file modules.cpp. |
|
|
Definition at line 151 of file modules.cpp. |
|
|
Definition at line 150 of file modules.cpp. |
|
|
Definition at line 152 of file modules.cpp. |
|
|
Definition at line 178 of file modules.cpp. |
|
|
Definition at line 179 of file modules.cpp. Referenced by ModeDefined(), ModeDefinedOff(), ModeDefinedOn(), ModeDefinedOper(), ModeIsListMode(), and ModeMakeList(). |
|
|
Definition at line 149 of file modules.cpp. |
|
||||||||||||||||||||||||
|
Definition at line 254 of file modules.cpp. References EMode, and ModeDefined(). Referenced by Server::AddExtendedListMode(), and Server::AddExtendedMode().
00255 {
00256 if (ModeDefined(modechar,type)) {
00257 return false;
00258 }
00259 EMode.push_back(ExtMode(modechar,type,requires_oper,params_on,params_off));
00260 return true;
00261 }
|
|
|
|
|
||||||||||||
|
Definition at line 185 of file modules.cpp. References EMode, and ExtModeListIter. Referenced by DoAddExtendedMode().
00186 {
00187 log(DEBUG,"Size of extmodes vector is %d",EMode.size());
00188 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
00189 {
00190 log(DEBUG,"i->modechar==%c, modechar=%c, i->type=%d, type=%d",i->modechar,modechar,i->type,type);
00191 if ((i->modechar == modechar) && (i->type == type))
00192 {
00193 return true;
00194 }
00195 }
00196 return false;
00197 }
|
|
||||||||||||
|
Definition at line 241 of file modules.cpp. References EMode, and ExtModeListIter.
00242 {
00243 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
00244 {
00245 if ((i->modechar == modechar) && (i->type == type))
00246 {
00247 return i->params_when_off;
00248 }
00249 }
00250 return 0;
00251 }
|
|
||||||||||||
|
Definition at line 228 of file modules.cpp. References EMode, and ExtModeListIter.
00229 {
00230 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
00231 {
00232 if ((i->modechar == modechar) && (i->type == type))
00233 {
00234 return i->params_when_on;
00235 }
00236 }
00237 return 0;
00238 }
|
|
||||||||||||
|
Definition at line 213 of file modules.cpp. References EMode, and ExtModeListIter.
00214 {
00215 log(DEBUG,"Size of extmodes vector is %d",EMode.size());
00216 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
00217 {
00218 log(DEBUG,"i->modechar==%c, modechar=%c, i->type=%d, type=%d",i->modechar,modechar,i->type,type);
00219 if ((i->modechar == modechar) && (i->type == type) && (i->needsoper == true))
00220 {
00221 return true;
00222 }
00223 }
00224 return false;
00225 }
|
|
||||||||||||
|
Definition at line 199 of file modules.cpp. References EMode, and ExtModeListIter.
00200 {
00201 log(DEBUG,"Size of extmodes vector is %d",EMode.size());
00202 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
00203 {
00204 log(DEBUG,"i->modechar==%c, modechar=%c, i->type=%d, type=%d",i->modechar,modechar,i->type,type);
00205 if ((i->modechar == modechar) && (i->type == type) && (i->list == true))
00206 {
00207 return true;
00208 }
00209 }
00210 return false;
00211 }
|
|
|
Definition at line 264 of file modules.cpp. References EMode, ExtModeListIter, and MT_CHANNEL. Referenced by Server::AddExtendedListMode().
00265 {
00266 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
00267 {
00268 if ((i->modechar == modechar) && (i->type == MT_CHANNEL))
00269 {
00270 i->list = true;
00271 return;
00272 }
00273 }
00274 return;
00275 }
|
|
|
|
|
|
Definition at line 56 of file modules.cpp. |
|
|
Definition at line 55 of file modules.cpp. |
|
|
Definition at line 57 of file modules.cpp. |
|
|
Definition at line 85 of file modules.cpp. |
|
|
Definition at line 78 of file modules.cpp. |
|
|
Definition at line 79 of file modules.cpp. |
|
|
Definition at line 156 of file modules.cpp. |
|
|
Definition at line 155 of file modules.cpp. Referenced by Server::GetUsers(). |
|
|
Definition at line 158 of file modules.cpp. |
|
|
Definition at line 86 of file modules.cpp. |
|
|
Definition at line 66 of file modules.cpp. |
|
|
Definition at line 83 of file modules.cpp. |
|
|
Definition at line 69 of file modules.cpp. |
|
|
Definition at line 58 of file modules.cpp. |
|
|
Definition at line 64 of file modules.cpp. |
|
|
Definition at line 182 of file modules.cpp. Referenced by DoAddExtendedMode(), ModeDefined(), ModeDefinedOff(), ModeDefinedOn(), ModeDefinedOper(), ModeIsListMode(), and ModeMakeList(). |
|
|
Definition at line 49 of file modules.cpp. |
|
|
Definition at line 75 of file modules.cpp. |
|
|
Definition at line 161 of file modules.cpp. |
|
|
Definition at line 62 of file modules.cpp. |
|
|
Definition at line 90 of file modules.cpp. |
|
|
Definition at line 51 of file modules.cpp. |
|
|
Definition at line 72 of file modules.cpp. |
|
|
Definition at line 88 of file modules.cpp. |
|
|
Definition at line 714 of file modules.cpp. |
|
|
Definition at line 76 of file modules.cpp. |
|
|
Definition at line 48 of file modules.cpp. |
|
|
Definition at line 159 of file modules.cpp. |
|
|
Definition at line 60 of file modules.cpp. |
|
|
Definition at line 73 of file modules.cpp. |
|
|
Definition at line 71 of file modules.cpp. |
|
|
Definition at line 53 of file modules.cpp. |
|
|
Definition at line 80 of file modules.cpp. |
|
|
Definition at line 82 of file modules.cpp. |
|
|
Definition at line 63 of file modules.cpp. |
|
|
Definition at line 59 of file modules.cpp. |
|
|
Definition at line 160 of file modules.cpp. |
|
|
Definition at line 61 of file modules.cpp. |
|
|
Definition at line 54 of file modules.cpp. |
|
|
Definition at line 52 of file modules.cpp. |
|
|
Definition at line 70 of file modules.cpp. |
|
|
Definition at line 81 of file modules.cpp. |
|
|
Definition at line 157 of file modules.cpp. |
|
|
Definition at line 68 of file modules.cpp. |
|
|
Definition at line 67 of file modules.cpp. |
1.3-rc3