Update cms-test.pl to handle some Unix like Windows environments where
[openssl.git] / test / cms-test.pl
index 6ad78834649bb9b647163c869ea642e115221841..e5122bfb19f23349cdbfe538624958e69f2de123 100644 (file)
 # OpenSSL PKCS#7 and CMS implementations.
 
 my $ossl_path;
 # OpenSSL PKCS#7 and CMS implementations.
 
 my $ossl_path;
-
-if ( -f "../apps/openssl$ENV{EXE_EXT}" ) {
+my $redir = " 2>cms.err 1>cms.out";
+# Make MSYS work
+if ( $^O eq "MSWin32" && -f "../apps/openssl.exe" ) {
+    $ossl_path = "cmd /c ..\\apps\\openssl";
+elsif ( -f "../apps/openssl$ENV{EXE_EXT}" ) {
     $ossl_path = "../util/shlib_wrap.sh ../apps/openssl";
 }
 elsif ( -f "..\\out32dll\\openssl.exe" ) {
     $ossl_path = "../util/shlib_wrap.sh ../apps/openssl";
 }
 elsif ( -f "..\\out32dll\\openssl.exe" ) {
@@ -382,14 +385,14 @@ sub run_smime_tests {
                $rscmd =~ s/-stream//;  
                $rvcmd =~ s/-stream//;
                }
                $rscmd =~ s/-stream//;  
                $rvcmd =~ s/-stream//;
                }
-        system("$scmd$rscmd 2>cms.err 1>cms.out");
+        system("$scmd$rscmd$redir");
         if ($?) {
             print "$tnam: generation error\n";
             $$rv++;
             exit 1 if $halt_err;
             next;
         }
         if ($?) {
             print "$tnam: generation error\n";
             $$rv++;
             exit 1 if $halt_err;
             next;
         }
-        system("$vcmd$rvcmd 2>cms.err 1>cms.out");
+        system("$vcmd$rvcmd$redir");
         if ($?) {
             print "$tnam: verify error\n";
             $$rv++;
         if ($?) {
             print "$tnam: verify error\n";
             $$rv++;