diff options
-rw-r--r-- | NEWS | 5 | ||||
-rw-r--r-- | driver.c | 2 | ||||
-rw-r--r-- | fetchmail-FAQ.html | 11 | ||||
-rw-r--r-- | fetchmail.man | 2 | ||||
-rw-r--r-- | pop3.c | 12 |
5 files changed, 26 insertions, 6 deletions
@@ -2,6 +2,11 @@ (The `lines' figures total .c, .h, .l, and .y files under version control.) +* Workaround for the CAPA error problem is documented in the FAQ. +* Updated Polish and Catalan translations. +* Sunil Shetye's patch to improve CAPA error handling. +* Sunil Shetye's patch to improve handling of unreadable boxes in POP3. + fetchmail-5.9.13 (Sat Jun 22 17:53:00 EDT 2002), 21791 lines: * Cygwin port fixes for socket.c. @@ -1423,7 +1423,7 @@ is restored.")); cleanUp: /* we only get here on error */ - if (err != 0 && err != PS_SOCKET) + if (err != 0 && err != PS_SOCKET && err != PS_REPOLL) { stage = STAGE_LOGOUT; (ctl->server.base_protocol->logout_cmd)(mailserver_socket, ctl); diff --git a/fetchmail-FAQ.html b/fetchmail-FAQ.html index 4bd9c471..c21a4ffc 100644 --- a/fetchmail-FAQ.html +++ b/fetchmail-FAQ.html @@ -10,7 +10,7 @@ <table width="100%" cellpadding=0><tr> <td width="30%">Back to <a href="index.html">Fetchmail Home Page</a> <td width="30%" align=center>To <a href="/~esr/sitemap.html">Site Map</a> -<td width="30%" align=right>$Date: 2002/06/21 09:06:59 $ +<td width="30%" align=right>$Date: 2002/07/10 13:56:19 $ </table> <HR> <H1>Frequently Asked Questions About Fetchmail</H1> @@ -116,6 +116,7 @@ IP address?</a><br> messages but before deleting them</a><br> <a href="#R9">R9. Fetchmail is timing out during message fetches</a><br> <a href="#R10">R10. Fetchmail is dying with SIGPIPE.</a><br> +<a href="#R11">R11. My server is hanging up or emitting errors on CAPA.</a><br> <h1>Hangs and lockups:</h1> @@ -2163,6 +2164,12 @@ failures with a SIGPIPE as the sendmail instance dies. The problem is messages with a single dot at start of a text line.</p> <hr> +<a name="R11">R11. My server is hanging up or emitting errors on CAPA.</a></h2> + +<p>Your POP3 server is broken. You can work around this with the +declaration <tt>auth password</tt> in your .fetchmailrc.</p> + +<hr> <h2><a name="H1">H1. Fetchmail hangs when used with pppd.</a></h2> <p>Your problem may be with pppd's `demand' option. We have a report that @@ -3073,7 +3080,7 @@ the received date from the last Received header.</p> <table width="100%" cellpadding=0><tr> <td width="30%">Back to <a href="index.html">Fetchmail Home Page</a> <td width="30%" align=center>To <a href="/~esr/sitemap.html">Site Map</a> -<td width="30%" align=right>$Date: 2002/06/21 09:06:59 $ +<td width="30%" align=right>$Date: 2002/07/10 13:56:19 $ </table> <ADDRESS>Eric S. Raymond <A HREF="mailto:esr@thyrsus.com"><esr@thyrsus.com></A></ADDRESS> diff --git a/fetchmail.man b/fetchmail.man index 18196c28..eabc7d12 100644 --- a/fetchmail.man +++ b/fetchmail.man @@ -1255,7 +1255,7 @@ port -P T{ Specify TCP/IP service port T} auth[enticate] \& T{ -Set authentication type (default `password') +Set authentication type (default `any') T} timeout -t T{ Server inactivity timeout in seconds (default 300) @@ -70,7 +70,9 @@ static int pop3_ok (int sock, char *argbuf) } else if (strncmp(buf,"-ERR", 4) == 0) { - if (stage > STAGE_GETAUTH) + if (stage == STAGE_FETCH) + ok = PS_TRANSIENT; + else if (stage > STAGE_GETAUTH) ok = PS_PROTOCOL; /* * We're checking for "lock busy", "unable to lock", @@ -229,7 +231,13 @@ static int pop3_getauth(int sock, struct query *ctl, char *greeting) } } /* we are in STAGE_GETAUTH! */ - else if (ok == PS_AUTHFAIL) + else if (ok == PS_AUTHFAIL || + /* Some servers directly close the socket. However, if we + * have already authenticated before, then a previous CAPA + * must have succeeded. In that case, treat this as a + * genuine socket error and do not change the auth method. + */ + (ok == PS_SOCKET && !ctl->wehaveauthed)) { ctl->server.authenticate = A_PASSWORD; /* repoll immediately */ |