[Dovecot] pop3 timeout when sending first message
I'm using FreeBSD 4.8 with dovecot from the ports collection.
First I am first trying to fetch mail via POP3. Clients are both OE6 and Mozilla. Both exhibit the same behavior: the client says it is receiving message 1 of (however many), but nothing happens; no message data is transferred. Mozilla seems to keep waiting forever, but OE6 times out after 60 seconds and lets me stop waiting.
I tried both with and without SSL. Authentication works fine in either case, but the mail xfer just doesn't work.
There's nothing of interest in the logs. By the way, there seems to be no mention of what syslog facility is used by dovecot. What is it? I'm avoiding syslog for now and writing to specific files.
In the info log I get this when the client logs in:
pop3-login: May 25 23:10:44 Info: Login: mike [my.IP.addr.here]
In the other log I get this when OE6 disconnects, following the timeout and prompting me to wait or stop:
pop3-login: May 25 23:11:53 Warning: SSL_read() syscall failed: EOF [216.241.45.45]
I'm not sure what else to do to try to debug this...
Help?
-Mike
On Mon, 2003-05-26 at 08:33, Mike Brown wrote:
I'm using FreeBSD 4.8 with dovecot from the ports collection.
First I am first trying to fetch mail via POP3. Clients are both OE6 and Mozilla. Both exhibit the same behavior: the client says it is receiving message 1 of (however many), but nothing happens; no message data is transferred. Mozilla seems to keep waiting forever, but OE6 times out after 60 seconds and lets me stop waiting.
Check the POP3 traffic that they're talking. That would tell at least something. http://dovecot.procontrol.fi/bugreport.html#sniffing
There's nothing of interest in the logs. By the way, there seems to be no mention of what syslog facility is used by dovecot. What is it? I'm avoiding syslog for now and writing to specific files.
It's mail.
Timo Sirainen wrote:
On Mon, 2003-05-26 at 08:33, Mike Brown wrote:
I'm using FreeBSD 4.8 with dovecot from the ports collection.
First I am first trying to fetch mail via POP3. Clients are both OE6 and Mozilla. Both exhibit the same behavior: the client says it is receiving message 1 of (however many), but nothing happens; no message data is transferred. Mozilla seems to keep waiting forever, but OE6 times out after 60 seconds and lets me stop waiting.
Check the POP3 traffic that they're talking. That would tell at least something. http://dovecot.procontrol.fi/bugreport.html#sniffing
tcpdump reveals that the first message does get sent.
You can examine the tcpdump output here (I edited out my password):
http://skew.org/~mike/pop3-moz-tcpdump http://skew.org/~mike/pop3-oe6-tcpdump
Is this helpful?
There's nothing of interest in the logs. By the way, there seems to be no mention of what syslog facility is used by dovecot. What is it? I'm avoiding syslog for now and writing to specific files.
It's mail.
Hmm, OK. I'd rather keep my dovecot log separate from my MTA log, so I'll continue with my current setup.
Thanks!
On Tue, 2003-05-27 at 05:03, Mike Brown wrote:
You can examine the tcpdump output here (I edited out my password):
http://skew.org/~mike/pop3-moz-tcpdump http://skew.org/~mike/pop3-oe6-tcpdump
Is this helpful?
Well, I think you broke them while editing :) But I think it's because your message doesn't end with line feed. Try this patch: Index: commands.c =================================================================== RCS file: /home/cvs/dovecot/src/pop3/commands.c,v retrieving revision 1.7 diff -u -r1.7 commands.c --- commands.c 1 Feb 2003 11:44:40 -0000 1.7 +++ commands.c 27 May 2003 07:10:27 -0000 @@ -264,6 +264,11 @@ i_stream_skip(input, i); } + + if (last != '\n') { + /* didn't end with CRLF */ + (void)o_stream_send(output, "\r\n", 2); + } } static void fetch(struct client *client, unsigned int msgnum,
Timo Sirainen wrote:
Well, I think you broke them while editing :) But I think it's because your message doesn't end with line feed. Try this patch:
Index: commands.c =================================================================== RCS file: /home/cvs/dovecot/src/pop3/commands.c,v retrieving revision 1.7 diff -u -r1.7 commands.c --- commands.c 1 Feb 2003 11:44:40 -0000 1.7 +++ commands.c 27 May 2003 07:10:27 -0000 @@ -264,6 +264,11 @@
i_stream_skip(input, i); } + + if (last != '\n') { + /* didn't end with CRLF */ + (void)o_stream_send(output, "\r\n", 2); + } }
static void fetch(struct client *client, unsigned int msgnum,
That worked! The problem is solved! Thanks!! -Mike
participants (2)
-
Mike Brown
-
Timo Sirainen