return (x != IOHookModule.end() ? x->second : NULL);
}
-Module* ServerConfig::GetIOHook(InspSocket* is)
+Module* ServerConfig::GetIOHook(BufferedSocket* is)
{
- std::map<InspSocket*,Module*>::iterator x = SocketIOHookModule.find(is);
+ std::map<BufferedSocket*,Module*>::iterator x = SocketIOHookModule.find(is);
return (x != SocketIOHookModule.end() ? x->second : NULL);
}
}
}
-bool ServerConfig::AddIOHook(Module* iomod, InspSocket* is)
+bool ServerConfig::AddIOHook(Module* iomod, BufferedSocket* is)
{
if (!GetIOHook(is))
{
}
else
{
- throw ModuleException("InspSocket derived class already hooked by another module");
+ throw ModuleException("BufferedSocket derived class already hooked by another module");
return false;
}
}
return false;
}
-bool ServerConfig::DelIOHook(InspSocket* is)
+bool ServerConfig::DelIOHook(BufferedSocket* is)
{
- std::map<InspSocket*,Module*>::iterator x = SocketIOHookModule.find(is);
+ std::map<BufferedSocket*,Module*>::iterator x = SocketIOHookModule.find(is);
if (x != SocketIOHookModule.end())
{
SocketIOHookModule.erase(x);
}
}
-void ServerConfig::Send005(userrec* user)
+void ServerConfig::Send005(User* user)
{
for (std::vector<std::string>::iterator line = ServerInstance->Config->isupport.begin(); line != ServerInstance->Config->isupport.end(); line++)
user->WriteServ("005 %s %s", user->nick, line->c_str());
}
-bool ServerConfig::CheckOnce(char* tag, bool bail, userrec* user)
+bool ServerConfig::CheckOnce(char* tag, bool bail, User* user)
{
int count = ConfValueEnum(this->config_data, tag);
std::string thiscmd;
/* Enable everything first */
- for (command_table::iterator x = ServerInstance->Parser->cmdlist.begin(); x != ServerInstance->Parser->cmdlist.end(); x++)
+ for (Commandable::iterator x = ServerInstance->Parser->cmdlist.begin(); x != ServerInstance->Parser->cmdlist.end(); x++)
x->second->Disable(false);
/* Now disable all the ones which the user wants disabled */
while (dcmds >> thiscmd)
{
- command_table::iterator cm = ServerInstance->Parser->cmdlist.find(thiscmd);
+ Commandable::iterator cm = ServerInstance->Parser->cmdlist.find(thiscmd);
if (cm != ServerInstance->Parser->cmdlist.end())
{
cm->second->Disable(true);
conf->GetInstance()->Log(DEFAULT,"WARNING: <whowas:maxkeep> value less than 3600, setting to default 3600");
}
- command_t* whowas_command = conf->GetInstance()->Parser->GetHandler("WHOWAS");
+ Command* whowas_command = conf->GetInstance()->Parser->GetHandler("WHOWAS");
if (whowas_command)
{
std::deque<classbase*> params;
return true;
}
-void ServerConfig::ReportConfigError(const std::string &errormessage, bool bail, userrec* user)
+void ServerConfig::ReportConfigError(const std::string &errormessage, bool bail, User* user)
{
ServerInstance->Log(DEFAULT, "There were errors in your configuration file: %s", errormessage.c_str());
if (bail)
}
}
-void ServerConfig::Read(bool bail, userrec* user)
+void ServerConfig::Read(bool bail, User* user)
{
static char debug[MAXBUF]; /* Temporary buffer for debugging value */
static char maxkeep[MAXBUF]; /* Temporary buffer for WhoWasMaxKeep value */
{
return (GetInteger() || v == "yes" || v == "true");
}
+
+
+
+
+/*
+ * XXX should this be in a class? -- w00t
+ */
+bool InitTypes(ServerConfig* conf, const char* tag)
+{
+ if (conf->opertypes.size())
+ {
+ for (opertype_t::iterator n = conf->opertypes.begin(); n != conf->opertypes.end(); n++)
+ {
+ if (n->second)
+ delete[] n->second;
+ }
+ }
+
+ conf->opertypes.clear();
+ return true;
+}
+
+/*
+ * XXX should this be in a class? -- w00t
+ */
+bool InitClasses(ServerConfig* conf, const char* tag)
+{
+ if (conf->operclass.size())
+ {
+ for (operclass_t::iterator n = conf->operclass.begin(); n != conf->operclass.end(); n++)
+ {
+ if (n->second)
+ delete[] n->second;
+ }
+ }
+
+ conf->operclass.clear();
+ return true;
+}
+
+/*
+ * XXX should this be in a class? -- w00t
+ */
+bool DoType(ServerConfig* conf, const char* tag, char** entries, ValueList &values, int* types)
+{
+ const char* TypeName = values[0].GetString();
+ const char* Classes = values[1].GetString();
+
+ conf->opertypes[TypeName] = strnewdup(Classes);
+ return true;
+}
+
+/*
+ * XXX should this be in a class? -- w00t
+ */
+bool DoClass(ServerConfig* conf, const char* tag, char** entries, ValueList &values, int* types)
+{
+ const char* ClassName = values[0].GetString();
+ const char* CommandList = values[1].GetString();
+
+ conf->operclass[ClassName] = strnewdup(CommandList);
+ return true;
+}
+
+/*
+ * XXX should this be in a class? -- w00t
+ */
+bool DoneClassesAndTypes(ServerConfig* conf, const char* tag)
+{
+ return true;
+}