From f14635152fcc38a703f806dcfeb3fc51d3e55365 Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Sat, 5 Feb 2000 04:10:43 +0000 Subject: [PATCH] LinuxWorld hacks. svn path=/trunk/; revision=2729 --- NEWS | 6 ++++-- conf.c | 2 ++ design-notes.html | 8 +++++-- driver.c | 48 ++++++++++++++++++++++------------------- fetchmail-features.html | 8 +++++-- fetchmail.c | 25 ++++++++++++++------- fetchmail.h | 1 + fetchmail.man | 18 +++++++++++----- fetchmailconf | 20 +++++++++++------ imap.c | 6 +++++- options.c | 4 +++- pop3.c | 13 ++++++++++- rcfile_l.l | 3 ++- rcfile_y.y | 3 ++- socket.c | 2 +- 15 files changed, 114 insertions(+), 53 deletions(-) diff --git a/NEWS b/NEWS index e40ddf8a..8d2a0728 100644 --- a/NEWS +++ b/NEWS @@ -1,7 +1,5 @@ Things to do: -Scrollbars on fetchmailconf help windows (Debian normal bug #51770). - Notify user by mail when pop server nonexistent (Debian wishlist #47143). In the SSL support, we need to add server certificate validation (In @@ -29,7 +27,11 @@ The Debian bug-tracking page for fetchmail is: before close (sigh...NFS might still betray us...). * Added Martijn Lievaart's sendmail hacks for multidrop to the contrib directory. +* Fix bug in processing of plugout option. +* Add support for `ssh' preauth type to suppress password prompts at startup. +* Support for RFC2449 extended POP3 responses [IN-USE] and [LOGIN-DELAY]. * Log bounced messages via syslog (Debian bug #50184). +* Add scrollbars on fetchmailconf help windows (Debian bug #51770). * Debian buglist cleanup. fetchmail-5.2.5 (Mon Jan 31 02:02:48 EST 2000), 18445 lines: diff --git a/conf.c b/conf.c index 1856b502..6be990db 100644 --- a/conf.c +++ b/conf.c @@ -270,6 +270,8 @@ void dump_config(struct runctl *runp, struct query *querylist) stringdump("preauth", "kerberos_v4"); else if (ctl->server.preauthenticate == A_KERBEROS_V5) stringdump("preauth", "kerberos_v5"); + else if (ctl->server.preauthenticate == A_SSH) + stringdump("preauth", "ssh"); else stringdump("preauth", "password"); diff --git a/design-notes.html b/design-notes.html index 14912240..0707878a 100644 --- a/design-notes.html +++ b/design-notes.html @@ -10,7 +10,7 @@
Back to Fetchmail Home Page To Site Map -$Date: 2000/01/08 22:37:39 $ +$Date: 2000/02/05 04:10:38 $

Design Notes On Fetchmail

@@ -513,6 +513,8 @@ all shaped the design in one way or another.

A One-Time Password System
RFC1939
Post Office Protocol - Version 3 +
RFC1957 +
Some Observations on Implementations of the Post Office Protocol (POP3)
RFC1985
SMTP Service Extension for Remote Message Queue Starting
RFC2033 @@ -523,6 +525,8 @@ all shaped the design in one way or another.

IMAP4 Compatibility With IMAP2bis
RFC2062
Internet Message Access Protocol - Obsolete Syntax +
RFC2195 +
IMAP/POP AUTHorize Extension for Simple Challenge/Response
RFC2449
IMAP/POP AUTHorize Extension for Simple Challenge/Response
RFC2449 @@ -533,7 +537,7 @@ all shaped the design in one way or another.

Back to Fetchmail Home Page To Site Map -$Date: 2000/01/08 22:37:39 $ +$Date: 2000/02/05 04:10:38 $

Eric S. Raymond <esr@snark.thyrsus.com>
diff --git a/driver.c b/driver.c index f627d2cb..4692f009 100644 --- a/driver.c +++ b/driver.c @@ -1045,7 +1045,7 @@ static int readheaders(int sock, free_str_list(&msgblk.recipients); return(PS_IOERR); } - else if (!run.use_syslog && outlevel >= O_VERBOSE) + else if ((run.poll_interval == 0 || nodetach) && outlevel >= O_VERBOSE) fputs("#", stderr); /* write error notifications */ @@ -1155,7 +1155,7 @@ static int readbody(int sock, struct query *ctl, flag forward, int len) sizeticker += linelen; while (sizeticker >= SIZETICKER) { - if (!run.use_syslog && outlevel > O_SILENT) + if ((run.poll_interval == 0 || nodetach) && outlevel > O_SILENT) { fputc('.', stdout); fflush(stdout); @@ -1596,30 +1596,34 @@ const int maxfetch; /* maximum number of messages to fetch */ * in daemon mode but the connection to the outside world * is down. */ - if (err_no == EHOSTUNREACH && run.poll_interval) - goto ehostunreach; - - report_build(stderr, _("fetchmail: %s connection to %s failed"), - protocol->name, ctl->server.pollname); -#ifdef HAVE_RES_SEARCH - if (h_errno != 0) + if (!(err_no == EHOSTUNREACH && run.poll_interval)) { - if (h_errno == HOST_NOT_FOUND) - report_complete(stderr, _(": host is unknown\n")); - else if (h_errno == NO_ADDRESS) - report_complete(stderr, _(": name is valid but has no IP address\n")); - else if (h_errno == NO_RECOVERY) - report_complete(stderr, _(": unrecoverable name server error\n")); - else if (h_errno == TRY_AGAIN) - report_complete(stderr, _(": temporary name server error\n")); + report_build(stderr, _("fetchmail: %s connection to %s failed"), + protocol->name, ctl->server.pollname); +#ifdef HAVE_RES_SEARCH + if (h_errno != 0) + { + if (h_errno == HOST_NOT_FOUND) + report_complete(stderr, + _(": host is unknown\n")); + else if (h_errno == NO_ADDRESS) + report_complete(stderr, + _(": name is valid but has no IP address\n")); + else if (h_errno == NO_RECOVERY) + report_complete(stderr, + _(": unrecoverable name server error\n")); + else if (h_errno == TRY_AGAIN) + report_complete(stderr, + _(": temporary name server error\n")); + else + report_complete(stderr, + _(": unknown DNS error %d\n"), h_errno); + } else - report_complete(stderr, _(": unknown DNS error %d\n"), h_errno); - } - else #endif /* HAVE_RES_SEARCH */ - report_complete(stderr, ": %s\n", strerror(err_no)); + report_complete(stderr, ": %s\n", strerror(err_no)); - ehostunreach: + } #endif /* INET6_ENABLE */ ok = PS_SOCKET; set_timeout(0); diff --git a/fetchmail-features.html b/fetchmail-features.html index 4f24b622..619e7971 100644 --- a/fetchmail-features.html +++ b/fetchmail-features.html @@ -10,7 +10,7 @@
Back to Fetchmail Home Page To Site Map -$Date: 1999/12/21 03:45:26 $ +$Date: 2000/02/05 04:10:38 $

@@ -18,6 +18,10 @@

Since 5.0: