summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJon Portnoy <avenj@gentoo.org>2003-04-16 00:52:22 +0000
committerJon Portnoy <avenj@gentoo.org>2003-04-16 00:52:22 +0000
commitfaa96c2cb22c30952a3ebbd734f79276dd1befcd (patch)
tree1d658658a7422ad2f965139d7a835aefcf56c054 /net-mail/fetchmail/files
parentMarked stable on hppa. (diff)
downloadgentoo-2-faa96c2cb22c30952a3ebbd734f79276dd1befcd.tar.gz
gentoo-2-faa96c2cb22c30952a3ebbd734f79276dd1befcd.tar.bz2
gentoo-2-faa96c2cb22c30952a3ebbd734f79276dd1befcd.zip
Patch to fix return paths bug, fixes bug #19372
Diffstat (limited to 'net-mail/fetchmail/files')
-rw-r--r--net-mail/fetchmail/files/digest-fetchmail-6.2.2-r21
-rw-r--r--net-mail/fetchmail/files/fetchmail-6.2.2-multiple-return-path.diff27
2 files changed, 28 insertions, 0 deletions
diff --git a/net-mail/fetchmail/files/digest-fetchmail-6.2.2-r2 b/net-mail/fetchmail/files/digest-fetchmail-6.2.2-r2
new file mode 100644
index 000000000000..a1f977811cec
--- /dev/null
+++ b/net-mail/fetchmail/files/digest-fetchmail-6.2.2-r2
@@ -0,0 +1 @@
+MD5 b3544890a2452b5b04c709c65109c43a fetchmail-6.2.2.tar.gz 1205198
diff --git a/net-mail/fetchmail/files/fetchmail-6.2.2-multiple-return-path.diff b/net-mail/fetchmail/files/fetchmail-6.2.2-multiple-return-path.diff
new file mode 100644
index 000000000000..d3cfc08c6ba8
--- /dev/null
+++ b/net-mail/fetchmail/files/fetchmail-6.2.2-multiple-return-path.diff
@@ -0,0 +1,27 @@
+--- fetchmail-6.2.2/transact.c.orig 2003-04-14 12:46:42.000000000 +0800
++++ fetchmail-6.2.2/transact.c 2003-04-14 13:04:33.000000000 +0800
+@@ -381,6 +381,7 @@
+ flag headers_ok, has_nuls;
+ int olderrs, good_addresses, bad_addresses;
+ int retain_mail = 0;
++ flag already_has_return_path = FALSE;
+
+ sizeticker = 0;
+ has_nuls = headers_ok = FALSE;
+@@ -676,9 +677,15 @@
+ * not trigger bounces if delivery fails. What we *do* need to do is
+ * make sure we never try to rewrite such a blank Return-Path. We
+ * handle this with a check for <> in the rewrite logic above.
++ *
++ * Also, if an email has multiple Return-Path: statement, we only
++ * read the first occurance, as some spam email has more than one
++ * Return-Path.
++ *
+ */
+- if (!strncasecmp("Return-Path:", line, 12) && (cp = nxtaddr(line)))
++ if ((already_has_return_path==FALSE) && !strncasecmp("Return-Path:", line, 12) && (cp = nxtaddr(line)))
+ {
++ already_has_return_path = TRUE;
+ strncpy(msgblk.return_path, cp, sizeof(msgblk.return_path));
+ msgblk.return_path[sizeof(msgblk.return_path)-1] = '\0';
+ if (!ctl->mda) {