changeset 1782:5006ef5740de

8190449: sun/security/pkcs11/KeyPairGenerator/TestDH2048.java fails on Solaris x64 5.10 Reviewed-by: igerasim
author coffeys
date Tue, 07 Nov 2017 17:30:51 +0000
parents 6413f9b6fed2
children f503cd2e97ad
files test/sun/security/pkcs11/KeyPairGenerator/TestDH2048.java
diffstat 1 files changed, 10 insertions(+), 24 deletions(-) [+]
line wrap: on
line diff
--- a/test/sun/security/pkcs11/KeyPairGenerator/TestDH2048.java	Tue Nov 14 18:27:43 2017 -0800
+++ b/test/sun/security/pkcs11/KeyPairGenerator/TestDH2048.java	Tue Nov 07 17:30:51 2017 +0000
@@ -56,35 +56,21 @@
         kpg.initialize(512);
         KeyPair kp1 = kpg.generateKeyPair();
 
-        kpg.initialize(768);
-        kp1 = kpg.generateKeyPair();
-
-        kpg.initialize(1024);
-        kp1 = kpg.generateKeyPair();
-
-        kpg.initialize(1536);
-        kp1 = kpg.generateKeyPair();
-
-        kpg.initialize(2048);
-        kp1 = kpg.generateKeyPair();
-
+        int[] test_values = {768, 1024, 1536, 2048, 3072, 4096, 6144, 8192};
+        for (int i : test_values)
         try {
-            kpg.initialize(3072);
-            kp1 = kpg.generateKeyPair();
-
-            kpg.initialize(4096);
-            kp1 = kpg.generateKeyPair();
-
-            kpg.initialize(6144);
-            kp1 = kpg.generateKeyPair();
-
-            kpg.initialize(8192);
+            kpg.initialize(i);
             kp1 = kpg.generateKeyPair();
         } catch (InvalidParameterException ipe) {
             // NSS (as of version 3.13) has a hard coded maximum limit
             // of 2236 or 3072 bits for DHE keys.
-            System.out.println("4096-bit DH key pair generation: " + ipe);
-            if (!p.getName().equals("SunPKCS11-NSS")) {
+            // SunPKCS11-Solaris has limit of 4096 on older systems
+            String prov = p.getName();
+            System.out.println(i + "-bit DH key pair generation: " + ipe);
+            if ((prov.equals("SunPKCS11-NSS") && i > 2048) ||
+                (prov.equals("SunPKCS11-Solaris") && i > 4096)) {
+                // OK
+            } else {
                 throw ipe;
             }
         }