Griff:
> I have Postfix currently running as an outbound relay for a Microsoft
> Exchange system. It's working beautifully, but we are having issues
> with bounce messages:
>
> It appears bounce messages are trucated to <80 chars (more like 75
> according to the tcpdump).
>
> This means the error code and message are not handled correctly by
> Exchange. See below screenshot:
> https://pbs.twimg.com/media/DBuyDLkXkAEWZ9d.jpg:large
After a bit of study, I determined that there is no legitimate need
to convert message/delivery-status to qouted-printable or base64.
The content of message/delivery-status should always be 7bit.
Wietse
diff -ur /var/tmp/postfix-3.3-20170506/src/bounce/bounce_notify_util.c
src/bounce/bounce_notify_util.c
--- /var/tmp/postfix-3.3-20170506/src/bounce/bounce_notify_util.c
2015-01-26 15:00:13.000000000 -0500
+++ src/bounce/bounce_notify_util.c 2017-06-10 14:47:25.000000000 -0400
@@ -637,7 +637,9 @@
(bounce_info->smtputf8 & SMTPUTF8_FLAG_REQUESTED) ?
"global-" : "");
/* Fix 20140709: addresses may be 8bit. */
- if (NOT_7BIT_MIME(bounce_info))
+ if (NOT_7BIT_MIME(bounce_info)
+ /* BC Fix 20170610: prevent MIME downgrade of message/delivery-status. */
+ && (bounce_info->smtputf8 & SMTPUTF8_FLAG_REQUESTED))
post_mail_fprintf(bounce, "Content-Transfer-Encoding: %s",
bounce_info->mime_encoding);