X-Git-Url: https://git.exim.org/users/jgh/exim.git/blobdiff_plain/5f921f97ea35dc788cebd28adbf95877a25a5b1a..78ca7fd5bf7ce54246738dddeb320ae83ceb2396:/test/runtest diff --git a/test/runtest b/test/runtest index d060fda92..efcd3ed1c 100755 --- a/test/runtest +++ b/test/runtest @@ -1393,9 +1393,23 @@ $munges = { 'mail' => '/^(X-(Remote-MTA-(smtp-greeting|helo-response)|Exim-Diagnostic|(body|message)-linecount):|Remote-MTA: X-ip;)/' }, + 'optional_config' => + { 'stdout' => '/^( + dkim_(canon|domain|private_key|selector|sign_headers|strict) + |gnutls_require_(kx|mac|protocols) + |hosts_(requ(est|ire)|try)_(dane|ocsp) + |hosts_(avoid|nopass|require|verify_avoid)_tls + |socks_proxy + |tls_[^ ]* + )($|[ ]=)/x' }, + 'sys_bindir' => { 'mainlog' => 's%/(usr/)?bin/%SYSBINDIR/%' }, + 'sync_check_data' => + { 'mainlog' => 's/^(.* SMTP protocol synchronization error .* next input=.{8}).*$/$1/', + 'rejectlog' => 's/^(.* SMTP protocol synchronization error .* next input=.{8}).*$/$1/'}, + }; @@ -2577,7 +2591,7 @@ else die "Unable to check the TRUSTED_CONFIG_LIST, seems to be empty?\n"; } -open(EXIMINFO, "$parm_exim -bV -C $parm_cwd/test-config -DDIR=$parm_cwd |") || +open(EXIMINFO, "$parm_exim -d-all+transport -bV -C $parm_cwd/test-config -DDIR=$parm_cwd |") || die "** Cannot run $parm_exim: $!\n"; print "-" x 78, "\n"; @@ -2586,7 +2600,7 @@ while () { my(@temp); - if (/^Exim version/) { print; } + if (/^(Exim|Library) version/) { print; } elsif (/^Size of off_t: (\d+)/) { @@ -3205,6 +3219,11 @@ if ($parm_caller_uid eq $parm_exim_uid) { tests_exit(-1, "Exim user ($parm_eximuser,$parm_exim_uid) cannot be " ."the same as caller ($parm_caller,$parm_caller_uid)"); } +if ($parm_caller_gid eq $parm_exim_gid) { + tests_exit(-1, "Exim group ($parm_eximgroup,$parm_exim_gid) cannot be " + ."the same as caller's ($parm_caller) group as it confuses " + ."results analysis"); +} print "The Exim user needs access to the test suite directory. Checking ..."; @@ -3752,7 +3771,15 @@ $0 = "[runtest $testno]"; $_ = $force_continue ? "c" : ; tests_exit(1) if /^q?$/i; log_failure($log_failed_filename, $testno, "exit code unexpected") if (/^c$/i && $force_continue); - print "... continue forced\n" if $force_continue; + if ($force_continue) + { + print "\nstderr tail:\n"; + print "===================\n"; + system("tail -20 test-stderr"); + print "===================\n"; + print "... continue forced\n"; + } + last if /^[rc]$/i; if (/^e$/i) {