X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmodules%2Fm_connflood.cpp;h=a226fa1893e976e53d2df7ff56432d48b4e520cd;hb=bcac49dca78631687975771c6d0a76b595171664;hp=d6a23344eaa24f7c85a0568a59a579ad12df837b;hpb=b37a253d962ed7af1ea7a328abf2a1af74f30759;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_connflood.cpp b/src/modules/m_connflood.cpp index d6a23344e..a226fa189 100644 --- a/src/modules/m_connflood.cpp +++ b/src/modules/m_connflood.cpp @@ -20,15 +20,12 @@ using namespace std; #include "users.h" #include "modules.h" -#include "helperfuncs.h" + #include "inspircd.h" /* $ModDesc: Connection throttle */ int conns = 0, throttled = 0; -extern time_t TIME; - -extern InspIRCd* ServerInstance; class ModuleConnFlood : public Module { @@ -38,7 +35,7 @@ private: std::string quitmsg; ConfigReader* conf; - Server *Srv; + public: ModuleConnFlood(InspIRCd* Me) : Module::Module(Me) @@ -53,7 +50,7 @@ public: virtual Version GetVersion() { - return Version(1,0,0,0,0); + return Version(1,1,0,0,VF_VENDOR,API_VERSION); } void Implements(char* List) @@ -64,7 +61,7 @@ public: void InitConf() { /* read configuration variables */ - conf = new ConfigReader; + conf = new ConfigReader(ServerInstance); /* throttle configuration */ seconds = conf->ReadInteger("connflood", "seconds", 0, true); maxconns = conf->ReadInteger("connflood", "maxconns", 0, true); @@ -74,12 +71,12 @@ public: /* seconds to wait when the server just booted */ boot_wait = conf->ReadInteger("connflood", "bootwait", 0, true); - first = TIME; + first = ServerInstance->Time(); } - virtual void OnUserRegister(userrec* user) + virtual int OnUserRegister(userrec* user) { - time_t next = TIME; + time_t next = ServerInstance->Time(); if (!first) first = next - boot_wait; @@ -96,10 +93,10 @@ public: /* expire throttle */ throttled = 0; ServerInstance->WriteOpers("*** Connection throttle deactivated"); - return; + return 0; } userrec::QuitUser(ServerInstance, user, quitmsg); - return; + return 1; } if (tdiff <= seconds) @@ -109,7 +106,7 @@ public: throttled = 1; ServerInstance->WriteOpers("*** Connection throttle activated"); userrec::QuitUser(ServerInstance, user, quitmsg); - return; + return 1; } } else @@ -117,6 +114,7 @@ public: conns = 1; first = next; } + return 0; } virtual void OnRehash(const std::string ¶meter)