On Mon, 28 Jun 2004, Henrique de Moraes Holschuh wrote:
On Mon, 28 Jun 2004, Rob Siemborski wrote:I don't believe there is anything that will substantially change how POP works if what you're seeing is a write() call that just blocks forever, no.
Shouldn't cyrus timeout the client eventually, and unlock the mailbox?
If write() is blocking, no, there is not currently code that will cause a timeout to occur. However, if write() is blocking that means that the connection is still good *and* the data is transferring. We have to believe the OS in this case -- otherwise say we had a 50MB write() call to a modem link. We can't justifiably time out here.
The timeouts that we do perform happen in select() calls, which works fine (while we're waiting for incoming data).
-Rob
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Rob Siemborski * Andrew Systems Group * Cyert Hall 207 * 412-268-7456 Research Systems Programmer * /usr/contributed Gatekeeper
--- Cyrus Home Page: http://asg.web.cmu.edu/cyrus Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html