From b7ab8a03dde69765027e36fcf9664469924c5389 Mon Sep 17 00:00:00 2001
From: sin <sin@localhost>
Date: Tue, 21 Apr 2009 23:31:27 +0000
Subject: [PATCH] issue# 3388:Name exceptions should always been allowed if ds-cfg-allow-attribute-name-exceptions=true

---
 opendj-sdk/opends/src/server/org/opends/server/schema/ObjectClassSyntax.java |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/opendj-sdk/opends/src/server/org/opends/server/schema/ObjectClassSyntax.java b/opendj-sdk/opends/src/server/org/opends/server/schema/ObjectClassSyntax.java
index 164be07..dc8f792 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/schema/ObjectClassSyntax.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/schema/ObjectClassSyntax.java
@@ -1161,6 +1161,8 @@
     // Skip over any spaces at the beginning of the value.
     char c = '\u0000';
     int  length = lowerStr.length();
+    boolean allowExceptions =
+                  DirectoryServer.allowAttributeNameExceptions();
     while ((startPos < length) && ((c = lowerStr.charAt(startPos)) == ' '))
     {
       startPos++;
@@ -1200,7 +1202,8 @@
             lastWasPeriod = true;
           }
         }
-        else if (! isDigit(c))
+        else if (! (isDigit(c) ||
+                allowExceptions && (isAlpha(c) || (c=='-') || (c=='_'))))
         {
           // Technically, this must be an illegal character.  However, it is
           // possible that someone just got sloppy and did not include a space

--
Gitblit v1.10.0