X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=docs%2Fmodule-doc%2Fchannels_8cpp-source.html;h=feec5850bfa99dfd9c1fb38c6840ae827925012f;hb=654ff4ae2f06704de2beb1050021c8196f693cb5;hp=2e474e22dba26479736bc0d982399877f35237db;hpb=52899de0ff2d62ca0542b243c41626010bf62083;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/docs/module-doc/channels_8cpp-source.html b/docs/module-doc/channels_8cpp-source.html index 2e474e22d..feec5850b 100644 --- a/docs/module-doc/channels_8cpp-source.html +++ b/docs/module-doc/channels_8cpp-source.html @@ -57,152 +57,154 @@ 00050 #include "message.h" 00051 #include "mode.h" 00052 #include "xline.h" -00053 -00054 #ifdef GCC3 -00055 #define nspace __gnu_cxx -00056 #else -00057 #define nspace std -00058 #endif -00059 -00060 using namespace std; -00061 -00062 extern int MODCOUNT; -00063 extern vector<Module*> modules; -00064 extern vector<ircd_module*> factory; -00065 -00066 extern int LogLevel; -00067 extern char ServerName[MAXBUF]; -00068 extern char Network[MAXBUF]; -00069 extern char ServerDesc[MAXBUF]; -00070 extern char AdminName[MAXBUF]; -00071 extern char AdminEmail[MAXBUF]; -00072 extern char AdminNick[MAXBUF]; -00073 extern char diepass[MAXBUF]; -00074 extern char restartpass[MAXBUF]; -00075 extern char motd[MAXBUF]; -00076 extern char rules[MAXBUF]; -00077 extern char list[MAXBUF]; -00078 extern char PrefixQuit[MAXBUF]; -00079 extern char DieValue[MAXBUF]; -00080 -00081 extern int debugging; -00082 extern int WHOWAS_STALE; -00083 extern int WHOWAS_MAX; -00084 extern int DieDelay; -00085 extern time_t startup_time; -00086 extern int NetBufferSize; -00087 int MaxWhoResults; -00088 extern time_t nb_start; -00089 -00090 extern std::vector<int> fd_reap; -00091 extern std::vector<std::string> module_names; -00092 -00093 extern int boundPortCount; -00094 extern int portCount; -00095 extern int UDPportCount; -00096 extern int ports[MAXSOCKS]; -00097 extern int defaultRoute; -00098 -00099 extern std::vector<long> auth_cookies; -00100 extern std::stringstream config_f; -00101 -00102 extern serverrec* me[32]; -00103 -00104 extern FILE *log_file; -00105 +00053 #include "inspstring.h" +00054 +00055 #ifdef GCC3 +00056 #define nspace __gnu_cxx +00057 #else +00058 #define nspace std +00059 #endif +00060 +00061 using namespace std; +00062 +00063 extern int MODCOUNT; +00064 extern std::vector<Module*> modules; +00065 extern std::vector<ircd_module*> factory; +00066 +00067 extern int LogLevel; +00068 extern char ServerName[MAXBUF]; +00069 extern char Network[MAXBUF]; +00070 extern char ServerDesc[MAXBUF]; +00071 extern char AdminName[MAXBUF]; +00072 extern char AdminEmail[MAXBUF]; +00073 extern char AdminNick[MAXBUF]; +00074 extern char diepass[MAXBUF]; +00075 extern char restartpass[MAXBUF]; +00076 extern char motd[MAXBUF]; +00077 extern char rules[MAXBUF]; +00078 extern char list[MAXBUF]; +00079 extern char PrefixQuit[MAXBUF]; +00080 extern char DieValue[MAXBUF]; +00081 +00082 extern int debugging; +00083 extern int WHOWAS_STALE; +00084 extern int WHOWAS_MAX; +00085 extern int DieDelay; +00086 extern time_t startup_time; +00087 extern int NetBufferSize; +00088 int MaxWhoResults; +00089 extern time_t nb_start; +00090 +00091 extern std::vector<int> fd_reap; +00092 extern std::vector<std::string> module_names; +00093 +00094 extern int boundPortCount; +00095 extern int portCount; +00096 extern int UDPportCount; +00097 extern int ports[MAXSOCKS]; +00098 extern int defaultRoute; +00099 +00100 extern std::vector<long> auth_cookies; +00101 extern std::stringstream config_f; +00102 +00103 extern serverrec* me[32]; +00104 +00105 extern FILE *log_file; 00106 -00107 using namespace std; +00107 extern time_t TIME; 00108 -00109 std::vector<ModeParameter> custom_mode_params; +00109 using namespace std; 00110 -00111 chanrec::chanrec() -00112 { -00113 strcpy(name,""); -00114 strcpy(custom_modes,""); -00115 strcpy(topic,""); -00116 strcpy(setby,""); -00117 strcpy(key,""); -00118 created = topicset = limit = 0; -00119 topiclock = noexternal = inviteonly = moderated = secret = c_private = false; -00120 } -00121 -00122 void chanrec::SetCustomMode(char mode,bool mode_on) -00123 { -00124 if (mode_on) { -00125 char m[3]; -00126 m[0] = mode; -00127 m[1] = '\0'; -00128 if (!strchr(this->custom_modes,mode)) -00129 { -00130 strlcat(custom_modes,m,MAXMODES); -00131 } -00132 log(DEBUG,"Custom mode %c set",mode); -00133 } -00134 else { -00135 -00136 std::string a = this->custom_modes; -00137 int pos = a.find(mode); -00138 a.erase(pos,1); -00139 strncpy(this->custom_modes,a.c_str(),MAXMODES); -00140 -00141 log(DEBUG,"Custom mode %c removed: modelist='%s'",mode,this->custom_modes); -00142 this->SetCustomModeParam(mode,"",false); -00143 } -00144 } -00145 -00146 -00147 void chanrec::SetCustomModeParam(char mode,char* parameter,bool mode_on) -00148 { -00149 -00150 log(DEBUG,"SetCustomModeParam called"); -00151 ModeParameter M; -00152 M.mode = mode; -00153 strlcpy(M.channel,this->name,CHANMAX); -00154 strlcpy(M.parameter,parameter,MAXBUF); -00155 if (mode_on) -00156 { -00157 log(DEBUG,"Custom mode parameter %c %s added",mode,parameter); -00158 custom_mode_params.push_back(M); -00159 } -00160 else -00161 { -00162 if (custom_mode_params.size()) -00163 { -00164 for (vector<ModeParameter>::iterator i = custom_mode_params.begin(); i < custom_mode_params.end(); i++) -00165 { -00166 if ((i->mode == mode) && (!strcasecmp(this->name,i->channel))) -00167 { -00168 log(DEBUG,"Custom mode parameter %c %s removed",mode,parameter); -00169 custom_mode_params.erase(i); -00170 return; -00171 } -00172 } -00173 } -00174 log(DEBUG,"*** BUG *** Attempt to remove non-existent mode parameter!"); -00175 } -00176 } -00177 -00178 bool chanrec::IsCustomModeSet(char mode) -00179 { -00180 log(DEBUG,"Checking ISCustomModeSet: %c %s",mode,this->custom_modes); -00181 return (strchr(this->custom_modes,mode) != 0); -00182 } -00183 -00184 std::string chanrec::GetModeParameter(char mode) -00185 { -00186 if (custom_mode_params.size()) -00187 { -00188 for (vector<ModeParameter>::iterator i = custom_mode_params.begin(); i < custom_mode_params.end(); i++) -00189 { -00190 if ((i->mode == mode) && (!strcasecmp(this->name,i->channel))) -00191 { -00192 return std::string(i->parameter); -00193 } -00194 } -00195 } -00196 return std::string(""); -00197 } -
Generated on Fri Mar 25 03:49:27 2005 for InspIRCd by +00111 std::vector<ModeParameter> custom_mode_params; +00112 +00113 chanrec::chanrec() +00114 { +00115 strcpy(name,""); +00116 strcpy(custom_modes,""); +00117 strcpy(topic,""); +00118 strcpy(setby,""); +00119 strcpy(key,""); +00120 created = topicset = limit = 0; +00121 topiclock = noexternal = inviteonly = moderated = secret = c_private = false; +00122 } +00123 +00124 void chanrec::SetCustomMode(char mode,bool mode_on) +00125 { +00126 if (mode_on) { +00127 char m[3]; +00128 m[0] = mode; +00129 m[1] = '\0'; +00130 if (!strchr(this->custom_modes,mode)) +00131 { +00132 strlcat(custom_modes,m,MAXMODES); +00133 } +00134 log(DEBUG,"Custom mode %c set",mode); +00135 } +00136 else { +00137 +00138 std::string a = this->custom_modes; +00139 int pos = a.find(mode); +00140 a.erase(pos,1); +00141 strncpy(this->custom_modes,a.c_str(),MAXMODES); +00142 +00143 log(DEBUG,"Custom mode %c removed: modelist='%s'",mode,this->custom_modes); +00144 this->SetCustomModeParam(mode,"",false); +00145 } +00146 } +00147 +00148 +00149 void chanrec::SetCustomModeParam(char mode,char* parameter,bool mode_on) +00150 { +00151 +00152 log(DEBUG,"SetCustomModeParam called"); +00153 ModeParameter M; +00154 M.mode = mode; +00155 strlcpy(M.channel,this->name,CHANMAX); +00156 strlcpy(M.parameter,parameter,MAXBUF); +00157 if (mode_on) +00158 { +00159 log(DEBUG,"Custom mode parameter %c %s added",mode,parameter); +00160 custom_mode_params.push_back(M); +00161 } +00162 else +00163 { +00164 if (custom_mode_params.size()) +00165 { +00166 for (vector<ModeParameter>::iterator i = custom_mode_params.begin(); i < custom_mode_params.end(); i++) +00167 { +00168 if ((i->mode == mode) && (!strcasecmp(this->name,i->channel))) +00169 { +00170 log(DEBUG,"Custom mode parameter %c %s removed",mode,parameter); +00171 custom_mode_params.erase(i); +00172 return; +00173 } +00174 } +00175 } +00176 log(DEBUG,"*** BUG *** Attempt to remove non-existent mode parameter!"); +00177 } +00178 } +00179 +00180 bool chanrec::IsCustomModeSet(char mode) +00181 { +00182 log(DEBUG,"Checking ISCustomModeSet: %c %s",mode,this->custom_modes); +00183 return (strchr(this->custom_modes,mode) != 0); +00184 } +00185 +00186 std::string chanrec::GetModeParameter(char mode) +00187 { +00188 if (custom_mode_params.size()) +00189 { +00190 for (vector<ModeParameter>::iterator i = custom_mode_params.begin(); i < custom_mode_params.end(); i++) +00191 { +00192 if ((i->mode == mode) && (!strcasecmp(this->name,i->channel))) +00193 { +00194 return std::string(i->parameter); +00195 } +00196 } +00197 } +00198 return std::string(""); +00199 } +
Generated on Wed Apr 13 13:06:51 2005 for InspIRCd by doxygen 1.3.3