From c260a67eb2a4a93567a7a975b6ebe92204fc9b49 Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Fri, 1 Feb 2002 02:14:24 +0000 Subject: Before the next fix round. svn path=/trunk/; revision=3569 --- NEWS | 3 +++ configure.in | 2 +- fetchmail-FAQ.html | 11 ++++++++--- imap.c | 23 +++++++++++++++++++++-- 4 files changed, 33 insertions(+), 6 deletions(-) diff --git a/NEWS b/NEWS index 67a2a01a..a4335e35 100644 --- a/NEWS +++ b/NEWS @@ -3,6 +3,9 @@ (The `lines' figures total .c, .h, .l, and .y files under version control.) * Minor fixes by HMH. +* Properly guard some transaction reporting in the SSL code. +* Updated German (de) po file. Added Turkish (tr) po file. +* Expunge edge case fix by Sunil Shetye. fetchmail-5.9.6 (Fri Dec 14 04:03:50 EST 2001), 21247 lines: diff --git a/configure.in b/configure.in index d63f2aaf..d819d1e8 100644 --- a/configure.in +++ b/configure.in @@ -68,7 +68,7 @@ then fi dnl i18n -ALL_LINGUAS="cs es fr pl pt_BR gl da" +ALL_LINGUAS="cs es fr pl pt_BR gl da tr" AM_GNU_GETTEXT dnl end i18n diff --git a/fetchmail-FAQ.html b/fetchmail-FAQ.html index 0af81125..3760fe77 100644 --- a/fetchmail-FAQ.html +++ b/fetchmail-FAQ.html @@ -10,7 +10,7 @@
Back to Fetchmail Home Page To Site Map -$Date: 2001/12/25 04:55:14 $ +$Date: 2002/02/01 02:14:23 $

Frequently Asked Questions About Fetchmail

@@ -1853,6 +1853,11 @@ this will suffice. If you have them installed in a non-default location, you'll need to specify it as an argument to --with-ssl after an equal sign. +

Note that there is a known bug in the implementation of SSL_peek +under OpenSSL versions 0.9.5 and older that fetchmail occasionally +tripped over, causing hangs. It is recommended that you install 0.9.6 +or later. +

Fetchmail binaries built this way support ssl, sslkey, and sslcert options that control SSL encryption. You will need to have an SSL-enabled mailserver @@ -1868,7 +1873,7 @@ probably means your OS doesn't have that device.

. An interactive program could seed the random number generator from keystroke timings or some other form of user input. Because fetchmail -is primarily designed to run forever as a background daemon, that option +is primarily designed to run forever as a background daemon, that option is not available in this case.


@@ -2988,7 +2993,7 @@ date from the last Received header.

Back to Fetchmail Home Page To Site Map -$Date: 2001/12/25 04:55:14 $ +$Date: 2002/02/01 02:14:23 $

Eric S. Raymond <esr@thyrsus.com>
diff --git a/imap.c b/imap.c index 9a22a37c..9043a9ad 100644 --- a/imap.c +++ b/imap.c @@ -29,8 +29,9 @@ extern char *strstr(); /* needed on sysV68 R3V7.1. */ #define IMAP4 0 /* IMAP4 rev 0, RFC1730 */ #define IMAP4rev1 1 /* IMAP4 rev 1, RFC2060 */ -static int count, unseen, deletions, imap_version, preauth; -static int expunged, expunge_period, saved_timeout; +static int count, unseen, deletions = 0; +static int expunged, expunge_period, saved_timeout = 0; +static int imap_version, preauth; static flag do_idle; static char capabilities[MSGBUFSIZE+1]; static unsigned int *unseen_messages; @@ -519,6 +520,23 @@ static int imap_getrange(int sock, /* no messages? then we may need to idle until we get some */ if (count == 0 && do_idle) imap_idle(sock); + + /* + * We should have an expunge here to + * a) avoid fetching deleted mails during 'fetchall' + * b) getting a wrong count of mails during 'no fetchall' + */ + if (!check_only && !ctl->keep && count > 0) + { + ok = internal_expunge(sock); + if (ok) + { + report(stderr, GT_("expunge failed\n")); + return(ok); + } + if (outlevel >= O_DEBUG) + report(stdout, GT_("%d messages waiting after expunge\n"), count); + } } *countp = count; @@ -576,6 +594,7 @@ static int imap_getrange(int sock, *newp = unseen; expunged = 0; + deletions = 0; return(PS_SUCCESS); } -- cgit v1.2.3