diff options
Diffstat (limited to 'openssl/test/cms-test.pl')
-rw-r--r-- | openssl/test/cms-test.pl | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/openssl/test/cms-test.pl b/openssl/test/cms-test.pl index f55fd69ce..51abeef2c 100644 --- a/openssl/test/cms-test.pl +++ b/openssl/test/cms-test.pl @@ -59,23 +59,31 @@ my $redir = " 2> cms.err > cms.out"; if ( $^O eq "VMS" && -f "OSSLX:openssl.exe" ) { $ossl_path = "pipe mcr OSSLX:openssl"; $null_path = "NL:"; + # On VMS, the lowest 3 bits of the exit code indicates severity + # 1 is success (perl translates it to 0 for $?), 2 is error + # (perl doesn't translate it) + $failure_code = 512; # 2 << 8 = 512 } # Make MSYS work elsif ( $^O eq "MSWin32" && -f "../apps/openssl.exe" ) { $ossl_path = "cmd /c ..\\apps\\openssl"; - $null_path = "/dev/null"; + $null_path = "NUL"; + $failure_code = 256; } elsif ( -f "../apps/openssl$ENV{EXE_EXT}" ) { $ossl_path = "../util/shlib_wrap.sh ../apps/openssl"; $null_path = "/dev/null"; + $failure_code = 256; } elsif ( -f "..\\out32dll\\openssl.exe" ) { $ossl_path = "..\\out32dll\\openssl.exe"; - $null_path = "/dev/null"; + $null_path = "NUL"; + $failure_code = 256; } elsif ( -f "..\\out32\\openssl.exe" ) { $ossl_path = "..\\out32\\openssl.exe"; - $null_path = "/dev/null"; + $null_path = "NUL"; + $failure_code = 256; } else { die "Can't find OpenSSL executable"; @@ -97,7 +105,7 @@ if ($? == 0) { $no_ec = 1; } -elsif ($^O eq "VMS" ? $? == 512 : $? == 256) +elsif ($? == $failure_code) { $no_ec = 0; } @@ -111,7 +119,7 @@ if ($? == 0) { $no_ec2m = 1; } -elsif ($? == 256) +elsif ($? == $failure_code) { $no_ec2m = 0; } @@ -125,7 +133,7 @@ if ($? == 0) { $no_ecdh = 1; } -elsif ($? == 256) +elsif ($? == $failure_code) { $no_ecdh = 0; } |