summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Harris <jgh146exb@wizmail.org>2018-03-23 12:18:53 +0000
committerJeremy Harris <jgh146exb@wizmail.org>2018-03-23 12:54:13 +0000
commitf64e8b5f3b01b5285bb1f9172da7950e7f000c22 (patch)
tree51d429d22dec4eef7e49412f6360266b02410fa7
parentd9604f3793b5999fe1b2edcdafb7e7ba7a6a5a71 (diff)
Fix spool_wireformat final-dot on LMTP transport. Bug 2258
Broken-by: 328c5688db
-rw-r--r--doc/doc-txt/ChangeLog3
-rw-r--r--src/src/transport.c4
2 files changed, 6 insertions, 1 deletions
diff --git a/doc/doc-txt/ChangeLog b/doc/doc-txt/ChangeLog
index 497c92ab2..fc392f60e 100644
--- a/doc/doc-txt/ChangeLog
+++ b/doc/doc-txt/ChangeLog
@@ -171,6 +171,9 @@ JH/31 Bug 2257: Fix pipe transport to not use a socket-only syscall.
HS/03 Set a handler for SIGTERM and call exit(3) if running as PID 1. This
allows proper process termination in container environments.
+JH/32 Bug 2258: Fix spool_wireformat in combination with LMTP transport.
+ Previously the "final dot" had a newline after it; ensure it is CR,LF.
+
Exim version 4.90
-----------------
diff --git a/src/src/transport.c b/src/src/transport.c
index f24b7794b..a2da32159 100644
--- a/src/src/transport.c
+++ b/src/src/transport.c
@@ -1132,9 +1132,10 @@ if (!(tctx->options & topt_no_body))
if (len != 0) return FALSE;
}
-/* Finished with the check string */
+/* Finished with the check string, and spool-format consideration */
nl_check_length = nl_escape_length = 0;
+spool_file_wireformat = FALSE;
/* If requested, add a terminating "." line (SMTP output). */
@@ -1401,6 +1402,7 @@ filter was not NL, insert a NL to make the SMTP protocol work. */
if (yield)
{
nl_check_length = nl_escape_length = 0;
+ spool_file_wireformat = FALSE;
if ( tctx->options & topt_end_dot
&& ( last_filter_was_NL
? !write_chunk(tctx, US".\n", 2)