On Sat, 2007-07-14 at 23:58 -0700, Joseph D. Wagner wrote:
> In an attempt to change the logging to be more descriptive myself, I 
> already changed src/imap/cmd-fetch.c:85 on my own copy of dovecot from:
> client_disconnect(cmd->client, "Disconnected");
> to:
> client_disconnect(cmd->client, "Disconnected in FETCH");
> This makes the logging both more descriptive and more in line with other 
> parts of code, like src/imap/cmd-append.c:50 which already say:
> client_destroy(client, "Disconnected in APPEND");

"Disconnected" simply means that the connection got disconnected (ie.
Dovecot didn't do it). I didn't think it matters in which command it
gets disconnected, so it doesn't try to log that.

Maybe you should just enable rawlog and see what happens before it gets
disconnected? http://dovecot.org/bugreport.html#sniffing

> I'm now looking at the client_read() function in 
> src/imap-login/client.c:318-334.  If I'm reading the code right, then 
> "i_stream_read(client->input)" returning "-1" means that the 
> socket/stream is already disconnected, right?  In other words, some 
> function attempted to read off of a socket/stream that was already 
> closed, right?  If so, shouldn't the client_read() function not have 
> been called in the first place?

Not necessarily. It returns -1 also if the socket just got disconnected
while it was trying to read().

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to