]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/inspircd.cpp
Add template creation tool for caller classes
[user/henk/code/inspircd.git] / src / inspircd.cpp
index d039d73142c50716623ec7ef5efd47a466e16bec..09f1e868505215d39988f5b12c12dae4a6a18e79 100644 (file)
@@ -39,6 +39,7 @@
 #include "typedefs.h"
 #include "command_parse.h"
 #include "exitcodes.h"
+#include "caller.h"
 
 #ifdef WIN32
 
@@ -263,27 +264,12 @@ void InspIRCd::Restart(const std::string &reason)
        }
 }
 
-void InspIRCd::Rehash(int status)
-{
-       SI->WriteOpers("*** Rehashing config file %s due to SIGHUP",ServerConfig::CleanFilename(SI->ConfigFileName));
-       SI->CloseLog();
-       SI->OpenLog(SI->Config->argv, SI->Config->argc);
-       SI->RehashUsersAndChans();
-       FOREACH_MOD_I(SI, I_OnGarbageCollect, OnGarbageCollect());
-       SI->Config->Read(false,NULL);
-       SI->ResetMaxBans();
-       SI->Res->Rehash();
-       FOREACH_MOD_I(SI,I_OnRehash,OnRehash(NULL,""));
-       SI->BuildISupport();
-}
-
 void InspIRCd::ResetMaxBans()
 {
        for (chan_hash::const_iterator i = chanlist->begin(); i != chanlist->end(); i++)
                i->second->ResetMaxBans();
 }
 
-
 /** Because hash_map doesnt free its buckets when we delete items (this is a 'feature')
  * we must occasionally rehash the hash (yes really).
  * We do this by copying the entries from the old hash to a new hash, causing all
@@ -406,7 +392,9 @@ void InspIRCd::WritePID(const std::string &filename)
 }
 
 InspIRCd::InspIRCd(int argc, char** argv)
-       : ModCount(-1), GlobalCulls(this)
+       : ModCount(0),
+         GlobalCulls(this),
+        HandleIsNick(this), IsNick(&HandleIsNick)
 {
        int found_ports = 0;
        FailedPortList pl;