mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Yuriy Movchan
28.02.2021 36d41eebc3cc0b9656a688976c26bf5f819188c3
fix: Fix rebuild-index in FIPS mode (#189)

3 files modified
32 ■■■■■ changed files
opendj-cli/src/main/java/com/forgerock/opendj/cli/Utils.java 22 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/SSLConnectionFactory.java 6 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/util/cli/LDAPConnectionArgumentParser.java 4 ●●●● patch | view | raw | blame | history
opendj-cli/src/main/java/com/forgerock/opendj/cli/Utils.java
@@ -34,7 +34,9 @@
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.Date;
import java.util.Optional;
import java.util.StringTokenizer;
import java.util.TimeZone;
@@ -732,4 +734,24 @@
        return ERR_TOOL_CONFLICTING_ARGS.get(arg1.getLongIdentifier(), arg2.getLongIdentifier());
    }
    /**
     * Returns value of first present {@link Argument}.
     *
     * @param args
     *         Array of {@link Argument} which should checked
     */
    public static String getFirstArgumentValue(final Argument ... args) {
        if (args == null) {
            return null;
        }
        for (Argument arg : args) {
            if (arg.isPresent()) {
                return arg.getValue();
            }
        }
        return null;
    }
}
opendj-server-legacy/src/main/java/org/opends/server/tools/SSLConnectionFactory.java
@@ -47,7 +47,7 @@
import com.forgerock.opendj.cli.ConnectionFactoryProvider;
import static org.opends.messages.ToolMessages.*;
import static com.forgerock.opendj.util.StaticUtils.isFips;
/**
 * This class provides SSL connection related utility functions.
@@ -127,6 +127,9 @@
             getTrustManagers(KeyStore.getDefaultType(), null, trustStorePath,
                              trustStorePassword);
        trustManagers = new TrustManager[tmpTrustManagers.length];
        if (isFips()) {
          trustManagers = tmpTrustManagers;
        } else {
        for (int i=0; i < trustManagers.length; i++)
        {
          trustManagers[i] =
@@ -134,6 +137,7 @@
                                               tmpTrustManagers[i]);
        }
      }
      }
      if(keyStorePath != null)
      {
        keyManagers = getKeyManagers(KeyStore.getDefaultType(), null,
opendj-server-legacy/src/main/java/org/opends/server/util/cli/LDAPConnectionArgumentParser.java
@@ -166,10 +166,10 @@
        SSLConnectionFactory sslConnectionFactory = new SSLConnectionFactory();
        sslConnectionFactory.init(args.getTrustAllArg().isPresent(),
                                  args.getKeyStorePathArg().getValue(),
                                  args.getKeyStorePasswordArg().getValue(),
                                  getFirstArgumentValue(args.getKeyStorePasswordArg(), args.getKeyStorePasswordFileArg()),
                                  clientAlias,
                                  args.getTrustStorePathArg().getValue(),
                                  args.getTrustStorePasswordArg().getValue());
                                  getFirstArgumentValue(args.getTrustStorePasswordArg(), args.getTrustStorePasswordFileArg()));
        connectionOptions.setSSLConnectionFactory(sslConnectionFactory);
      }
      catch (SSLConnectionException sce)