aboutsummaryrefslogtreecommitdiffstats
path: root/sink.c
diff options
context:
space:
mode:
authorEric S. Raymond <esr@thyrsus.com>2001-07-07 18:55:36 +0000
committerEric S. Raymond <esr@thyrsus.com>2001-07-07 18:55:36 +0000
commit74950214904a0a0ea36705ad900af32736a5c785 (patch)
treeb18dd2c9ffe8a3d02c2ca4f923be1bdbc1976d87 /sink.c
parent28246f879f681d83be8653a5bc7aff8bb16a45eb (diff)
downloadfetchmail-74950214904a0a0ea36705ad900af32736a5c785.tar.gz
fetchmail-74950214904a0a0ea36705ad900af32736a5c785.tar.bz2
fetchmail-74950214904a0a0ea36705ad900af32736a5c785.zip
Discard Return-Path consisting of @.
svn path=/trunk/; revision=3409
Diffstat (limited to 'sink.c')
-rw-r--r--sink.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sink.c b/sink.c
index b5b483aa..e8d39eee 100644
--- a/sink.c
+++ b/sink.c
@@ -626,8 +626,13 @@ int open_sink(struct query *ctl, struct msgblk *msg,
* This is a potential problem if the MTAs further upstream
* didn't pass canonicalized From/Return-Path lines, *and* the
* local SMTP listener insists on them.
+ *
+ * Handle the case where an upstream MTA is setting a return
+ * path equal to "@". Ghod knows why anyone does this, but
+ * it's been reported to happen in mail from Amazon.com and
+ * Motorola.
*/
- if (!msg->return_path[0])
+ if (!msg->return_path[0] || (0 == strcmp(msg->return_path, "@")))
{
#ifdef HAVE_SNPRINTF
snprintf(addr, sizeof(addr),