X-Git-Url: https://jfr.im/git/irc/rqf/shadowircd.git/blobdiff_plain/dbd98a0a38b0a5c37b4c7348572dbfd43554e82c..5d3b05b9b624b745527e84f605c9cb04c6831c78:/src/packet.c diff --git a/src/packet.c b/src/packet.c index 054f416..01c8a64 100644 --- a/src/packet.c +++ b/src/packet.c @@ -165,63 +165,63 @@ flood_endgrace(struct Client *client_p) client_p->localClient->sent_parsed = 0; } -/* - * flood_recalc - * - * recalculate the number of allowed flood lines. this should be called - * once a second on any given client. We then attempt to flush some data. - */ -void -flood_recalc(void *unused) -{ - rb_dlink_node *ptr, *next; - struct Client *client_p; - - RB_DLINK_FOREACH_SAFE(ptr, next, lclient_list.head) - { - client_p = ptr->data; - - if(unlikely(IsMe(client_p))) - continue; - - if(unlikely(client_p->localClient == NULL)) - continue; - - if(IsFloodDone(client_p)) - client_p->localClient->sent_parsed -= 2; - else - client_p->localClient->sent_parsed = 0; - - if(client_p->localClient->sent_parsed < 0) - client_p->localClient->sent_parsed = 0; - - if(--client_p->localClient->actually_read < 0) - client_p->localClient->actually_read = 0; - - parse_client_queued(client_p); - - if(unlikely(IsAnyDead(client_p))) - continue; - - } - - RB_DLINK_FOREACH_SAFE(ptr, next, unknown_list.head) - { - client_p = ptr->data; - - if(client_p->localClient == NULL) - continue; - - client_p->localClient->sent_parsed--; - - if(client_p->localClient->sent_parsed < 0) - client_p->localClient->sent_parsed = 0; - - if(--client_p->localClient->actually_read < 0) - client_p->localClient->actually_read = 0; - - parse_client_queued(client_p); - } +/* + * flood_recalc + * + * recalculate the number of allowed flood lines. this should be called + * once a second on any given client. We then attempt to flush some data. + */ +void +flood_recalc(void *unused) +{ + rb_dlink_node *ptr, *next; + struct Client *client_p; + + RB_DLINK_FOREACH_SAFE(ptr, next, lclient_list.head) + { + client_p = ptr->data; + + if(unlikely(IsMe(client_p))) + continue; + + if(unlikely(client_p->localClient == NULL)) + continue; + + if(IsFloodDone(client_p)) + client_p->localClient->sent_parsed -= 2; + else + client_p->localClient->sent_parsed = 0; + + if(client_p->localClient->sent_parsed < 0) + client_p->localClient->sent_parsed = 0; + + if(--client_p->localClient->actually_read < 0) + client_p->localClient->actually_read = 0; + + parse_client_queued(client_p); + + if(unlikely(IsAnyDead(client_p))) + continue; + + } + + RB_DLINK_FOREACH_SAFE(ptr, next, unknown_list.head) + { + client_p = ptr->data; + + if(client_p->localClient == NULL) + continue; + + client_p->localClient->sent_parsed--; + + if(client_p->localClient->sent_parsed < 0) + client_p->localClient->sent_parsed = 0; + + if(--client_p->localClient->actually_read < 0) + client_p->localClient->actually_read = 0; + + parse_client_queued(client_p); + } } /*