]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/userprocess.cpp
Crash fixes from nenolod
[user/henk/code/inspircd.git] / src / userprocess.cpp
index 39d3ad0ecc30147ed7574597033c0db330eeb9ef..62cd452cd182aee2e67e743897d3a8b7f7b115bc 100644 (file)
@@ -2,7 +2,7 @@
  *       | Inspire Internet Relay Chat Daemon |
  *       +------------------------------------+
  *
- *  InspIRCd: (C) 2002-2007 InspIRCd Development Team
+ *  InspIRCd: (C) 2002-2008 InspIRCd Development Team
  * See: http://www.inspircd.org/wiki/index.php/Credits
  *
  * This program is free but copyrighted software; see
@@ -21,7 +21,7 @@
 
 void FloodQuitUserHandler::Call(User* current)
 {
-       Server->Log(DEFAULT,"Excess flood from: %s@%s", current->ident, current->host);
+       Server->Logs->Log("USERS",DEFAULT,"Excess flood from: %s@%s", current->ident, current->host);
        Server->SNO->WriteToSnoMask('f',"Excess flood from: %s%s%s@%s",
                        current->registered == REG_ALL ? current->nick : "",
                        current->registered == REG_ALL ? "!" : "", current->ident, current->host);
@@ -30,7 +30,7 @@ void FloodQuitUserHandler::Call(User* current)
        if (current->registered != REG_ALL)
        {
                ZLine* zl = new ZLine(Server, Server->Time(), 0, Server->Config->ServerName, "Flood from unregistered connection", current->GetIPString());
-               if (Server->XLines->AddLine(zl))
+               if (Server->XLines->AddLine(zl,NULL))
                        Server->XLines->ApplyLines();
                else
                        delete zl;
@@ -57,7 +57,7 @@ void ProcessUserHandler::Call(User* cu)
                }
                catch (CoreException& modexcept)
                {
-                       Server->Log(DEBUG, "%s threw an exception: %s", modexcept.GetSource(), modexcept.GetReason());
+                       Server->Logs->Log("USERS",DEBUG, "%s threw an exception: %s", modexcept.GetSource(), modexcept.GetReason());
                }
 
                if (MOD_RESULT < 0)
@@ -167,7 +167,7 @@ void InspIRCd::DoBackgroundUserStuff()
        /*
         * loop over all local users..
         */
-       for (std::vector<User*>::iterator count2 = local_users.begin(); count2 != local_users.end(); count2++)
+       for (std::vector<User*>::iterator count2 = this->Users->local_users.begin(); count2 != this->Users->local_users.end(); count2++)
        {
                User *curr = *count2;
 
@@ -190,7 +190,6 @@ void InspIRCd::DoBackgroundUserStuff()
                         * registration timeout -- didnt send USER/NICK/HOST
                         * in the time specified in their connection class.
                         */
-                       curr->muted = true;
                        User::QuitUser(this, curr, "Registration timeout");
                        continue;
                }
@@ -217,10 +216,9 @@ void InspIRCd::DoBackgroundUserStuff()
                        // This user didn't answer the last ping, remove them
                        if (!curr->lastping)
                        {
-                               time_t time = this->Time(false) - (curr->nping - curr->MyClass->GetPingTime());
+                               time_t time = this->Time() - (curr->nping - curr->MyClass->GetPingTime());
                                char message[MAXBUF];
                                snprintf(message, MAXBUF, "Ping timeout: %ld second%s", (long)time, time > 1 ? "s" : "");
-                               curr->muted = true;
                                curr->lastping = 1;
                                curr->nping = TIME + curr->MyClass->GetPingTime();
                                User::QuitUser(this, curr, message);