[exim-dev] [Bug 2258] 4.90.1: spool wireformat feature doesn…

Page principale
Supprimer ce message
Répondre à ce message
Auteur: admin
Date:  
À: exim-dev
Sujet: [exim-dev] [Bug 2258] 4.90.1: spool wireformat feature doesn't add terminating dot properly
https://bugs.exim.org/show_bug.cgi?id=2258

Git Commit <git@???> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |git@???


--- Comment #9 from Git Commit <git@???> ---
Git commit:
https://git.exim.org/exim.git/commitdiff/f64e8b5f3b01b5285bb1f9172da7950e7f000c22

commit f64e8b5f3b01b5285bb1f9172da7950e7f000c22
Author:     Jeremy Harris <jgh146exb@???>
AuthorDate: Fri Mar 23 12:18:53 2018 +0000
Commit:     Jeremy Harris <jgh146exb@???>
CommitDate: Fri Mar 23 12:54:13 2018 +0000


    Fix spool_wireformat final-dot on LMTP transport.  Bug 2258


    Broken-by: 328c5688db
---
 doc/doc-txt/ChangeLog | 3 +++
 src/src/transport.c   | 4 +++-
 2 files changed, 6 insertions(+), 1 deletion(-)


diff --git a/doc/doc-txt/ChangeLog b/doc/doc-txt/ChangeLog
index 497c92a..fc392f6 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 f24b779..a2da321 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)


--
You are receiving this mail because:
You are on the CC list for the bug.