From 2ce40ef7d40cf2092df3c17b5cd286417e5f6e67 Mon Sep 17 00:00:00 2001 From: Matthias Andree Date: Fri, 6 Jan 2006 13:15:46 +0000 Subject: Add workaround for b0rked POP3 TOP command in Maillennium servers (comcast.net). svn path=/branches/BRANCH_6-3/; revision=4606 --- NEWS | 8 ++++++++ fetchmail-FAQ.html | 9 +++++++-- pop3.c | 6 ++++++ 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/NEWS b/NEWS index 43dac4f6..a33b84ff 100644 --- a/NEWS +++ b/NEWS @@ -25,6 +25,14 @@ change. MA = Matthias Andree, ESR = Eric S. Raymond, RF = Rob Funk.) fetchmail 6.3.2 (to be released): # INCOMPATIBLE CHANGE: +* Automatically disable the POP3 TOP command if the greeting string contains + "Maillennium POP3/PROXY server", which is used by comcast and known to + truncate messages after 80 kByte. Fall back to RETR, and complain if we had + used TOP otherwise. Suggested by Ed Wilts. + *Note* that this means messages are marked read on these servers, which is a + deviation from how 6.3.1 behaved, but we have no alternative, comcast haven't + fixed this bug in years. Preventing the loss of the remainder of the message + justifies this incompatible fix. Matthias Andree * fetchmail, since 6.3.0, requires write permission to the directory holding the idfile. See the amendment in the 6.3.0 MAJOR INCOMPATIBLE CHANGES section below for details. The manual page was updated. Matthias Andree diff --git a/fetchmail-FAQ.html b/fetchmail-FAQ.html index 1a678251..8b6e6d81 100644 --- a/fetchmail-FAQ.html +++ b/fetchmail-FAQ.html @@ -2004,12 +2004,17 @@ next cycle.

I8. How can I use fetchmail with comcast.net?

Stock fetchmail will work with a comcast.net server...but -the Maillennium POP3 server comcat uses seems to have an 80K limit on +the Maillennium POP3 server comcast use seems to have an 80 kB limit on the length of downloaded messages if you use POP3 TOP to retrieve. Anything larger is silently truncated. Don't mistake this for a fetchmail bug. (Reported July 2003.)

-

Workaround: use the fetchall option.

+

Beginning with version 6.3.2, fetchmail will fall back to the RETR +command if the greeting string contains "Maillennium POP3/PROXY server", +and print a warning message. This means however that fetchmail has no +means to prevent the "seen" flag from being set on the server.

+ +

Workaround for older versions: use the fetchall option.


How to set up well-known security and authentication diff --git a/pop3.c b/pop3.c index 12f2d999..df85e3e6 100644 --- a/pop3.c +++ b/pop3.c @@ -611,6 +611,12 @@ static int pop3_getauth(int sock, struct query *ctl, char *greeting) #endif set_peek_capable(ctl); + /* comcast's Maillennium POP3/PROXY is full of bugs and truncates + * TOP replies after c. 80 kByte, so disable TOP. */ + if (peek_capable && strstr(greeting, "Maillennium POP3/PROXY server")) { + report(stdout, GT_("Warning: Maillennium POP3/PROXY server found, using RETR command.\n")); + peek_capable = 0; + } /* we're approved */ return(PS_SUCCESS); -- cgit v1.2.3