]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_connectban.cpp
Add a typedef for the data provider map.
[user/henk/code/inspircd.git] / src / modules / m_connectban.cpp
index dd9ae4f5450158180cdc98aca7467b1f9dcd3133..81b0fcfa79f3aff3d02eeff65781896ddbcf8d13 100644 (file)
@@ -1,6 +1,13 @@
 /*
  * InspIRCd -- Internet Relay Chat Daemon
  *
+ *   Copyright (C) 2019 Matt Schatz <genius3000@g3k.solutions>
+ *   Copyright (C) 2014 Googolplexed <googol@googolplexed.net>
+ *   Copyright (C) 2013, 2017-2020 Sadie Powell <sadie@witchery.services>
+ *   Copyright (C) 2012-2014 Attila Molnar <attilamolnar@hush.com>
+ *   Copyright (C) 2012, 2019 Robby <robby@chatbelgie.be>
+ *   Copyright (C) 2009-2010 Daniel De Graaf <danieldg@inspircd.org>
+ *   Copyright (C) 2008, 2010 Craig Edwards <brain@inspircd.org>
  *   Copyright (C) 2008 Robin Burchell <robin+git@viroteck.net>
  *
  * This file is part of InspIRCd.  InspIRCd is free software: you can
@@ -60,9 +67,15 @@ class ModuleConnectBan
        {
        }
 
+       void Prioritize() CXX11_OVERRIDE
+       {
+               Module* corexline = ServerInstance->Modules->Find("core_xline");
+               ServerInstance->Modules->SetPriority(this, I_OnSetUserIP, PRIORITY_AFTER, corexline);
+       }
+
        Version GetVersion() CXX11_OVERRIDE
        {
-               return Version("Throttles the connections of IP ranges who try to connect flood", VF_VENDOR);
+               return Version("Z-lines IP addresses which make excessive connections to the server.", VF_VENDOR);
        }
 
        void ReadConfig(ConfigStatus& status) CXX11_OVERRIDE
@@ -92,7 +105,7 @@ class ModuleConnectBan
 
        void OnSetUserIP(LocalUser* u) CXX11_OVERRIDE
        {
-               if (u->exempt)
+               if (u->exempt || u->quitting)
                        return;
 
                irc::sockets::cidr_mask mask(u->client_sa, GetRange(u));