]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/commands.cpp
Extra debug all over the place, which maybe we should keep
[user/henk/code/inspircd.git] / src / commands.cpp
index e5d58bfbaac580644cecd7f3299b50c6a8b4e679..2e4ae0d8f29bfc800046e1c112ac28090e0aec34 100644 (file)
  * ---------------------------------------------------
  */
 
-using namespace std;
-
 #include "inspircd_config.h"
 #include "inspircd.h"
-#include "inspircd_io.h"
+#include "configreader.h"
 #include <unistd.h>
 #include <sys/errno.h>
 #include <sys/ioctl.h>
@@ -26,21 +24,11 @@ using namespace std;
 #include <cstdio>
 #include <time.h>
 #include <string>
-#ifdef GCC3
-#include <ext/hash_map>
-#else
-#include <hash_map>
-#endif
-#include <map>
 #include <sstream>
 #include <vector>
-#include <deque>
 #include <sys/types.h>
 #include <sys/time.h>
 #include <sys/resource.h>
-#ifdef THREADED_DNS
-#include <pthread.h>
-#endif
 #ifndef RUSAGE_SELF
 #define   RUSAGE_SELF     0
 #define   RUSAGE_CHILDREN     -1
@@ -56,7 +44,6 @@ using namespace std;
 #include "mode.h"
 #include "xline.h"
 #include "inspstring.h"
-#include "dnsqueue.h"
 #include "helperfuncs.h"
 #include "hashcomp.h"
 #include "socketengine.h"
@@ -67,8 +54,8 @@ extern ServerConfig* Config;
 extern InspIRCd* ServerInstance;
 
 extern int MODCOUNT;
-extern std::vector<Module*> modules;
-extern std::vector<ircd_module*> factory;
+extern ModuleList modules;
+extern FactoryList factory;
 extern time_t TIME;
 
 const long duration_m = 60;
@@ -98,7 +85,7 @@ void split_chlist(userrec* user, userrec* dest, const std::string &cl)
        prefix << ":" << Config->ServerName << " 319 " << user->nick << " " << dest->nick << " :";
        line = prefix.str();
        
-       for (start = 0; pos = cl.find(' ', start); start = pos+1)
+       for (start = 0; (pos = cl.find(' ', start)) != std::string::npos; start = pos+1)
        {
                length = (pos == std::string::npos) ? cl.length() : pos;
                
@@ -136,7 +123,7 @@ bool is_uline(const char* server)
        return (find(Config->ulines.begin(),Config->ulines.end(),server) != Config->ulines.end());
 }
 
-int operstrcmp(char* data,char* input)
+int operstrcmp(const char* data,const char* input)
 {
        int MOD_RESULT = 0;
        FOREACH_RESULT(I_OnOperCompare,OnOperCompare(data,input))
@@ -252,7 +239,7 @@ bool ip_matches_everyone(const std::string &ip, userrec* user)
        
        for (user_hash::iterator u = clientlist.begin(); u != clientlist.end(); u++)
        {
-               if (match((char*)inet_ntoa(u->second->ip4),ip.c_str()))
+               if (match(u->second->GetIPString(),ip.c_str(),true))
                        matches++;
        }