On Tue, 2008-01-01 at 23:52 +0100, Anders wrote:
Attached is a patch with the work I did on this the other night. Would something like that be acceptable, or should I make it in a different way?
v1.0 will stay as it is, but something like this could still be done for v1.1.
I just changed today auth failure handling code to drop the timeout when there are no failed requests (http://hg.dovecot.org/dovecot/rev/958500009336).
As for the setup_timeout() thing, I think most of that logic should be in src/lib/. Instead of having one idle timeout, add a struct timeout to all clients and add a new timeout_reset() API to reset it whenever receiving input. The current timeout handling code is a bit inefficient with lots of timers though, so that probably needs a redesign as well.
There seems to be no one-shot timer support, right?
Right. There hasn't really been a need for it.
Is there a Dovecot coding style document? (I did notice that there appears to be an 80 char width that I exceeded)
I should write one some day, but I think it's pretty close to Linux kernel's coding style. And yes, there's a 80 char width limit.