At 18:07 19/09/02 -0400, Alan Brown wrote: >On Fri, 20 Sep 2002, Simon Byrnand wrote: > >> >Or Qpopper flags are set to leave them behind. They're another way of >> >seeing whan a user last popped. >> >> Would that prevent new sessions from logging on later though ? > >No. > >> And if so, >> what would be the point ? > >Later sessions will only be blocked in the face of user.pop files if the >process ID referenced stille exists.
Ah ok. > >> It sounds like in his case the stale .pop files are preventing him from >> logging in again, so I doubt thats the case here. >> >> It needs to be established whether they're really stale, or whether the >> popper process is just taking a long time to exit after a session is lost. > >Yes it does. Every time I've gone through this I've found there's a pop >session left hanging > >> I found that it could take anywhere from 5 to 15 minutes for a session to >> time out if the user "dissapeared" completely (eg modem hangup) > >You can tune this at startup. Check the -T flag. Err, nope. Been there, done that :) -T only controls the command timeout for Qpopper - in other words how long it will wait for a new command from the client, when it is not in the middle of processing a command. (For example sending the body of a message) If the user is in the middle of downloading a large message and their modem gets disconnected, what happens is the outgoing TCP queue for that connection fills up to the maximum very quickly (typically 64KB) and qpopper gets put to sleep waiting for the queue to clear a bit. Because the user has gone, the queue is never drained, and qpopper doesn't get a chance to run. The -T option has NO effect here. (Trust me, I've tried) Qpopper is at the mercy of the TCP timeouts of the OS - eventually the OS will decide that the TCP session is dead, and wakes qpopper up and breaks the connection. You'll see something like -ERR SIGHUP or SIGPIPE flagged in the log file. The only thing that controls how long this timeout takes is the TCP timeout settings in the OS. Regards, Simon
