aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric S. Raymond <esr@thyrsus.com>2002-10-31 13:21:12 +0000
committerEric S. Raymond <esr@thyrsus.com>2002-10-31 13:21:12 +0000
commit8cf3fdbd139435d0696e7c16f967bbeb1ab4d701 (patch)
treefc7c0fde88c1e4d3fbf5f12399f77bf7dc4935c1
parent1c0b7916d51f2626f7c49a6ba9c4bf63dce9dfda (diff)
downloadfetchmail-8cf3fdbd139435d0696e7c16f967bbeb1ab4d701.tar.gz
fetchmail-8cf3fdbd139435d0696e7c16f967bbeb1ab4d701.tar.bz2
fetchmail-8cf3fdbd139435d0696e7c16f967bbeb1ab4d701.zip
Improve processing of truncated messages.
svn path=/trunk/; revision=3761
-rw-r--r--NEWS4
-rw-r--r--driver.c19
-rw-r--r--transact.c1
3 files changed, 10 insertions, 14 deletions
diff --git a/NEWS b/NEWS
index e8291598..6523deb3 100644
--- a/NEWS
+++ b/NEWS
@@ -2,6 +2,10 @@
(The `lines' figures total .c, .h, .l, and .y files under version control.)
+* Jan Klaverstijn's verbosity-lowering patch.
+* Updated Turkish, German, Catalan, and Danish translation files.
+* Fix processing of POP3 messages with missing bodies.
+
fetchmail-6.1.1 (Fri Oct 18 14:53:51 EDT 2002), 22087 lines:
* OTP fix patches from Stanislav Brabec <utx@penguin.cz>
diff --git a/driver.c b/driver.c
index f0268356..a0596ec0 100644
--- a/driver.c
+++ b/driver.c
@@ -521,23 +521,14 @@ static int fetch_messages(int mailserver_socket, struct query *ctl,
if (ctl->server.base_protocol->fetch_body)
suppress_readbody = TRUE;
}
-#if 0
- /*
- * readheaders does not read the body when it
- * hits a non-header. It has been recently
- * fixed to return PS_TRUNCATED (properly) when
- * that happens, but apparently fixing that bug
- * opened this one here (which looks like an
- * inproper fix from some ancient thinko)
- */
else if (err == PS_TRUNCATED)
- suppress_readbody = TRUE;
+ {
+ if (ctl->server.base_protocol->fetch_body)
+ suppress_readbody = TRUE;
+ len = 0; /* suppress body processing */
+ }
else if (err)
return(err);
-#else
- else if (err && err != PS_TRUNCATED)
- return(err);
-#endif
/*
* If we're using IMAP4 or something else that
diff --git a/transact.c b/transact.c
index dbf55f53..10731986 100644
--- a/transact.c
+++ b/transact.c
@@ -860,6 +860,7 @@ int readheaders(int sock,
if (outlevel > O_SILENT)
report(stdout,
GT_("message delimiter found while scanning headers\n"));
+ return(PS_TRUNCATED);
}
/*