From 3ba4a8a412fa60c947ecb3cee9d90fb24e590d54 Mon Sep 17 00:00:00 2001
From: Yannick Lecaillez <ylecaillez@forgerock.com>
Date: Wed, 18 Nov 2015 15:24:16 +0000
Subject: [PATCH] OPENDJ-2399: Start server fails if the jvm used does not contains an elliptic curve certificate provider.

---
 opendj-server-legacy/src/main/java/org/opends/quicksetup/util/Utils.java |   63 +++++++++----------------------
 1 files changed, 19 insertions(+), 44 deletions(-)

diff --git a/opendj-server-legacy/src/main/java/org/opends/quicksetup/util/Utils.java b/opendj-server-legacy/src/main/java/org/opends/quicksetup/util/Utils.java
index b11bb41..1c46653 100644
--- a/opendj-server-legacy/src/main/java/org/opends/quicksetup/util/Utils.java
+++ b/opendj-server-legacy/src/main/java/org/opends/quicksetup/util/Utils.java
@@ -1842,67 +1842,27 @@
     case JKS:
       cmdLine.add("--useJavaKeystore");
       cmdLine.add(userData.getSecurityOptions().getKeystorePath());
-      if (userData.getSecurityOptions().getKeystorePassword() != null)
-      {
-        cmdLine.add("--keyStorePassword");
-        cmdLine.add(OBFUSCATED_VALUE);
-      }
-
-      if (userData.getSecurityOptions().getAliasToUse() != null)
-      {
-        cmdLine.add("--certNickname");
-        cmdLine.add(userData.getSecurityOptions().getAliasToUse());
-      }
+      addKeyStoreAndCert(userData.getSecurityOptions(), cmdLine);
       break;
 
     case JCEKS:
       cmdLine.add("--useJCEKS");
       cmdLine.add(userData.getSecurityOptions().getKeystorePath());
 
-      if (userData.getSecurityOptions().getKeystorePassword() != null)
-      {
-        cmdLine.add("--keyStorePassword");
-        cmdLine.add(OBFUSCATED_VALUE);
-      }
-
-      if (userData.getSecurityOptions().getAliasToUse() != null)
-      {
-        cmdLine.add("--certNickname");
-        cmdLine.add(userData.getSecurityOptions().getAliasToUse());
-      }
+      addKeyStoreAndCert(userData.getSecurityOptions(), cmdLine);
       break;
 
     case PKCS12:
       cmdLine.add("--usePkcs12keyStore");
       cmdLine.add(userData.getSecurityOptions().getKeystorePath());
 
-      if (userData.getSecurityOptions().getKeystorePassword() != null)
-      {
-        cmdLine.add("--keyStorePassword");
-        cmdLine.add(OBFUSCATED_VALUE);
-      }
-
-      if (userData.getSecurityOptions().getAliasToUse() != null)
-      {
-        cmdLine.add("--certNickname");
-        cmdLine.add(userData.getSecurityOptions().getAliasToUse());
-      }
+      addKeyStoreAndCert(userData.getSecurityOptions(), cmdLine);
       break;
 
     case PKCS11:
       cmdLine.add("--usePkcs11Keystore");
 
-      if (userData.getSecurityOptions().getKeystorePassword() != null)
-      {
-        cmdLine.add("--keyStorePassword");
-        cmdLine.add(OBFUSCATED_VALUE);
-      }
-
-      if (userData.getSecurityOptions().getAliasToUse() != null)
-      {
-        cmdLine.add("--certNickname");
-        cmdLine.add(userData.getSecurityOptions().getAliasToUse());
-      }
+      addKeyStoreAndCert(userData.getSecurityOptions(), cmdLine);
       break;
 
     default:
@@ -1912,6 +1872,21 @@
     return cmdLine;
   }
 
+  private static void addKeyStoreAndCert(final SecurityOptions securityOptions, final List<String> cmdLine)
+  {
+    if (securityOptions.getKeystorePassword() != null)
+    {
+      cmdLine.add("--keyStorePassword");
+      cmdLine.add(OBFUSCATED_VALUE);
+    }
+
+    for(String alias : securityOptions.getAliasesToUse())
+    {
+      cmdLine.add("--certNickname");
+      cmdLine.add(alias);
+    }
+  }
+
   /**
    * Returns the list of equivalent command-lines that must be executed to
    * enable or initialize replication as the setup does.

--
Gitblit v1.10.0