git://git.exim.org
/
users
/
heiko
/
exim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix -bi. Bug 2590
[users/heiko/exim.git]
/
test
/
runtest
diff --git
a/test/runtest
b/test/runtest
index 3c16a1e465a5e13a14deebee59d90d81315dd850..e4cf7ad6da5f65e79d0356dd479d56823d9e850a 100755
(executable)
--- a/
test/runtest
+++ b/
test/runtest
@@
-404,7
+404,7
@@
RESET_AFTER_EXTRA_LINE_READ:
# Replace the Exim version number (may appear in various places)
# patchexim should have fixed this for us
# Replace the Exim version number (may appear in various places)
# patchexim should have fixed this for us
- #s/
(Exim) \d+\.\d+[\w_-]*/$1
x.yz/i;
+ #s/
Exim \K\d+[._]\d+[\w_-]*/
x.yz/i;
# Replace Exim message ids by a unique series
s/((?:[^\W_]{6}-){2}[^\W_]{2})
# Replace Exim message ids by a unique series
s/((?:[^\W_]{6}-){2}[^\W_]{2})
@@
-827,11
+827,10
@@
RESET_AFTER_EXTRA_LINE_READ:
# ======== IP error numbers and messages ========
# These vary between operating systems
# ======== IP error numbers and messages ========
# These vary between operating systems
- s/Can't assign requested address/Network Error/;
- s/Cannot assign requested address/Network Error/;
+ s/Can(no|')t assign requested address/Network Error/;
s/Operation timed out/Connection timed out/;
s/Address family not supported by protocol family/Network Error/;
s/Operation timed out/Connection timed out/;
s/Address family not supported by protocol family/Network Error/;
- s/Network
is
unreachable/Network Error/;
+ s/Network
( is)?
unreachable/Network Error/;
s/Invalid argument/Network Error/;
s/\(\d+\): Network/(dd): Network/;
s/Invalid argument/Network Error/;
s/\(\d+\): Network/(dd): Network/;
@@
-893,7
+892,7
@@
RESET_AFTER_EXTRA_LINE_READ:
# The sizes of filter files may vary because of the substitution of local
# filenames, logins, etc.
# The sizes of filter files may vary because of the substitution of local
# filenames, logins, etc.
- s/^\d+(?= bytes read from )/ssss/;
+ s/^\d+(?=
(\(tainted\) )?
bytes read from )/ssss/;
# ======== OpenSSL error messages ========
# ======== OpenSSL error messages ========
@@
-917,7
+916,7
@@
RESET_AFTER_EXTRA_LINE_READ:
s/renamed tmp\/\d+\.[^.]+\.(\S+) as new\/\d+\.[^.]+\.(\S+)/renamed tmp\/MAILDIR.$1 as new\/MAILDIR.$1/;
# Maildir file names in general
s/renamed tmp\/\d+\.[^.]+\.(\S+) as new\/\d+\.[^.]+\.(\S+)/renamed tmp\/MAILDIR.$1 as new\/MAILDIR.$1/;
# Maildir file names in general
- s/\b\d+\.
H
\d+P\d+\b/dddddddddd.HddddddPddddd/;
+ s/\b\d+\.
M
\d+P\d+\b/dddddddddd.HddddddPddddd/;
# Maildirsize data
while (/^\d+S,\d+C\s*$/)
# Maildirsize data
while (/^\d+S,\d+C\s*$/)
@@
-1029,6
+1028,9
@@
RESET_AFTER_EXTRA_LINE_READ:
# TLS resumption is not always supported by the build
next if /^tls_resumption_hosts =/;
next if /^-tls_resumption/;
# TLS resumption is not always supported by the build
next if /^tls_resumption_hosts =/;
next if /^-tls_resumption/;
+
+ # gsasl library version may not support some methods
+ s/250-AUTH ANONYMOUS PLAIN SCRAM-SHA-1\K SCRAM-SHA-256//;
}
# ======== stderr ========
}
# ======== stderr ========
@@
-1044,6
+1046,7
@@
RESET_AFTER_EXTRA_LINE_READ:
s/(?<=^>>>>>>>>>>>>>>>> Exim pid=)\d+(?= terminating)/pppp/;
s/^(proxy-proc \w{5}-pid) \d+$/$1 pppp/;
s/^(?:\s*\d+ )(exec .* -oPX)$/pppp $1/;
s/(?<=^>>>>>>>>>>>>>>>> Exim pid=)\d+(?= terminating)/pppp/;
s/^(proxy-proc \w{5}-pid) \d+$/$1 pppp/;
s/^(?:\s*\d+ )(exec .* -oPX)$/pppp $1/;
+ next if /(?:postfork: | fork(?:ing|ed) for )/;
# IP address lookups use gethostbyname() when IPv6 is not supported,
# and gethostbyname2() or getipnodebyname() when it is.
# IP address lookups use gethostbyname() when IPv6 is not supported,
# and gethostbyname2() or getipnodebyname() when it is.
@@
-1207,10
+1210,19
@@
RESET_AFTER_EXTRA_LINE_READ:
# timing variance, run-to-run
s/^time on queue = \K1s/0s/;
# timing variance, run-to-run
s/^time on queue = \K1s/0s/;
+ # content-scan: file order can vary in directory
+ s%unspool_mbox\(\): unlinking 'TESTSUITE/spool/scan/[^/]*/\K[^\']*%FFFFFFFFF%;
+
# Skip hosts_require_dane checks when the options
# are unset, because dane ain't always there.
next if /in\shosts_require_dane\?\sno\s\(option\sunset\)/x;
# Skip hosts_require_dane checks when the options
# are unset, because dane ain't always there.
next if /in\shosts_require_dane\?\sno\s\(option\sunset\)/x;
+ # daemon notifier socket
+ s/^(\s*\d+|ppppp) (creating notifier socket)$/ppppp $2/;
+ s/^ \@(.*exim_daemon_notify)$/ $1/;
+ s/^(\s*\d+|ppppp) \@?(.*exim_daemon_notify)$/ppppp $2/;
+ next if /unlinking notifier socket/;
+
# DISABLE_OCSP
next if /in hosts_requ(est|ire)_ocsp\? (no|yes)/;
# DISABLE_OCSP
next if /in hosts_requ(est|ire)_ocsp\? (no|yes)/;
@@
-1312,6
+1324,9
@@
RESET_AFTER_EXTRA_LINE_READ:
next if /^Waiting for MySQL server to answer/;
next if /mysqladmin: CREATE DATABASE failed; .* database exists/;
next if /^Waiting for MySQL server to answer/;
next if /mysqladmin: CREATE DATABASE failed; .* database exists/;
+ # Postgres version-dependent differences
+ s/^initdb: warning: (enabling "trust" authentication for local connections)$/\nWARNING: $1/;
+
# Not all builds include DMARC
next if /^DMARC: no (dmarc_tld_file|sender_host_address)$/ ;
# Not all builds include DMARC
next if /^DMARC: no (dmarc_tld_file|sender_host_address)$/ ;
@@
-1325,6
+1340,9
@@
RESET_AFTER_EXTRA_LINE_READ:
s/^errno = \d+$/errno = EEE/;
s/^writing error \d+: /writing error EEE: /;
s/^errno = \d+$/errno = EEE/;
s/^writing error \d+: /writing error EEE: /;
+ # Some platforms have to flip to slow-mode taint-checking
+ next if /switching to slow-mode taint checking/;
+
# When Exim is checking the size of directories for maildir, it uses
# the check_dir_size() function to scan directories. Of course, the order
# of the files that are obtained using readdir() varies from system to
# When Exim is checking the size of directories for maildir, it uses
# the check_dir_size() function to scan directories. Of course, the order
# of the files that are obtained using readdir() varies from system to
@@
-1409,6
+1427,9
@@
RESET_AFTER_EXTRA_LINE_READ:
my ($prefix, $t_diff) = ($1, $3 - $2);
s/DKIM: d=.* t=[0-9]* x=[0-9]* /${prefix} t=T x=T+${t_diff} /;
}
my ($prefix, $t_diff) = ($1, $3 - $2);
s/DKIM: d=.* t=[0-9]* x=[0-9]* /${prefix} t=T x=T+${t_diff} /;
}
+ # GnuTLS reports a different keysize vs. OpenSSL, for ed25519 keys
+ s/signer: [^ ]* bits:\K 256/ 253/;
+ s/public key too short:\K 256 bits/ 253 bits/;
# port numbers
s/(?:\[[^\]]*\]:|port )\K$parm_port_d/PORT_D/;
# port numbers
s/(?:\[[^\]]*\]:|port )\K$parm_port_d/PORT_D/;
@@
-1421,6
+1442,9
@@
RESET_AFTER_EXTRA_LINE_READ:
# Platform differences for errno values (eg. Hurd). Leave 0 and negative numbers alone.
s/R=\w+ T=\w+ defer\K \([1-9]\d*\): / (EEE): /;
# Platform differences for errno values (eg. Hurd). Leave 0 and negative numbers alone.
s/R=\w+ T=\w+ defer\K \([1-9]\d*\): / (EEE): /;
+
+ # Platform differences in errno strings
+ s/Arg list too long/Argument list too long/;
}
# ======== mail ========
}
# ======== mail ========
@@
-2321,8
+2345,7
@@
if (/^gnutls/)
# The "killdaemon" command should ultimately follow the starting of any Exim
# The "killdaemon" command should ultimately follow the starting of any Exim
-# daemon with the -bd option. We kill with SIGINT rather than SIGTERM to stop
-# it outputting "Terminated" to the terminal when not in the background.
+# daemon with the -bd option.
if (/^killdaemon/)
{
if (/^killdaemon/)
{
@@
-2334,14
+2357,14
@@
if (/^killdaemon/)
print ">> killdaemon: recovered pid $pid\n" if $debug;
if ($pid)
{
print ">> killdaemon: recovered pid $pid\n" if $debug;
if ($pid)
{
- run_system("sudo /bin/kill -
INT
$pid");
+ run_system("sudo /bin/kill -
TERM
$pid");
wait;
}
} else {
$pid = `cat $parm_cwd/spool/exim-daemon.*`;
if ($pid)
{
wait;
}
} else {
$pid = `cat $parm_cwd/spool/exim-daemon.*`;
if ($pid)
{
- run_system("sudo /bin/kill -
INT
$pid");
+ run_system("sudo /bin/kill -
TERM
$pid");
close DAEMONCMD; # Waits for process
}
}
close DAEMONCMD; # Waits for process
}
}