Fix use of -no-proxy option of CMP app
[openssl.git] / test / recipes / 15-test_mp_rsa.t
index c69f3f31a5586a1eed00030111e7537fa376a3a0..ad7018789bb468e57a7741af1f3df5166956f3c5 100644 (file)
@@ -1,5 +1,5 @@
 #! /usr/bin/env perl
-# Copyright 2017 The OpenSSL Project Authors. All Rights Reserved.
+# Copyright 2017-2020 The OpenSSL Project Authors. All Rights Reserved.
 # Copyright 2017 BaishanCloud. All rights reserved.
 #
 # Licensed under the Apache License 2.0 (the "License").  You may not use
@@ -17,12 +17,6 @@ use OpenSSL::Test::Utils;
 
 setup("test_mp_rsa");
 
-plan tests => 31;
-
-ok(run(test(["rsa_mp_test"])), "running rsa multi prime test");
-
-my $cleartext = data_file("plain_text");
-
 my @test_param = (
     # 3 primes, 2048-bit
     {
@@ -41,8 +35,14 @@ my @test_param = (
     },
 );
 
+plan tests => 1 + scalar(@test_param) * 5 * (disabled('deprecated-3.0') ? 1 : 2);
+
+ok(run(test(["rsa_mp_test"])), "running rsa multi prime test");
+
+my $cleartext = data_file("plain_text");
+
 # genrsa
-run_mp_tests(0);
+run_mp_tests(0) if !disabled('deprecated-3.0');
 # evp
 run_mp_tests(1);
 
@@ -55,42 +55,43 @@ sub run_mp_tests {
         my $name = ($evp ? "evp" : "") . "${bits}p${primes}";
 
         if ($evp) {
-            ok(run(app([ 'openssl', 'genpkey', '-out', 'rsamptest.pem',
-                         '-algorithm', 'RSA', '-pkeyopt', "rsa_keygen_primes:$primes",
-                         '-pkeyopt', "rsa_keygen_bits:$bits"])), "genrsa $name");
-        } else {
-            ok(run(app([ 'openssl', 'genrsa', '-out', 'rsamptest.pem',
-                         '-primes', $primes, $bits])), "genrsa $name");
-        }
-
-        ok(run(app([ 'openssl', 'rsa', '-check', '-in', 'rsamptest.pem',
-                     '-noout'])), "rsa -check $name");
-        if ($evp) {
-            ok(run(app([ 'openssl', 'pkeyutl', '-inkey', 'rsamptest.pem',
+            ok(run(app([ 'openssl', 'genpkey', '-out', "rsamptest-$name.pem",
+                         '-algorithm', 'RSA',
+                         '-pkeyopt', "rsa_keygen_primes:$primes",
+                         '-pkeyopt', "rsa_keygen_bits:$bits"])),
+               "genrsa $name");
+            ok(run(app([ 'openssl', 'pkey', '-check',
+                         '-in', "rsamptest-$name.pem", '-noout'])),
+               "rsa -check $name");
+            ok(run(app([ 'openssl', 'pkeyutl', '-inkey', "rsamptest-$name.pem",
                          '-encrypt', '-in', $cleartext,
-                         '-out', 'rsamptest.enc' ])), "rsa $name encrypt");
-            ok(run(app([ 'openssl', 'pkeyutl', '-inkey', 'rsamptest.pem',
-                         '-decrypt', '-in', 'rsamptest.enc',
-                         '-out', 'rsamptest.dec' ])), "rsa $name decrypt");
+                         '-out', "rsamptest-$name.enc" ])),
+               "rsa $name encrypt");
+            ok(run(app([ 'openssl', 'pkeyutl', '-inkey', "rsamptest-$name.pem",
+                         '-decrypt', '-in', "rsamptest-$name.enc",
+                         '-out', "rsamptest-$name.dec" ])),
+               "rsa $name decrypt");
         } else {
-            ok(run(app([ 'openssl', 'rsautl', '-inkey', 'rsamptest.pem',
+            ok(run(app([ 'openssl', 'genrsa', '-out', "rsamptest-$name.pem",
+                         '-primes', $primes, $bits])), "genrsa $name");
+            ok(run(app([ 'openssl', 'rsa', '-check',
+                         '-in', "rsamptest-$name.pem", '-noout'])),
+               "rsa -check $name");
+            ok(run(app([ 'openssl', 'rsautl', '-inkey', "rsamptest-$name.pem",
                          '-encrypt', '-in', $cleartext,
-                         '-out', 'rsamptest.enc' ])), "rsa $name encrypt");
-            ok(run(app([ 'openssl', 'rsautl', '-inkey', 'rsamptest.pem',
-                         '-decrypt', '-in', 'rsamptest.enc',
-                         '-out', 'rsamptest.dec' ])), "rsa $name decrypt");
+                         '-out', "rsamptest-$name.enc" ])),
+               "rsa $name encrypt");
+            ok(run(app([ 'openssl', 'rsautl', '-inkey', "rsamptest-$name.pem",
+                         '-decrypt', '-in', "rsamptest-$name.enc",
+                         '-out', "rsamptest-$name.dec" ])),
+               "rsa $name decrypt");
         }
-
-        ok(check_msg(), "rsa $name check result");
-
-        # clean up temp files
-        unlink 'rsamptest.pem';
-        unlink 'rsamptest.enc';
-        unlink 'rsamptest.dec';
+        ok(check_msg("rsamptest-$name.dec"), "rsa $name check result");
     }
 }
 
 sub check_msg {
+    my $decrypted = shift;
     my $msg;
     my $dec;
 
@@ -98,7 +99,7 @@ sub check_msg {
     binmode $fh;
     read($fh, $msg, 10240);
     close $fh;
-    open($fh, "<", "rsamptest.dec") or return 0;
+    open($fh, "<", $decrypted ) or return 0;
     binmode $fh;
     read($fh, $dec, 10240);
     close $fh;