(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.
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);
<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>
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>
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>
<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>
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)
}
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",
}
}
/* 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 */