From 52899de0ff2d62ca0542b243c41626010bf62083 Mon Sep 17 00:00:00 2001 From: brain Date: Fri, 25 Mar 2005 03:51:56 +0000 Subject: Documentation update git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@899 e03df62e-2008-0410-955e-edbf42e46eb7 --- docs/module-doc/channels_8cpp-source.html | 393 +++++++++++++++--------------- 1 file changed, 202 insertions(+), 191 deletions(-) (limited to 'docs/module-doc/channels_8cpp-source.html') diff --git a/docs/module-doc/channels_8cpp-source.html b/docs/module-doc/channels_8cpp-source.html index 51d99f553..2e474e22d 100644 --- a/docs/module-doc/channels_8cpp-source.html +++ b/docs/module-doc/channels_8cpp-source.html @@ -1,199 +1,210 @@ -channels.cpp Source File +InspIRCd: channels.cpp Source File - -
-Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  
-

channels.cpp

Go to the documentation of this file.
00001 #include "inspircd.h"
-00002 #include "inspircd_io.h"
-00003 #include "inspircd_util.h"
-00004 #include "inspircd_config.h"
-00005 #include <unistd.h>
-00006 #include <fcntl.h>
-00007 #include <sys/errno.h>
-00008 #include <sys/ioctl.h>
-00009 #include <sys/utsname.h>
-00010 #include <cstdio>
-00011 #include <time.h>
-00012 #include <string>
-00013 #ifdef GCC3
-00014 #include <ext/hash_map>
-00015 #else
-00016 #include <hash_map>
-00017 #endif
-00018 #include <map>
-00019 #include <sstream>
-00020 #include <vector>
-00021 #include <errno.h>
-00022 #include <deque>
-00023 #include <errno.h>
-00024 #include <unistd.h>
-00025 #include <sched.h>
-00026 #include "connection.h"
-00027 #include "users.h"
-00028 #include "servers.h"
-00029 #include "ctables.h"
-00030 #include "globals.h"
-00031 #include "modules.h"
-00032 #include "dynamic.h"
-00033 #include "wildcard.h"
-00034 #include "message.h"
-00035 #include "mode.h"
-00036 #include "xline.h"
-00037 
-00038 #ifdef GCC3
-00039 #define nspace __gnu_cxx
-00040 #else
-00041 #define nspace std
-00042 #endif
-00043 
-00044 using namespace std;
-00045 
-00046 extern int MODCOUNT;
-00047 extern vector<Module*> modules;
-00048 extern vector<ircd_module*> factory;
-00049 
-00050 extern int LogLevel;
-00051 extern char ServerName[MAXBUF];
-00052 extern char Network[MAXBUF];
-00053 extern char ServerDesc[MAXBUF];
-00054 extern char AdminName[MAXBUF];
-00055 extern char AdminEmail[MAXBUF];
-00056 extern char AdminNick[MAXBUF];
-00057 extern char diepass[MAXBUF];
-00058 extern char restartpass[MAXBUF];
-00059 extern char motd[MAXBUF];
-00060 extern char rules[MAXBUF];
-00061 extern char list[MAXBUF];
-00062 extern char PrefixQuit[MAXBUF];
-00063 extern char DieValue[MAXBUF];
-00064 
-00065 extern int debugging;
-00066 extern int WHOWAS_STALE;
-00067 extern int WHOWAS_MAX;
-00068 extern int DieDelay;
-00069 extern time_t startup_time;
-00070 extern int NetBufferSize;
-00071 int MaxWhoResults;
-00072 extern time_t nb_start;
-00073 
-00074 extern std::vector<int> fd_reap;
-00075 extern std::vector<std::string> module_names;
-00076 
-00077 extern char bannerBuffer[MAXBUF];
-00078 extern int boundPortCount;
-00079 extern int portCount;
-00080 extern int UDPportCount;
-00081 extern int ports[MAXSOCKS];
-00082 extern int defaultRoute;
-00083 
-00084 extern std::vector<long> auth_cookies;
-00085 extern std::stringstream config_f;
-00086 
-00087 extern serverrec* me[32];
-00088 
-00089 extern FILE *log_file;
-00090 
-00091 
-00092 using namespace std;
-00093 
-00094 std::vector<ModeParameter> custom_mode_params;
-00095 
-00096 chanrec::chanrec()
-00097 {
-00098         strcpy(name,"");
-00099         strcpy(custom_modes,"");
-00100         strcpy(topic,"");
-00101         strcpy(setby,"");
-00102         strcpy(key,"");
-00103         created = topicset = limit = 0;
-00104         topiclock = noexternal = inviteonly = moderated = secret = c_private = false;
-00105 }
+
+
+

channels.cpp

Go to the documentation of this file.
00001 /*       +------------------------------------+
+00002  *       | Inspire Internet Relay Chat Daemon |
+00003  *       +------------------------------------+
+00004  *
+00005  *  Inspire is copyright (C) 2002-2004 ChatSpike-Dev.
+00006  *                       E-mail:
+00007  *                <brain@chatspike.net>
+00008  *                <Craig@chatspike.net>
+00009  *     
+00010  * Written by Craig Edwards, Craig McLure, and others.
+00011  * This program is free but copyrighted software; see
+00012  *            the file COPYING for details.
+00013  *
+00014  * ---------------------------------------------------
+00015  */
+00016 
+00017 #include "inspircd.h"
+00018 #include "inspircd_io.h"
+00019 #include "inspircd_util.h"
+00020 #include "inspircd_config.h"
+00021 #include <unistd.h>
+00022 #include <fcntl.h>
+00023 #include <sys/errno.h>
+00024 #include <sys/ioctl.h>
+00025 #include <sys/utsname.h>
+00026 #include <cstdio>
+00027 #include <time.h>
+00028 #include <string>
+00029 #ifdef GCC3
+00030 #include <ext/hash_map>
+00031 #else
+00032 #include <hash_map>
+00033 #endif
+00034 #include <map>
+00035 #include <sstream>
+00036 #include <vector>
+00037 #include <errno.h>
+00038 #include <deque>
+00039 #include <errno.h>
+00040 #include <unistd.h>
+00041 #include <sched.h>
+00042 #include "connection.h"
+00043 #include "users.h"
+00044 #include "servers.h"
+00045 #include "ctables.h"
+00046 #include "globals.h"
+00047 #include "modules.h"
+00048 #include "dynamic.h"
+00049 #include "wildcard.h"
+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 
 00106 
-00107 void chanrec::SetCustomMode(char mode,bool mode_on)
-00108 {
-00109         if (mode_on) {
-00110                 char m[3];
-00111                 m[0] = mode;
-00112                 m[1] = '\0';
-00113                 if (!strchr(this->custom_modes,mode))
-00114                 {
-00115                         strncat(custom_modes,m,MAXMODES);
-00116                 }
-00117                 log(DEBUG,"Custom mode %c set",mode);
-00118         }
-00119         else {
-00120                 char temp[MAXBUF];
-00121                 int count = 0;
-00122                 for (int q = 0; q < strlen(custom_modes); q++) {
-00123                         if (custom_modes[q] != mode) {
-00124                                 temp[count++] = mode;
-00125                         }
-00126                 }
-00127                 temp[count] = '\0';
-00128                 strncpy(custom_modes,temp,MAXMODES);
-00129                 log(DEBUG,"Custom mode %c removed",mode);
-00130                 this->SetCustomModeParam(mode,"",false);
-00131         }
-00132 }
-00133 
-00134 
-00135 void chanrec::SetCustomModeParam(char mode,char* parameter,bool mode_on)
-00136 {
-00137 
-00138         log(DEBUG,"SetCustomModeParam called");
-00139         ModeParameter M;
-00140         M.mode = mode;
-00141         strcpy(M.channel,this->name);
-00142         strcpy(M.parameter,parameter);
-00143         if (mode_on)
-00144         {
-00145                 log(DEBUG,"Custom mode parameter %c %s added",mode,parameter);
-00146                 custom_mode_params.push_back(M);
-00147         }
-00148         else
-00149         {
-00150                 if (custom_mode_params.size())
-00151                 {
-00152                         for (vector<ModeParameter>::iterator i = custom_mode_params.begin(); i < custom_mode_params.end(); i++)
-00153                         {
-00154                                 if ((i->mode == mode) && (!strcasecmp(this->name,i->channel)))
-00155                                 {
-00156                                         log(DEBUG,"Custom mode parameter %c %s removed",mode,parameter);
-00157                                         custom_mode_params.erase(i);
-00158                                         return;
-00159                                 }
-00160                         }
-00161                 }
-00162                 log(DEBUG,"*** BUG *** Attempt to remove non-existent mode parameter!");
-00163         }
-00164 }
-00165 
-00166 bool chanrec::IsCustomModeSet(char mode)
-00167 {
-00168         log(DEBUG,"Checking ISCustomModeSet: %c %s",mode,this->custom_modes);
-00169         return (strchr(this->custom_modes,mode) != 0);
-00170 }
-00171 
-00172 std::string chanrec::GetModeParameter(char mode)
-00173 {
-00174         if (custom_mode_params.size())
-00175         {
-00176                 for (vector<ModeParameter>::iterator i = custom_mode_params.begin(); i < custom_mode_params.end(); i++)
-00177                 {
-00178                         if ((i->mode == mode) && (!strcasecmp(this->name,i->channel)))
-00179                         {
-00180                                 return std::string(i->parameter);
-00181                         }
-00182                 }
-00183         }
-00184         return std::string("");
-00185 }
-

Generated on Sun May 2 00:09:18 2004 for InspIRCd by +00107 using namespace std; +00108 +00109 std::vector<ModeParameter> custom_mode_params; +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 -doxygen1.3-rc3
+doxygen +1.3.3 -- cgit v1.3.1-10-gc9f91