# File descriptor numbers may vary
s/^writing data block fd=\d+/writing data block fd=dddd/;
- s/running as transport filter: write=\d+ read=\d+/running as transport filter: write=dddd read=dddd/;
+ s/(running as transport filter:) fd_write=\d+ fd_read=\d+/$1 fd_write=dddd fd_read=dddd/;
# ======== Dumpdb output ========
# signature algorithm names
s/RSA-SHA1/RSA-SHA/;
- # -d produces a list of environement variables as they are checked if they exist in the
- # in the environment. Unfortunately this list isn't always in the same order. For now we
- # just remove this list
- #
- if (/^\w+ in keep_environment/)
- {
- my @lines = $_;
- while (<IN>)
- {
- if (/^\w+ in keep_environment/)
- {
- push @lines, $_;
- next;
- }
- print MUNGED sort grep { !/^(SHLVL|_) / } @lines;
- redo LINE;
- }
- }
-
# ======== Caller's login, uid, gid, home, gecos ========
s/waiting for children of \d+/waiting for children of pppp/;
s/waiting for (\S+) \(\d+\)/waiting for $1 (pppp)/;
+ # The spool header file name varies with PID
+ s%^(Writing spool header file: .*/hdr).[0-9]{1,5}%$1.pppp%;
+
# ======== Port numbers ========
# Incoming port numbers may vary, but not in daemon startup line.
while (<IN>) { last if !/^\s/; }
}
+ # remote port numbers vary
+ s/(Connection request from 127.0.0.1 port) \d{1,5}/$1 sssss/;
+
+ # 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;
+
+ # SUPPORT_PROXY
+ next if /host in hosts_proxy\?/;
+
+ # Experimental_International
+ next if / in smtputf8_advertise_hosts\? no \(option unset\)/;
+
+ # Environment cleaning
+ next if /\w+ in keep_environment\? (yes|no)/;
+
+ # Sizes vary with test hostname
+ s/^cmd buf flush \d+ bytes$/cmd buf flush ddd bytes/;
+
# 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
@saved = ();
}
- # remote port numbers vary
- s/(Connection request from 127.0.0.1 port) \d{1,5}/$1 sssss/;
-
- # 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;
-
- # SUPPORT_PROXY
- next if /host in hosts_proxy\?/;
-
- # Experimental_International
- next if / in smtputf8_advertise_hosts\? no \(option unset\)/;
-
# Skip some lines that Exim puts out at the start of debugging output
# because they will be different in different binaries.
{ 'mainlog' => 's/^(.* SMTP protocol synchronization error .* next input=.{8}).*$/$1<suppressed>/',
'rejectlog' => 's/^(.* SMTP protocol synchronization error .* next input=.{8}).*$/$1<suppressed>/'},
+ 'debuglog_stdout' =>
+ { 'stdout' => 's/^\d\d:\d\d:\d\d\s+\d+ //;
+ s/Process \d+ is ready for new message/Process pppp is ready for new message/'
+ },
};
# Various Unix management commands are recognized
if (/^(ln|ls|du|mkdir|mkfifo|touch|cp|cat)\s/ ||
- /^sudo (rmdir|rm|chown|chmod)\s/)
+ /^sudo\s(rmdir|rm|chown|chmod)\s/)
{
run_system("$_ >>test-stdout 2>>test-stderr");
return 1;
# command, triggered by $server_pid being non-zero. The server sends its output
# to a different file. The variable $server_opts, if not empty, contains
# options to disable IPv4 or IPv6 if necessary.
+# This works because "server" swallows its stdin before waiting for a connection.
if (/^server\s+(.*)$/)
{