X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=test%2Fruntest;h=fbe30e9105d20dbe3441d7400ae49661a335ebc7;hb=c1395714ab954e16856721178aa2ec677c8ad830;hp=088c742be5ff0532712a4a6139542594ee6d8620;hpb=b9acff7b379be7a2e40ddcfb4b6eafe80e884164;p=user%2Fhenk%2Fcode%2Fexim.git diff --git a/test/runtest b/test/runtest index 088c742be..fbe30e910 100755 --- a/test/runtest +++ b/test/runtest @@ -50,7 +50,7 @@ my $cf = 'bin/cf -exact'; my $cr = "\r"; my $debug = 0; my $flavour = do { - my $f = Exim::Runtest::flavour(); + my $f = Exim::Runtest::flavour() // ''; (grep { $f eq $_ } Exim::Runtest::flavours()) ? $f : 'FOO'; }; my $force_continue = 0; @@ -2612,10 +2612,13 @@ close(IN); close(OUT); print("Probing with config file: $parm_cwd/test-config\n"); -open(EXIMINFO, "$parm_exim -d -C $parm_cwd/test-config -DDIR=$parm_cwd " . - "-bP exim_user exim_group 2>&1|") || - die "** Cannot run $parm_exim: $!\n"; -while() + +my $eximinfo = "$parm_exim -d -C $parm_cwd/test-config -DDIR=$parm_cwd -bP exim_user exim_group"; +chomp(my @eximinfo = `$eximinfo 2>&1`); +die "$0: Can't run $eximinfo\n" if $? == -1; + +warn 'Got ' . $?>>8 . " from $eximinfo\n" if $?; +foreach (@eximinfo) { if (my ($version) = /^Exim version (\S+)/) { my $git = `git describe --dirty=-XX --match 'exim-4*'`; @@ -2641,21 +2644,21 @@ ___ if /^Configure owner:\s*(\d+):(\d+)/; print if /wrong owner/; } -close(EXIMINFO); -if (defined $parm_eximuser) - { - if ($parm_eximuser =~ /^\d+$/) { $parm_exim_uid = $parm_eximuser; } - else { $parm_exim_uid = getpwnam($parm_eximuser); } - } -else - { - print "Unable to extract exim_user from binary.\n"; - print "Check if Exim refused to run; if so, consider:\n"; - print " TRUSTED_CONFIG_LIST ALT_CONFIG_PREFIX WHITELIST_D_MACROS\n"; - print "If debug permission denied, are you in the exim group?\n"; - die "Failing to get information from binary.\n"; - } +if (not defined $parm_eximuser) { + die <