]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/userprocess.cpp
An FJOIN is not bursting unless the source server is bursting
[user/henk/code/inspircd.git] / src / userprocess.cpp
index b179622aa95f7bd9b36e3753edcae674c38c8ead..88c12a57b6d346cda7676b738cad2e8b78ae1a81 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
@@ -102,36 +102,12 @@ void ProcessUserHandler::Call(User* cu)
                        if (!current->AddBuffer(ReadBuffer))
                        {
                                // AddBuffer returned false, theres too much data in the user's buffer and theyre up to no good.
-                               if (current->registered == REG_ALL)
-                               {
-                                       if (current->MyClass)
-                                       {
-                                               // Make sure they arn't flooding long lines.
-                                               if (Server->Time() > current->reset_due)
-                                               {
-                                                       current->reset_due = Server->Time() + current->MyClass->GetThreshold();
-                                                       current->lines_in = 0;
-                                               }
-
-                                               current->lines_in++;
-
-                                               if (current->MyClass->GetFlood() && current->lines_in > current->MyClass->GetFlood())
-                                                       Server->FloodQuitUser(current);
-                                               else
-                                               {
-                                                       current->WriteServ("NOTICE %s :Your previous line was too long and was not delivered (Over %d chars) Please shorten it.", current->nick.c_str(), MAXBUF-2);
-                                                       current->recvq.clear();
-                                               }
-                                       }
-                               }
-                               else
-                                       Server->FloodQuitUser(current);
-
+                               Server->FloodQuitUser(current);
                                return;
                        }
 
                        /* If user is over penalty, dont process here, just build up */
-                       if (!current->OverPenalty)
+                       if (current->Penalty < 10)
                                Server->Parser->DoLines(current);
 
                        return;
@@ -180,12 +156,6 @@ void InspIRCd::DoBackgroundUserStuff()
                                Parser->DoLines(curr, true);
                }
 
-               if (curr->OverPenalty)
-               {
-                       if (curr->sendq.empty())
-                               curr->OverPenalty = false;
-               }
-
                switch (curr->registered)
                {
                        case REG_ALL: