]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/configreader.cpp
Move some stuff around so the last penalty line doesnt get held erroneously until...
[user/henk/code/inspircd.git] / src / configreader.cpp
index 0bb4587b363cfec1eea33316774c36c2e1b08c69..98092f57e9a1d434c515a6360c709ed8016b3b7c 100644 (file)
@@ -58,9 +58,9 @@ Module* ServerConfig::GetIOHook(int port)
        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);
 }
 
@@ -78,7 +78,7 @@ bool ServerConfig::AddIOHook(int port, Module* iomod)
        }
 }
 
-bool ServerConfig::AddIOHook(Module* iomod, InspSocket* is)
+bool ServerConfig::AddIOHook(Module* iomod, BufferedSocket* is)
 {
        if (!GetIOHook(is))
        {
@@ -88,7 +88,7 @@ bool ServerConfig::AddIOHook(Module* iomod, InspSocket* is)
        }
        else
        {
-               throw ModuleException("InspSocket derived class already hooked by another module");
+               throw ModuleException("BufferedSocket derived class already hooked by another module");
                return false;
        }
 }
@@ -104,9 +104,9 @@ bool ServerConfig::DelIOHook(int port)
        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);
@@ -1777,3 +1777,74 @@ bool ValueItem::GetBool()
 {
        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;
+}