aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias Andree <matthias.andree@gmx.de>2009-05-25 10:37:41 +0000
committerMatthias Andree <matthias.andree@gmx.de>2009-05-25 10:37:41 +0000
commit147645e1a71350d168dd3c4df0f11b140373b09f (patch)
tree0174c06785508333753122cc8e92f79bb2678c17
parent0a748411f89586dd5f2484879e30fc7de271fec7 (diff)
downloadfetchmail-147645e1a71350d168dd3c4df0f11b140373b09f.tar.gz
fetchmail-147645e1a71350d168dd3c4df0f11b140373b09f.tar.bz2
fetchmail-147645e1a71350d168dd3c4df0f11b140373b09f.zip
Fix bounce message detail regression from 6.3.0.
Non-delivery messages now mention the original reason for the bounce message again. It was lost in merging Holger Mauermann's patch before 6.3.0, and caused a sink.c compiler warning ever since. svn path=/branches/BRANCH_6-3/; revision=5332
-rw-r--r--NEWS2
-rw-r--r--sink.c10
2 files changed, 9 insertions, 3 deletions
diff --git a/NEWS b/NEWS
index 6382fe1d..944e8afc 100644
--- a/NEWS
+++ b/NEWS
@@ -78,6 +78,8 @@ fetchmail 6.3.10 (not yet released):
illogical, and documentation hadn't matched real behaviour for long.
* For NTLM authentication, use dynamically allocated buffers.
Fixes Debian Bug#449179, reported by Stepan Golosunov.
+* Non-delivery notices ("bounce mail") now mentions the original reason again,
+ before the address list. This fixes a regression introduced in 6.3.0.
# CHANGES
* Make the comparison of the SSL fingerprints case insensitive, to
diff --git a/sink.c b/sink.c
index 56801c8d..edf1ae08 100644
--- a/sink.c
+++ b/sink.c
@@ -251,7 +251,7 @@ char *rcpt_address(struct query *ctl, const char *id,
}
static int send_bouncemail(struct query *ctl, struct msgblk *msg,
- int userclass, char *message,
+ int userclass, char *message /* should have \r\n at the end */,
int nerrors, char *errors[])
/* bounce back an error report a la RFC 1892 */
{
@@ -322,10 +322,14 @@ static int send_bouncemail(struct query *ctl, struct msgblk *msg,
SockPrintf(sock, "--%s\r\n", boundary);
SockPrintf(sock,"Content-Type: text/plain\r\n");
SockPrintf(sock, "\r\n");
- SockPrintf(sock, "This message was created automatically by mail delivery software.\r\n\r\n");
+ SockPrintf(sock, "This message was created automatically by mail delivery software.\r\n");
+ SockPrintf(sock, "\r\n");
SockPrintf(sock, "A message that you sent could not be delivered to one or more of its\r\n");
- SockPrintf(sock, "recipients. This is a permanent error. The following address(es) failed:\r\n");
+ SockPrintf(sock, "recipients. This is a permanent error.\r\n");
+ SockPrintf(sock, "\r\n");
+ SockPrintf(sock, "Reason: %s", message);
SockPrintf(sock, "\r\n");
+ SockPrintf(sock, "The following address(es) failed:\r\n");
if (nerrors)
{