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

Reply via email to