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

jvergara
24.41.2008 196e543d5d1ae8e410cd8bd53bfff51f901b78fe
Fix for issue Issue 2867 Answering ' ' (a space) for directory manager to the setup menu leads to corrupted config

Do not allow empty DNs as Directory Manager DN nor as base DNs. Appart from that an infinite loop has been fixed when the user provided a badly formed DN in the command-line.
2 files modified
16 ■■■■ changed files
opends/src/messages/messages/tools.properties 4 ●●● patch | view | raw | blame | history
opends/src/server/org/opends/server/tools/InstallDS.java 12 ●●●●● patch | view | raw | blame | history
opends/src/messages/messages/tools.properties
@@ -2005,7 +2005,7 @@
INFO_CREATERC_JAVA_ARGS_DESCRIPTION_1377=A set of arguments that should be \
 passed to the JVM when running the server
SEVERE_ERR_CREATERC_JAVA_HOME_DOESNT_EXIST_1378=The directory %s specified \
 as the JAVA_HOME path does not exist or is not a directory
 as the OPENDS_JAVA_HOME path does not exist or is not a directory
INFO_INSTALLDS_STATUS_COMMAND_LINE_1379=To see basic server configuration \
status and configuration you can launch %s
INFO_INSTALLDS_PROMPT_ENABLE_SSL_1380=Do you want to enable SSL?
@@ -2222,3 +2222,5 @@
 must be run in offline or online mode, returning the appropriate error code
SEVERE_ERR_BACKUPDB_REPEATED_BACKEND_ID_1497=The backend ID '%s' has been \
 specified several times
MILD_ERR_INSTALLDS_EMPTY_DN_RESPONSE_1498=ERROR:  The empty LDAP DN is not \
 a valid value
opends/src/server/org/opends/server/tools/InstallDS.java
@@ -22,7 +22,7 @@
 * CDDL HEADER END
 *
 *
 *      Portions Copyright 2006-2007 Sun Microsystems, Inc.
 *      Portions Copyright 2006-2008 Sun Microsystems, Inc.
 */
package org.opends.server.tools;
@@ -581,6 +581,10 @@
    try
    {
      DN.decode(dmDN);
      if (dmDN.trim().isEmpty())
      {
        errorMessages.add(ERR_INSTALLDS_EMPTY_DN_RESPONSE.get());
      }
    }
    catch (Exception e)
    {
@@ -912,6 +916,7 @@
      else
      {
        dns.addAll(arg.getValues());
        usedProvided = true;
      }
      LinkedList<String> toRemove = new LinkedList<String>();
      for (String dn : dns)
@@ -919,6 +924,11 @@
        try
        {
          DN.decode(dn);
          if (dn.trim().isEmpty())
          {
            toRemove.add(dn);
            println(ERR_INSTALLDS_EMPTY_DN_RESPONSE.get());
          }
        }
        catch (Exception e)
        {