[exim-cvs] Logging: better tracking of continued-connection …

Páxina inicial
Borrar esta mensaxe
Responder a esta mensaxe
Autor: Exim Git Commits Mailing List
Data:  
Para: exim-cvs
Asunto: [exim-cvs] Logging: better tracking of continued-connection use
Gitweb: https://git.exim.org/exim.git/commitdiff/cf39dad3d551222a3e1f681995c287eb53e2596f
Commit:     cf39dad3d551222a3e1f681995c287eb53e2596f
Parent:     2081aac24b67f3f3f34389aadc06354abcad0cad
Author:     Jeremy Harris <jgh146exb@???>
AuthorDate: Sat Apr 10 19:36:17 2021 +0100
Committer:  Jeremy Harris <jgh146exb@???>
CommitDate: Sat Apr 10 19:36:17 2021 +0100


    Logging: better tracking of continued-connection use
---
 src/src/deliver.c            |  28 ++++++++++--
 src/src/structs.h            |   2 +
 src/src/transport.c          |  21 ++++-----
 src/src/transports/smtp.c    |  21 ++++++---
 test/log/0217                | 102 +++++++++++++++++++++----------------------
 test/log/0285                |  16 +++----
 test/log/0286                |  18 ++++----
 test/log/0299                |   2 +-
 test/log/0622                |  10 ++---
 test/log/5801                |  10 ++---
 test/scripts/0000-Basic/0286 |  16 +++----
 test/stdout/0286             |  16 +++----
 12 files changed, 146 insertions(+), 116 deletions(-)


diff --git a/src/src/deliver.c b/src/src/deliver.c
index ec39cf1..ef6eb22 100644
--- a/src/src/deliver.c
+++ b/src/src/deliver.c
@@ -1580,6 +1580,12 @@ if (addr->return_file >= 0 && addr->return_filename)
(void)close(addr->return_file);
}

+/* Check if the transport notifed continue-conn status explicitly, and
+update our knowlege. */
+
+if (testflag(addr, af_new_conn))       continue_sequence = 1;
+else if (testflag(addr, af_cont_conn)) continue_sequence++;
+
 /* The success case happens only after delivery by a transport. */


if (result == OK)
@@ -3571,7 +3577,13 @@ while (!done)

       switch (*subid)
     {
-  #ifdef SUPPORT_SOCKS
+    case 3:        /* explicit notification of continued-connection (non)use;
+            overrides caller's knowlege. */
+      if (*ptr & BIT(1))      setflag(addr, af_new_conn);
+      else if (*ptr & BIT(2)) setflag(addr, af_cont_conn);
+      break;
+
+#ifdef SUPPORT_SOCKS
     case '2':    /* proxy information; must arrive before A0 and applies to that addr XXX oops*/
       proxy_session = TRUE;    /*XXX should this be cleared somewhere? */
       if (*ptr == 0)
@@ -3584,9 +3596,9 @@ while (!done)
         ptr += sizeof(proxy_local_port);
         }
       break;
-  #endif
+#endif


-  #ifdef EXPERIMENTAL_DSN_INFO
+#ifdef EXPERIMENTAL_DSN_INFO
     case '1':    /* must arrive before A0, and applies to that addr */
             /* Two strings: smtp_greeting and helo_response */
       addr->smtp_greeting = string_copy(ptr);
@@ -3594,7 +3606,7 @@ while (!done)
       addr->helo_response = string_copy(ptr);
       while(*ptr++);
       break;
-  #endif
+#endif


     case '0':
       DEBUG(D_deliver) debug_printf("A0 %s tret %d\n", addr->address, *ptr);
@@ -4885,6 +4897,14 @@ all pipes, so I do not see a reason to use non-blocking IO here
         rmt_dlv_checked_write(fd, 'R', '0', big_buffer, ptr - big_buffer);
         }


+      if (testflag(addr, af_new_conn) || testflag(addr, af_cont_conn))
+    {
+    DEBUG(D_deliver) debug_printf("%scontinued-connection\n",
+      testflag(addr, af_new_conn) ? "non-" : "");
+    big_buffer[0] = testflag(addr, af_new_conn) ? BIT(1) : BIT(2);
+        rmt_dlv_checked_write(fd, 'A', '3', big_buffer, 1);
+    }
+
 #ifdef SUPPORT_SOCKS
       if (LOGGING(proxy) && proxy_session)
     {
diff --git a/src/src/structs.h b/src/src/structs.h
index f88d126..9bfc882 100644
--- a/src/src/structs.h
+++ b/src/src/structs.h
@@ -626,6 +626,8 @@ typedef struct address_item {
     BOOL af_verify_routed:1;        /* for cached sender verify: routed OK */
     BOOL af_verify_callout:1;        /* for cached sender verify: callout was specified */
     BOOL af_include_affixes:1;        /* delivered with affixes in RCPT */
+    BOOL af_new_conn:1;            /* delivered on an fresh TCP conn */
+    BOOL af_cont_conn:1;        /* delivered (with new MAIL cmd) on an existing TCP conn */
     BOOL af_cert_verified:1;        /* delivered with verified TLS cert */
     BOOL af_pass_message:1;        /* pass message in bounces */
     BOOL af_bad_reply:1;        /* filter could not generate autoreply */
diff --git a/src/src/transport.c b/src/src/transport.c
index 39b8c41..49a84cc 100644
--- a/src/src/transport.c
+++ b/src/src/transport.c
@@ -2247,12 +2247,12 @@ if (expand_arguments)
         }


       /* If we are not just able to replace the slot that contained
-       * $address_pipe (address_pipe_argcount == 1)
-       * We have to move the existing argv by address_pipe_argcount - 1
-       * Visually if address_pipe_argcount == 2:
-       * [argv 0][argv 1][argv 2($address_pipe)][argv 3][0]
-       * [argv 0][argv 1][ap_arg0][ap_arg1][old argv 3][0]
-       */
+      $address_pipe (address_pipe_argcount == 1)
+      We have to move the existing argv by address_pipe_argcount - 1
+      Visually if address_pipe_argcount == 2:
+      [argv 0][argv 1][argv 2($address_pipe)][argv 3][0]
+      [argv 0][argv 1][ap_arg0][ap_arg1][old argv 3][0] */
+
       if (address_pipe_argcount > 1)
         memmove(
           /* current position + additional args */
@@ -2264,15 +2264,12 @@ if (expand_arguments)
         );


       /* Now we fill in the slots we just moved argv out of
-       * [argv 0][argv 1][argv 2=pipeargv[0]][argv 3=pipeargv[1]][old argv 3][0]
-       */
+      [argv 0][argv 1][argv 2=pipeargv[0]][argv 3=pipeargv[1]][old argv 3][0] */
+
       for (int address_pipe_i = 0;
            address_pipe_argv[address_pipe_i] != US 0;
-           address_pipe_i++)
-        {
+           address_pipe_i++, argcount++)
         argv[i++] = address_pipe_argv[address_pipe_i];
-        argcount++;
-        }


       /* Subtract one since we replace $address_pipe */
       argcount--;
diff --git a/src/src/transports/smtp.c b/src/src/transports/smtp.c
index c6099f9..2a2928c 100644
--- a/src/src/transports/smtp.c
+++ b/src/src/transports/smtp.c
@@ -1827,15 +1827,13 @@ return OK;




-
-
 /*************************************************
 *       Make connection for given message        *
 *************************************************/


 /*
 Arguments:
-  ctx          connection context
+  sx          connection context
   suppress_tls    if TRUE, don't attempt a TLS connection - this is set for
                     a second attempt after TLS initialization fails


@@ -2027,6 +2025,11 @@ if (!continue_hostname)
   if (sx->verify)
     HDEBUG(D_verify) debug_printf("interface=%s port=%d\n", sx->conn_args.interface, sx->port);


+ /* Arrange to report to calling process this is a new connection */
+
+ clearflag(sx->first_addr, af_cont_conn);
+ setflag(sx->first_addr, af_new_conn);
+
/* Get the actual port the connection will use, into sx->conn_args.host */

smtp_port_for_connect(sx->conn_args.host, sx->port);
@@ -3223,7 +3226,7 @@ that max_rcpt will be large, so all addresses will be done at once.
For verify we flush the pipeline after any (the only) rcpt address. */

 for (addr = sx->first_addr, address_count = 0, pipe_limit = 100;
-     addr  &&  address_count < sx->max_rcpt;
+     addr &&  address_count < sx->max_rcpt;
      addr = addr->next) if (addr->transport_return == PENDING_DEFER)
   {
   int cmds_sent;
@@ -4385,7 +4388,9 @@ if (sx->completed_addr && sx->ok && sx->send_quit)


       if (sx->first_addr)        /* More addresses still to be sent */
         {                /*   for this message              */
-        continue_sequence++;        /* Causes * in logging */
+        continue_sequence++;            /* for consistency */
+        clearflag(sx->first_addr, af_new_conn);
+        setflag(sx->first_addr, af_cont_conn);    /* Causes * in logging */
     pipelining_active = sx->pipelining_used;    /* was cleared at DATA */
         goto SEND_MESSAGE;
         }
@@ -4580,6 +4585,9 @@ if (sx->send_quit || tcw_done && !tcw)
   }
 HDEBUG(D_transport|D_acl|D_v) debug_printf_indent("  SMTP(close)>>\n");
 (void)close(sx->cctx.sock);
+sx->cctx.sock = -1;
+continue_transport = NULL;
+continue_hostname = NULL;


 #ifndef DISABLE_EVENT
 (void) event_raise(tblock->event_action, US"tcp:close", NULL);
@@ -4599,9 +4607,12 @@ if (dane_held)
     to get the domain string for SNI */


     sx->first_addr = a;
+    clearflag(a, af_cont_conn);
+    setflag(a, af_new_conn);        /* clear * from logging */
     DEBUG(D_transport) debug_printf("DANE: go-around for %s\n", a->domain);
     }
       }
+  continue_sequence = 1;            /* for consistency */
   goto DANE_DOMAINS;
   }
 #endif
diff --git a/test/log/0217 b/test/log/0217
index 48aa31f..be9427a 100644
--- a/test/log/0217
+++ b/test/log/0217
@@ -328,55 +328,55 @@
 1999-03-02 09:44:33 10HmbQ-0005vi-00 -> y47@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 msg accepted"
 1999-03-02 09:44:33 10HmbQ-0005vi-00 -> y48@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 msg accepted"
 1999-03-02 09:44:33 10HmbQ-0005vi-00 -> y49@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 msg accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 => n50@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n51@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n52@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n53@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n54@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n55@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n56@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n57@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n58@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n59@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n60@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n61@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n62@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n63@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n64@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n65@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n66@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n67@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n68@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n69@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n70@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n71@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n72@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n73@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n74@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n75@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n76@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n77@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n78@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n79@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n80@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n81@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n82@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n83@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n84@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n85@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n86@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n87@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n88@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n89@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n90@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n91@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n92@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n93@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n94@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n95@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n96@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n97@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n98@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n99@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 2 accepted"
-1999-03-02 09:44:33 10HmbQ-0005vi-00 => n100@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 mesg 3 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 => n50@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n51@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n52@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n53@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n54@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n55@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n56@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n57@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n58@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n59@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n60@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n61@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n62@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n63@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n64@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n65@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n66@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n67@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n68@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n69@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n70@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n71@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n72@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n73@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n74@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n75@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n76@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n77@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n78@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n79@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n80@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n81@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n82@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n83@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n84@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n85@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n86@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n87@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n88@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n89@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n90@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n91@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n92@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n93@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n94@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n95@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n96@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n97@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n98@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 -> n99@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 2 accepted"
+1999-03-02 09:44:33 10HmbQ-0005vi-00 => n100@??? R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 mesg 3 accepted"
 1999-03-02 09:44:33 10HmbQ-0005vi-00 Completed
diff --git a/test/log/0285 b/test/log/0285
index 4e46a52..b50fd3f 100644
--- a/test/log/0285
+++ b/test/log/0285
@@ -2,10 +2,10 @@
 1999-03-02 09:44:33 Start queue run: pid=pppp
 1999-03-02 09:44:33 10HmaX-0005vi-00 => a@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
 1999-03-02 09:44:33 10HmaX-0005vi-00 -> b@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
-1999-03-02 09:44:33 10HmaX-0005vi-00 ** c@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<c@???>: 550 Recipient not OK
-1999-03-02 09:44:33 10HmaX-0005vi-00 ** d@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<d@???>: 550 Recipient not OK
-1999-03-02 09:44:33 10HmaX-0005vi-00 => e@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
-1999-03-02 09:44:33 10HmaX-0005vi-00 -> f@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
+1999-03-02 09:44:33 10HmaX-0005vi-00 ** c@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]*: SMTP error from remote mail server after RCPT TO:<c@???>: 550 Recipient not OK
+1999-03-02 09:44:33 10HmaX-0005vi-00 ** d@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]*: SMTP error from remote mail server after RCPT TO:<d@???>: 550 Recipient not OK
+1999-03-02 09:44:33 10HmaX-0005vi-00 => e@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]* C="250 OK"
+1999-03-02 09:44:33 10HmaX-0005vi-00 -> f@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]* C="250 OK"
 1999-03-02 09:44:33 10HmaY-0005vi-00 <= <> R=10HmaX-0005vi-00 U=EXIMUSER P=local S=sss
 1999-03-02 09:44:33 10HmaY-0005vi-00 => :blackhole: <CALLER@???> R=bounces
 1999-03-02 09:44:33 10HmaY-0005vi-00 Completed
@@ -15,10 +15,10 @@
 1999-03-02 09:44:33 Start queue run: pid=pppp
 1999-03-02 09:44:33 10HmaZ-0005vi-00 => a@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
 1999-03-02 09:44:33 10HmaZ-0005vi-00 -> b@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
-1999-03-02 09:44:33 10HmaZ-0005vi-00 ** c@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<c@???>: 550 Recipient not OK
-1999-03-02 09:44:33 10HmaZ-0005vi-00 ** d@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<d@???>: 550 Recipient not OK
-1999-03-02 09:44:33 10HmaZ-0005vi-00 => e@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
-1999-03-02 09:44:33 10HmaZ-0005vi-00 -> f@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
+1999-03-02 09:44:33 10HmaZ-0005vi-00 ** c@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]*: SMTP error from remote mail server after RCPT TO:<c@???>: 550 Recipient not OK
+1999-03-02 09:44:33 10HmaZ-0005vi-00 ** d@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]*: SMTP error from remote mail server after RCPT TO:<d@???>: 550 Recipient not OK
+1999-03-02 09:44:33 10HmaZ-0005vi-00 => e@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]* C="250 OK"
+1999-03-02 09:44:33 10HmaZ-0005vi-00 -> f@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]* C="250 OK"
 1999-03-02 09:44:33 10HmaZ-0005vi-00 => g@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
 1999-03-02 09:44:33 10HmaZ-0005vi-00 -> h@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
 1999-03-02 09:44:33 10HmbA-0005vi-00 <= <> R=10HmaZ-0005vi-00 U=EXIMUSER P=local S=sss
diff --git a/test/log/0286 b/test/log/0286
index a8e02ed..3fc3b54 100644
--- a/test/log/0286
+++ b/test/log/0286
@@ -1,11 +1,11 @@
 1999-03-02 09:44:33 10HmaX-0005vi-00 <= CALLER@??? U=CALLER P=local S=sss
 1999-03-02 09:44:33 Start queue run: pid=pppp
-1999-03-02 09:44:33 10HmaX-0005vi-00 => a@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
-1999-03-02 09:44:33 10HmaX-0005vi-00 -> b@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
-1999-03-02 09:44:33 10HmaX-0005vi-00 ** c@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<c@???>: 550 Recipient not OK
+1999-03-02 09:44:33 10HmaX-0005vi-00 => a@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK message 1"
+1999-03-02 09:44:33 10HmaX-0005vi-00 -> b@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK message 1"
+1999-03-02 09:44:33 10HmaX-0005vi-00 ** c@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]*: SMTP error from remote mail server after RCPT TO:<c@???>: 550 Recipient not OK
 1999-03-02 09:44:33 10HmaX-0005vi-00 ** d@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<d@???>: 550 Recipient not OK
-1999-03-02 09:44:33 10HmaX-0005vi-00 => e@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
-1999-03-02 09:44:33 10HmaX-0005vi-00 => f@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
+1999-03-02 09:44:33 10HmaX-0005vi-00 => e@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK message 2"
+1999-03-02 09:44:33 10HmaX-0005vi-00 => f@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]* C="250 OK message 3"
 1999-03-02 09:44:33 10HmaY-0005vi-00 <= <> R=10HmaX-0005vi-00 U=EXIMUSER P=local S=sss
 1999-03-02 09:44:33 10HmaX-0005vi-00 Completed
 1999-03-02 09:44:33 End queue run: pid=pppp
@@ -17,12 +17,12 @@
 1999-03-02 09:44:33 Start queue run: pid=pppp
 1999-03-02 09:44:33 10HmaZ-0005vi-00 ** a@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<a@???>: 550 Recipient not OK
 1999-03-02 09:44:33 10HmaZ-0005vi-00 ** b@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<b@???>: 550 Recipient not OK
-1999-03-02 09:44:33 10HmaZ-0005vi-00 => c@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
-1999-03-02 09:44:33 10HmaZ-0005vi-00 -> d@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
+1999-03-02 09:44:33 10HmaZ-0005vi-00 => c@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]* C="250 OK message 4"
+1999-03-02 09:44:33 10HmaZ-0005vi-00 -> d@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]* C="250 OK message 4"
 1999-03-02 09:44:33 10HmaZ-0005vi-00 ** e@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<e@???>: 550 Recipient not OK
 1999-03-02 09:44:33 10HmaZ-0005vi-00 ** f@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<f@???>: 550 Recipient not OK
-1999-03-02 09:44:33 10HmaZ-0005vi-00 => g@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
-1999-03-02 09:44:33 10HmaZ-0005vi-00 -> h@??? R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
+1999-03-02 09:44:33 10HmaZ-0005vi-00 => g@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]* C="250 OK message 5"
+1999-03-02 09:44:33 10HmaZ-0005vi-00 -> h@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]* C="250 OK message 5"
 1999-03-02 09:44:33 10HmbA-0005vi-00 <= <> R=10HmaZ-0005vi-00 U=EXIMUSER P=local S=sss
 1999-03-02 09:44:33 10HmaZ-0005vi-00 Completed
 1999-03-02 09:44:33 End queue run: pid=pppp
diff --git a/test/log/0299 b/test/log/0299
index 4a154fb..13aa50b 100644
--- a/test/log/0299
+++ b/test/log/0299
@@ -2,5 +2,5 @@
 1999-03-02 09:44:33 10HmaX-0005vi-00 => abc <abc@???> R=r1 T=t1 S=sss ST=t3
 1999-03-02 09:44:33 10HmaX-0005vi-00 => xyz1@??? R=r2 T=t2 S=sss H=127.0.0.1 [127.0.0.1] C="250 OK"
 1999-03-02 09:44:33 10HmaX-0005vi-00 -> xyz2@??? R=r2 T=t2 S=sss H=127.0.0.1 [127.0.0.1] C="250 OK"
-1999-03-02 09:44:33 10HmaX-0005vi-00 => xyz3@??? R=r2 T=t2 S=sss H=127.0.0.1 [127.0.0.1] C="250 OK"
+1999-03-02 09:44:33 10HmaX-0005vi-00 => xyz3@??? R=r2 T=t2 S=sss H=127.0.0.1 [127.0.0.1]* C="250 OK"
 1999-03-02 09:44:33 10HmaX-0005vi-00 Completed
diff --git a/test/log/0622 b/test/log/0622
index 3d6843d..d433cbd 100644
--- a/test/log/0622
+++ b/test/log/0622
@@ -1,10 +1,10 @@
 1999-03-02 09:44:33 10HmaX-0005vi-00 <= CALLER@??? U=CALLER P=local S=sss for A@??? B@??? C@??? D@??? E@??? F@???
 1999-03-02 09:44:33 10HmaX-0005vi-00 => a@??? <A@???> R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 OK id=10HmaY-0005vi-00"
-1999-03-02 09:44:33 10HmaX-0005vi-00 => b@??? <B@???> R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 OK id=10HmaZ-0005vi-00"
-1999-03-02 09:44:33 10HmaX-0005vi-00 => c@??? <C@???> R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 OK id=10HmbA-0005vi-00"
-1999-03-02 09:44:33 10HmaX-0005vi-00 -> d@??? <D@???> R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 OK id=10HmbA-0005vi-00"
-1999-03-02 09:44:33 10HmaX-0005vi-00 -> e@??? <E@???> R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 OK id=10HmaZ-0005vi-00"
-1999-03-02 09:44:33 10HmaX-0005vi-00 -> f@??? <F@???> R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 OK id=10HmaZ-0005vi-00"
+1999-03-02 09:44:33 10HmaX-0005vi-00 => b@??? <B@???> R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 OK id=10HmaZ-0005vi-00"
+1999-03-02 09:44:33 10HmaX-0005vi-00 => c@??? <C@???> R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 OK id=10HmbA-0005vi-00"
+1999-03-02 09:44:33 10HmaX-0005vi-00 -> d@??? <D@???> R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 OK id=10HmbA-0005vi-00"
+1999-03-02 09:44:33 10HmaX-0005vi-00 -> e@??? <E@???> R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 OK id=10HmaZ-0005vi-00"
+1999-03-02 09:44:33 10HmaX-0005vi-00 -> f@??? <F@???> R=client T=send_to_server H=127.0.0.1 [127.0.0.1]* L C="250 OK id=10HmaZ-0005vi-00"
 1999-03-02 09:44:33 10HmaX-0005vi-00 Completed
 1999-03-02 09:44:33 10HmbB-0005vi-00 <= CALLER@??? U=CALLER P=local S=sss for A@??? B@??? C@??? D@??? E@??? F@???
 1999-03-02 09:44:33 10HmbB-0005vi-00 => a@??? <A@???> R=client T=send_to_server H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbC-0005vi-00"
diff --git a/test/log/5801 b/test/log/5801
index f243142..8d534d2 100644
--- a/test/log/5801
+++ b/test/log/5801
@@ -18,7 +18,7 @@
 1999-03-02 09:44:33 Start queue run: pid=pppp -qq
 1999-03-02 09:44:33 10HmbG-0005vi-00 => t20@??? R=client T=send_to_server H=dane512ee.test.ex [ip4.ip4.ip4.ip4] X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=dane C="250 OK id=10HmbI-0005vi-00"
 1999-03-02 09:44:33 10HmbG-0005vi-00 Completed
-1999-03-02 09:44:33 10HmbH-0005vi-00 => t21@??? R=client T=send_to_server H=dane512ee.test.ex [ip4.ip4.ip4.ip4]* X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=dane C="250 OK id=10HmbJ-0005vi-00"
+1999-03-02 09:44:33 10HmbH-0005vi-00 => t21@??? R=client T=send_to_server H=dane512ee.test.ex [ip4.ip4.ip4.ip4] X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=dane C="250 OK id=10HmbJ-0005vi-00"
 1999-03-02 09:44:33 10HmbH-0005vi-00 Completed
 1999-03-02 09:44:33 End queue run: pid=pppp -qq
 1999-03-02 09:44:33 10HmbK-0005vi-00 <= CALLER@??? U=CALLER P=local S=sss for t30@???
@@ -34,7 +34,7 @@
 1999-03-02 09:44:33 Start queue run: pid=pppp -qq
 1999-03-02 09:44:33 10HmbO-0005vi-00 => t40@??? R=client T=send_to_server H=dane512ee.test.ex [ip4.ip4.ip4.ip4] X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=dane C="250 OK id=10HmbQ-0005vi-00"
 1999-03-02 09:44:33 10HmbO-0005vi-00 Completed
-1999-03-02 09:44:33 10HmbP-0005vi-00 => t41@??? R=client T=send_to_server H=dane512ee.test.ex [ip4.ip4.ip4.ip4]* X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=no C="250 OK id=10HmbR-0005vi-00"
+1999-03-02 09:44:33 10HmbP-0005vi-00 => t41@??? R=client T=send_to_server H=dane512ee.test.ex [ip4.ip4.ip4.ip4] X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=no C="250 OK id=10HmbR-0005vi-00"
 1999-03-02 09:44:33 10HmbP-0005vi-00 Completed
 1999-03-02 09:44:33 End queue run: pid=pppp -qq
 1999-03-02 09:44:33 10HmbS-0005vi-00 <= CALLER@??? U=CALLER P=local S=sss for t50@???
@@ -50,7 +50,7 @@
 1999-03-02 09:44:33 Start queue run: pid=pppp -qq
 1999-03-02 09:44:33 10HmbW-0005vi-00 => t60@??? R=client T=send_to_server H=dane512ee.test.ex [ip4.ip4.ip4.ip4] X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=dane C="250 OK id=10HmbY-0005vi-00"
 1999-03-02 09:44:33 10HmbW-0005vi-00 Completed
-1999-03-02 09:44:33 10HmbX-0005vi-00 => t61@??? R=client T=send_to_server H=dane512ee.test.ex [ip4.ip4.ip4.ip4]* X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=no C="250 OK id=10HmbZ-0005vi-00"
+1999-03-02 09:44:33 10HmbX-0005vi-00 => t61@??? R=client T=send_to_server H=dane512ee.test.ex [ip4.ip4.ip4.ip4] X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=no C="250 OK id=10HmbZ-0005vi-00"
 1999-03-02 09:44:33 10HmbX-0005vi-00 Completed
 1999-03-02 09:44:33 End queue run: pid=pppp -qq
 1999-03-02 09:44:33 10HmcA-0005vi-00 <= CALLER@??? U=CALLER P=local S=sss for t70@???
@@ -58,7 +58,7 @@
 1999-03-02 09:44:33 Start queue run: pid=pppp -qq
 1999-03-02 09:44:33 10HmcA-0005vi-00 => t70@??? R=client T=send_to_server H=dane512ee.test.ex [ip4.ip4.ip4.ip4] X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=no C="250 OK id=10HmcC-0005vi-00"
 1999-03-02 09:44:33 10HmcA-0005vi-00 Completed
-1999-03-02 09:44:33 10HmcB-0005vi-00 => t71@??? R=client T=send_to_server H=dane512ee.test.ex [ip4.ip4.ip4.ip4]* X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=dane C="250 OK id=10HmcD-0005vi-00"
+1999-03-02 09:44:33 10HmcB-0005vi-00 => t71@??? R=client T=send_to_server H=dane512ee.test.ex [ip4.ip4.ip4.ip4] X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=dane C="250 OK id=10HmcD-0005vi-00"
 1999-03-02 09:44:33 10HmcB-0005vi-00 Completed
 1999-03-02 09:44:33 End queue run: pid=pppp -qq
 1999-03-02 09:44:33 10HmcE-0005vi-00 <= CALLER@??? U=CALLER P=local S=sss for t80@???
@@ -66,7 +66,7 @@
 1999-03-02 09:44:33 Start queue run: pid=pppp -qq
 1999-03-02 09:44:33 10HmcE-0005vi-00 => t80@??? R=client T=send_to_server H=dane512ee.test.ex [ip4.ip4.ip4.ip4] X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=no C="250 OK id=10HmcG-0005vi-00"
 1999-03-02 09:44:33 10HmcE-0005vi-00 Completed
-1999-03-02 09:44:33 10HmcF-0005vi-00 => t91@??? R=client T=send_to_server H=dane512ee.test.ex [ip4.ip4.ip4.ip4]* X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=dane C="250 OK id=10HmcH-0005vi-00"
+1999-03-02 09:44:33 10HmcF-0005vi-00 => t91@??? R=client T=send_to_server H=dane512ee.test.ex [ip4.ip4.ip4.ip4] X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=dane C="250 OK id=10HmcH-0005vi-00"
 1999-03-02 09:44:33 10HmcF-0005vi-00 Completed
 1999-03-02 09:44:33 End queue run: pid=pppp -qq


diff --git a/test/scripts/0000-Basic/0286 b/test/scripts/0000-Basic/0286
index 61c8b51..327fa2e 100644
--- a/test/scripts/0000-Basic/0286
+++ b/test/scripts/0000-Basic/0286
@@ -24,13 +24,13 @@ RCPT TO:
DATA
354 Send data
.
-250 OK
+250 OK message 1
MAIL FROM:
250 Sender OK
RCPT TO:
550 Recipient not OK
QUIT
-250 OK
+252 OK
*eof
220 ESMTP
EHLO
@@ -45,7 +45,7 @@ RCPT TO:
DATA
354 Send data
.
-250 OK
+250 OK message 2
MAIL FROM:
250 Sender OK
RCPT TO:
@@ -53,9 +53,9 @@ RCPT TO:
DATA
354 Send data
.
-250 OK
+250 OK message 3
QUIT
-250 OK
+252 OK
****
exim -q
****
@@ -86,9 +86,9 @@ RCPT TO:
DATA
354 Send data
.
-250 OK
+250 OK message 4
QUIT
-250 OK
+252 OK
*eof
220 ESMTP
EHLO
@@ -111,7 +111,7 @@ RCPT TO:
DATA
354 Send data
.
-250 OK
+250 OK message 5
QUIT
250 OK
****
diff --git a/test/stdout/0286 b/test/stdout/0286
index 993817e..e0a34b3 100644
--- a/test/stdout/0286
+++ b/test/stdout/0286
@@ -22,13 +22,13 @@ From: CALLER_NAME <CALLER@???>
Date: Tue, 2 Mar 1999 09:44:33 +0000

.
-250 OK
+250 OK message 1
MAIL FROM:<CALLER@???>
250 Sender OK
RCPT TO:<c@???>
550 Recipient not OK
QUIT
-250 OK
+252 OK
Expected EOF read from client
Listening on port 1224 ...
Connection request from [127.0.0.1]
@@ -52,7 +52,7 @@ From: CALLER_NAME <CALLER@???>
Date: Tue, 2 Mar 1999 09:44:33 +0000

.
-250 OK
+250 OK message 2
MAIL FROM:<CALLER@???>
250 Sender OK
RCPT TO:<f@???>
@@ -67,9 +67,9 @@ From: CALLER_NAME <CALLER@???>
Date: Tue, 2 Mar 1999 09:44:33 +0000

.
-250 OK
+250 OK message 3
QUIT
-250 OK
+252 OK
End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
@@ -101,9 +101,9 @@ From: CALLER_NAME <CALLER@???>
Date: Tue, 2 Mar 1999 09:44:33 +0000

.
-250 OK
+250 OK message 4
QUIT
-250 OK
+252 OK
Expected EOF read from client
Listening on port 1224 ...
Connection request from [127.0.0.1]
@@ -135,7 +135,7 @@ From: CALLER_NAME <CALLER@???>
Date: Tue, 2 Mar 1999 09:44:33 +0000

.
-250 OK
+250 OK message 5
QUIT
250 OK
End of script