Eggdev: Re: [eggheads-patches] PATCH1.6: optimizekicks-and-logging.patch

Will Buckner wcc at
Fri Apr 15 21:09:51 CST 2005

NeoN wrote:

>I found some issues in the server module.
>1. optimize-kicks
>- egg_snprintf was called several times with overlapping source and
>  dest strings.  Replaced by egg_strcatn().
>- kick-method setting wasn't read from the config file, so it was
>  always set to 1 (except if nettype was set to IRCnet).
>- kick-method=0 is supposed to put all nicks in one kick command,
>  according to eggdrop.conf.
>- optimize-kicks=1 didn't always respect the number of nicks that can
>  be kicked in one command (kick-method).  If the first msg in the
>  queue contains too many nicks, it just got sent as it was.
>  A new msg, containing the remaining nicks, is now inserted in the
>  queue.
>- optimize-kicks=2 discarded nick changes when the resulting line
>  would be too long.  It now tries to:
>  - replace the old nick with the new nick.
>  - if that results in a msg that is too long, it puts the remaining
>    nicks in a new msg and inserts it in the queue.
>  - if possible, it also puts the new nick in a new msg and inserts it
>    into the queue;  if the new nickname is too long, it chops the
>    kick reason; if the msg is too long even with an empty kick
>    reason, it is discarded.
>- A few calls to newsplit() (spaces) instead of splitnicks()
>  (comma's).
>2. logging of outgoing server traffic
>calc_penalty() was called before the logging.  Because calc_penalty()
>uses newsplit(), the msg to be logged was chopped before it could be
Any comments on this one? Otherwise I'm going to apply it sometime this 


More information about the Eggdev mailing list