]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/usermanager.cpp
Merge branch 'insp20' into insp3.
[user/henk/code/inspircd.git] / src / usermanager.cpp
index 4ab13fc95b677f3fc592e8bd7eca85573e7876f8..fafeffb42bce7e55355ea2d59f1b7d0914c43561 100644 (file)
@@ -52,13 +52,13 @@ namespace
        void CheckPingTimeout(LocalUser* user)
        {
                // Check if it is time to ping the user yet.
-               if (ServerInstance->Time() < user->nping)
+               if (ServerInstance->Time() < user->nextping)
                        return;
 
                // This user didn't answer the last ping, remove them.
                if (!user->lastping)
                {
-                       time_t secs = ServerInstance->Time() - (user->nping - user->MyClass->GetPingTime());
+                       time_t secs = ServerInstance->Time() - (user->nextping - user->MyClass->GetPingTime());
                        const std::string message = "Ping timeout: " + ConvToStr(secs) + (secs != 1 ? " seconds" : " second");
                        ServerInstance->Users.QuitUser(user, message);
                        return;
@@ -68,7 +68,7 @@ namespace
                ClientProtocol::Messages::Ping ping;
                user->Send(ServerInstance->GetRFCEvents().ping, ping);
                user->lastping = 0;
-               user->nping = ServerInstance->Time() + user->MyClass->GetPingTime();
+               user->nextping = ServerInstance->Time() + user->MyClass->GetPingTime();
        }
 
        void CheckRegistrationTimeout(LocalUser* user)
@@ -210,8 +210,8 @@ void UserManager::AddUser(int socket, ListenSocket* via, irc::sockets::sockaddrs
                New->WriteNotice("*** Raw I/O logging is enabled on this server. All messages, passwords, and commands are being recorded.");
 
        FOREACH_MOD(OnSetUserIP, (New));
-       if (New->quitting)
-               return;
+       if (!New->quitting)
+               FOREACH_MOD(OnUserPostInit, (New));
 }
 
 void UserManager::QuitUser(User* user, const std::string& quitreason, const std::string* operreason)