X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?p=ngircd-alex.git;a=blobdiff_plain;f=src%2Fngircd%2Fconn.c;h=5c175dfd26e1bec492c2cb545296d6c37c58a55e;hp=77c8cd8a04ae7c6dca8958663326b52a34053180;hb=896d45471aa4324d6c86cfc5613feab760151c70;hpb=35f1db5f28245579efbbb06eed6eaf1a3d6d84bc diff --git a/src/ngircd/conn.c b/src/ngircd/conn.c index 77c8cd8a..5c175dfd 100644 --- a/src/ngircd/conn.c +++ b/src/ngircd/conn.c @@ -1693,7 +1693,12 @@ Handle_Buffer(CONN_ID Idx) maxcmd *= 5; break; case CLIENT_SERVICE: - maxcmd = MAX_COMMANDS_SERVICE; break; + maxcmd = MAX_COMMANDS_SERVICE; + break; + case CLIENT_USER: + if (Client_HasMode(c, 'F')) + maxcmd = MAX_COMMANDS_SERVICE; + break; } for (i=0; i < maxcmd; i++) { @@ -2427,6 +2432,10 @@ Throttle_Connection(const CONN_ID Idx, CLIENT *Client, const int Reason, || Client_Type(Client) == CLIENT_SERVICE) return; + /* Don't throttle clients with user mode 'F' set */ + if (Client_HasMode(Client, 'F')) + return; + LogDebug("Throttling connection %d: code %d, value %d!", Idx, Reason, Value); Conn_SetPenalty(Idx, 1);