]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/extra/m_sqloper.cpp
[Taros] Add m_sakick.so
[user/henk/code/inspircd.git] / src / modules / extra / m_sqloper.cpp
index 7fe3d8aaa8c678fb54d2d4b8eb39c5dffe3e462e..b16ebd12b88275415aca2cc8dd1fa120ee102b61 100644 (file)
@@ -2,7 +2,7 @@
  *       | Inspire Internet Relay Chat Daemon |
  *       +------------------------------------+
  *
- *  InspIRCd: (C) 2002-2008 InspIRCd Development Team
+ *  InspIRCd: (C) 2002-2009 InspIRCd Development Team
  * See: http://www.inspircd.org/wiki/index.php/Credits
  *
  * This program is free but copyrighted software; see
  */
 
 #include "inspircd.h"
-#include "users.h"
-#include "channels.h"
-#include "modules.h"
-#include "configreader.h"
-
 #include "m_sqlv2.h"
 #include "m_sqlutils.h"
 #include "m_hash.h"
@@ -38,7 +33,7 @@ class ModuleSQLOper : public Module
 
 public:
        ModuleSQLOper(InspIRCd* Me)
-       : Module::Module(Me)
+       : Module(Me)
        {
                ServerInstance->Modules->UseInterface("SQLutils");
                ServerInstance->Modules->UseInterface("SQL");
@@ -78,6 +73,20 @@ public:
                ServerInstance->Modules->Attach(eventlist, this, 3);
        }
 
+       bool OneOfMatches(const char* host, const char* ip, const char* hostlist)
+       {
+               std::stringstream hl(hostlist);
+               std::string xhost;
+               while (hl >> xhost)
+               {
+                       if (InspIRCd::Match(host, xhost, ascii_case_insensitive_map) || InspIRCd::MatchCIDR(ip, xhost, ascii_case_insensitive_map))
+                       {
+                               return true;
+                       }
+               }
+               return false;
+       }
+
        virtual void OnLoadModule(Module* mod, const std::string& name)
        {
                if (ServerInstance->Modules->ModuleHasInterface(mod, "HashRequest"))