I'm trying to figure out why nsPop3Protocol is leaving connections hanging 
when server errors occur.
I see that connections get moved to the nsSocketTransportService's idle 
list, and then never get checked for timeout conditions.
I would have thought that the SetTimeout function would timeout the 
connection if the server did not send data within 60 seconds from the last 
send or receive. Since this is not the case, what exactly is the timeout 
for??

you can look at the log file created by the debug build of thunderbird here: 
https://bugzilla.mozilla.org/attachment.cgi?id=206466&action=view
If you follow it, you will see that ther are no active or idle sockets, then 
a connection is made to earthlink, a bogus username is passed to it, and it 
responds with an error, and then the POP3 protocol tries to talk to the 
connection again, but the server must have disconnected, and necko did not 
notify the protocol handler of this fact, so the connection is never cleaned 
up.

This log shows that the connection never times out even though the 
TIMEOUT_READ_WRITE was changed to 60 (because the connection is added to the 
idle list, and the idle list is never aged). 


_______________________________________________
Mozilla-netlib mailing list
Mozilla-netlib@mozilla.org
http://mail.mozilla.org/listinfo/mozilla-netlib

Reply via email to