00001
00002
00003
00004
00005
00006
00007
00008 #include <typeinfo>
00009 #include <iostream.h>
00010 #include "globals.h"
00011 #include "modules.h"
00012 #include "inspircd_io.h"
00013
00014
00015
00016 Version::Version(int major, int minor, int revision, int build) : Major(major), Minor(minor), Revision(revision), Build(build) { };
00017
00018
00019
00020 Admin::Admin(string name, string email, string nick) : Name(name), Email(email), Nick(nick) { };
00021
00022
00023
00024
00025
00026
00027 Module::Module() { }
00028 Module::~Module() { }
00029 void Module::OnUserConnect(userrec* user) { }
00030 void Module::OnUserQuit(userrec* user) { }
00031 void Module::OnUserJoin(userrec* user, chanrec* channel) { }
00032 void Module::OnUserPart(userrec* user, chanrec* channel) { }
00033 void Module::OnPacketTransmit(char *p) { }
00034 void Module::OnPacketReceive(char *p) { }
00035 void Module::OnRehash() { }
00036 Version Module::GetVersion() { return Version(1,0,0,0); }
00037
00038
00039
00040
00041
00042 Server::Server()
00043 {
00044 }
00045
00046 Server::~Server()
00047 {
00048 }
00049
00050 void Server::SendOpers(string s)
00051 {
00052 WriteOpers("%s",s.c_str());
00053 }
00054
00055 void Server::Log(int level, string s)
00056 {
00057 log(level,"%s",s.c_str());
00058 }
00059
00060 void Server::Send(int Socket, string s)
00061 {
00062 Write(Socket,"%s",s.c_str());
00063 }
00064
00065 void Server::SendServ(int Socket, string s)
00066 {
00067 WriteServ(Socket,"%s",s.c_str());
00068 }
00069
00070 void Server::SendFrom(int Socket, userrec* User, string s)
00071 {
00072 WriteFrom(Socket,User,"%s",s.c_str());
00073 }
00074
00075 void Server::SendTo(userrec* Source, userrec* Dest, string s)
00076 {
00077 WriteTo(Source,Dest,"%s",s.c_str());
00078 }
00079
00080 void Server::SendChannel(userrec* User, chanrec* Channel, string s,bool IncludeSender)
00081 {
00082 if (IncludeSender)
00083 {
00084 WriteChannel(Channel,User,"%s",s.c_str());
00085 }
00086 else
00087 {
00088 ChanExceptSender(Channel,User,"%s",s.c_str());
00089 }
00090 }
00091
00092 bool Server::CommonChannels(userrec* u1, userrec* u2)
00093 {
00094 return (common_channels(u1,u2) != 0);
00095 }
00096
00097 void Server::SendCommon(userrec* User, string text,bool IncludeSender)
00098 {
00099 if (IncludeSender)
00100 {
00101 WriteCommon(User,"%s",text.c_str());
00102 }
00103 else
00104 {
00105 WriteCommonExcept(User,"%s",text.c_str());
00106 }
00107 }
00108
00109 void Server::SendWallops(userrec* User, string text)
00110 {
00111 WriteWallOps(User,"%s",text.c_str());
00112 }
00113
00114 bool Server::IsNick(string nick)
00115 {
00116 return (isnick(nick.c_str()) != 0);
00117 }
00118
00119 userrec* Server::FindNick(string nick)
00120 {
00121 return Find(nick);
00122 }
00123
00124 chanrec* Server::FindChannel(string channel)
00125 {
00126 return FindChan(channel.c_str());
00127 }
00128
00129 string Server::ChanMode(userrec* User, chanrec* Chan)
00130 {
00131 string mode = cmode(User,Chan);
00132 return mode;
00133 }
00134
00135 string Server::GetServerName()
00136 {
00137 return getservername();
00138 }
00139
00140 string Server::GetNetworkName()
00141 {
00142 return getnetworkname();
00143 }
00144
00145 Admin Server::GetAdmin()
00146 {
00147 return Admin(getadminname(),getadminemail(),getadminnick());
00148 }
00149
00150
00151 ConfigReader::ConfigReader()
00152 {
00153 fname = CONFIG_FILE;
00154 }
00155
00156
00157 ConfigReader::~ConfigReader()
00158 {
00159 }
00160
00161
00162 ConfigReader::ConfigReader(string filename) : fname(filename) { };
00163
00164 string ConfigReader::ReadValue(string tag, string name, int index)
00165 {
00166 char val[MAXBUF];
00167 ReadConf(fname.c_str(),tag.c_str(),name.c_str(),index,val);
00168 string s = val;
00169 return s;
00170 }
00171
00172
00173 int ConfigReader::Enumerate(string tag)
00174 {
00175 return EnumConf(fname.c_str(),tag.c_str());
00176 }
00177
00178
00179 bool ConfigReader::Verify()
00180 {
00181 return true;
00182 }
00183
00184
00185 FileReader::FileReader(string filename)
00186 {
00187 file_cache c;
00188 readfile(c,filename.c_str());
00189 this->fc = c;
00190 }
00191
00192 FileReader::FileReader()
00193 {
00194 }
00195
00196 void FileReader::LoadFile(string filename)
00197 {
00198 file_cache c;
00199 readfile(c,filename.c_str());
00200 this->fc = c;
00201 }
00202
00203 FileReader::~FileReader()
00204 {
00205 }
00206
00207 string FileReader::GetLine(int x)
00208 {
00209 if ((x<0) || (x>fc.size()))
00210 return "";
00211 return fc[x];
00212 }
00213
00214 int FileReader::FileSize()
00215 {
00216 return fc.size();
00217 }
00218
00219
00220 vector<Module*> modules(255);
00221 vector<ircd_module*> factory(255);
00222
00223 int MODCOUNT = -1;
00224
00225