When trying spooled messages, account for the local-interface in grouping for a conne...
[users/jgh/exim.git] / test / runtest
index 9fd8188793626266a7d87dc8d544c36f4223131e..2baf2cafd7950c94d930734a52ac912e906aef43 100755 (executable)
@@ -491,6 +491,9 @@ RESET_AFTER_EXTRA_LINE_READ:
   s/Exim\sstatistics\sfrom\s\d{4}-\d\d-\d\d\s\d\d:\d\d:\d\d\sto\s
     \d{4}-\d\d-\d\d\s\d\d:\d\d:\d\d/Exim statistics from <time> to <time>/x;
 
+  # Treat ECONNRESET the same as ECONNREFUSED.  At least some systems give
+  # us the former on a new connection.
+  s/(could not connect to .*: Connection) reset by peer$/$1 refused/;
 
   # ======== TLS certificate algorithms ========
   # Test machines might have various different TLS library versions supporting
@@ -806,7 +809,7 @@ RESET_AFTER_EXTRA_LINE_READ:
 
   # ==========================================================
   # MIME boundaries in RFC3461 DSN messages
-  s/\d{8,10}-eximdsn-\d{8,10}/NNNNNNNNNN-eximdsn-MMMMMMMMMM/;
+  s/\d{8,10}-eximdsn-\d+/NNNNNNNNNN-eximdsn-MMMMMMMMMM/;
 
   # ==========================================================
   # Some munging is specific to the specific file types
@@ -1322,6 +1325,9 @@ $munges =
     'optional_cert_hostnames' =>
     { 'stderr' => '/in tls_verify_cert_hostnames\? no/' },
 
+    'loopback' =>
+    { 'stdout' => 's/[[](127\.0\.0\.1|::1)]/[IP_LOOPBACK_ADDR]/' },
+
   };
 
 
@@ -1339,7 +1345,7 @@ $munges =
 #  [4] TRUE if this is a log file whose deliveries must be sorted
 #  [5] an optional custom munge command
 #
-# Arguments: Optionally, name of a custom munge to run.
+# Arguments: Optionally, name of a single custom munge to run.
 # Returns:   0 if the output compared equal
 #            1 if re-run needed (files may have been updated)
 
@@ -1683,7 +1689,7 @@ if (/^dump\s+(\S+)/)
 
     foreach $item (@temp)
       {
-      $item =~ s/^\s*(.*)\n(.*)\n?\s*$/\1\n\2/m;
+      $item =~ s/^\s*(.*)\n(.*)\n?\s*$/$1\n$2/m;
       print OUT "  $item\n";
       }
     }
@@ -3402,6 +3408,7 @@ foreach $test (@test_list)
   $stdout_skip = 0;
   $rmfiltertest = 0;
   $is_ipv6test = 0;
+  $TEST_STATE->{munge} = "";
 
   # Remove the associative arrays used to hold checked mail files and msglogs