]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/cmd_whowas.cpp
Extra Dry! Shame it's not in Hereford right now :p
[user/henk/code/inspircd.git] / src / cmd_whowas.cpp
index 4886c9800e8127e6133b4c555b9d0b5b6ca40ff9..2d504c47c8f80af9a2fb67122d75ca9c419f14f1 100644 (file)
  * ---------------------------------------------------
  */
 
+#include "inspircd.h"
 #include "configreader.h"
 #include "users.h"
 #include "commands/cmd_whowas.h"
 
-extern "C" command_t* init_command(InspIRCd* Instance)
+WhoWasMaintainTimer * timer;
+
+extern "C" DllExport command_t* init_command(InspIRCd* Instance)
 {
        return new cmd_whowas(Instance);
 }
@@ -24,7 +27,7 @@ cmd_whowas::cmd_whowas(InspIRCd* Instance)
 : command_t(Instance, "WHOWAS", 0, 1)
 {
        syntax = "<nick>{,<nick>}";
-       timer = new MaintainTimer(Instance, 3600);
+       timer = new WhoWasMaintainTimer(Instance, 3600);
        Instance->Timers->AddTimer(timer);
 }
 
@@ -36,7 +39,7 @@ CmdResult cmd_whowas::Handle (const char** parameters, int pcnt, userrec* user)
                user->WriteServ("421 %s %s :This command has been disabled.",user->nick,command.c_str());
                return CMD_FAILURE;
        }
-                        
+
        whowas_users::iterator i = whowas.find(parameters[0]);
 
        if (i == whowas.end())
@@ -126,7 +129,8 @@ void cmd_whowas::GetStats(Extensible* ext)
                        whowas_bytes += (sizeof(whowas_set) + ( sizeof(WhoWasGroup) * n->size() ) );
                }
        }
-       ext->Extend("stats", std::string("Whowas(MAPSETS) " +ConvToStr(whowas_size)+" ("+ConvToStr(whowas_bytes)+" bytes)").c_str());
+       stats.assign("Whowas(MAPSETS) " +ConvToStr(whowas_size)+" ("+ConvToStr(whowas_bytes)+" bytes)");
+       ext->Extend("stats", stats.c_str());
 }
 
 void cmd_whowas::AddToWhoWas(userrec* user)
@@ -203,7 +207,7 @@ void cmd_whowas::PruneWhoWas(time_t t)
                        if (iter == whowas.end())
                        {
                                /* this should never happen, if it does maps are corrupt */
-                               ServerInstance->Log(DEBUG, "BUG: Whowas maps got corrupted! (1)");
+                               ServerInstance->Log(DEFAULT, "BUG: Whowas maps got corrupted! (1)");
                                return;
                        }
                        whowas_set* n = (whowas_set*)iter->second;
@@ -233,7 +237,7 @@ void cmd_whowas::PruneWhoWas(time_t t)
                if (iter == whowas.end())
                {
                        /* this should never happen, if it does maps are corrupt */
-                       ServerInstance->Log(DEBUG, "BUG: Whowas maps got corrupted! (2)");
+                       ServerInstance->Log(DEFAULT, "BUG: Whowas maps got corrupted! (2)");
                        return;
                }
                whowas_set* n = (whowas_set*)iter->second;
@@ -285,7 +289,7 @@ cmd_whowas::~cmd_whowas()
                if (iter == whowas.end())
                {
                        /* this should never happen, if it does maps are corrupt */
-                       ServerInstance->Log(DEBUG, "BUG: Whowas maps got corrupted! (3)");
+                       ServerInstance->Log(DEFAULT, "BUG: Whowas maps got corrupted! (3)");
                        return;
                }
                whowas_set* n = (whowas_set*)iter->second;
@@ -326,7 +330,7 @@ WhoWasGroup::~WhoWasGroup()
 }
 
 /* every hour, run this function which removes all entries older than Config->WhoWasMaxKeep */
-void MaintainTimer::Tick(time_t t)
+void WhoWasMaintainTimer::Tick(time_t t)
 {
        command_t* whowas_command = ServerInstance->Parser->GetHandler("WHOWAS");
        if (whowas_command)