aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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)
{