[389-commits] ldap/schema ldap/servers

Richard Allen Megginson rmeggins at fedoraproject.org
Tue Mar 9 16:49:38 UTC 2010


 ldap/schema/60qmail.ldif            |    4 ++--
 ldap/servers/plugins/syntaxes/ces.c |    9 +++++----
 2 files changed, 7 insertions(+), 6 deletions(-)

New commits:
commit 2db1f5a13b7198de00b2b14232110ab42fc361ac
Author: Rich Megginson <rmeggins at redhat.com>
Date:   Mon Mar 8 20:53:49 2010 -0700

    Add support for additional schema/matching rules included with 389
    
    https://bugzilla.redhat.com/show_bug.cgi?id=559315
    Resolves: bug 559315
    Bug Description: Searching some attributes are now case sensitive when they were previously case-insensitive
    Reviewed by: nhosoi (Thanks!)
    Fix Description:
    1) The 60qmail.ldif schema we ship used integerMatch and IA5 syntax
    because we used not to support numericString syntax and matching rules -
    these have been changed to use the standard qmail definitions
    2) Allow IA5String syntax to use caseExactSubstringsMatch - this is required
    by krbPrincipalName

diff --git a/ldap/schema/60qmail.ldif b/ldap/schema/60qmail.ldif
index 8a62548..c118bef 100644
--- a/ldap/schema/60qmail.ldif
+++ b/ldap/schema/60qmail.ldif
@@ -134,8 +134,8 @@ attributeTypes: (
   1.3.6.1.4.1.7914.1.2.1.13
   NAME 'qmailAccountPurge'
   DESC 'The earliest date when a mailMessageStore will be purged'
-  EQUALITY integerMatch
-  SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+  EQUALITY numericStringMatch
+  SYNTAX 1.3.6.1.4.1.1466.115.121.1.36
   SINGLE-VALUE
   )
 #
diff --git a/ldap/servers/plugins/syntaxes/ces.c b/ldap/servers/plugins/syntaxes/ces.c
index 07abcd5..c0855d6 100644
--- a/ldap/servers/plugins/syntaxes/ces.c
+++ b/ldap/servers/plugins/syntaxes/ces.c
@@ -85,12 +85,13 @@ static const char *caseExactOrderingMatch_names[] = {"caseExactOrderingMatch", "
 static const char *caseExactSubstringsMatch_names[] = {"caseExactSubstringsMatch", "2.5.13.7", NULL};
 static const char *caseExactIA5SubstringsMatch_names[] = {"caseExactIA5SubstringsMatch", CASEEXACTIA5SUBSTRINGSMATCH_OID, NULL};
 
-static char *dirString_syntaxes[] = {COUNTRYSTRING_SYNTAX_OID,
-                                           DIRSTRING_SYNTAX_OID,
-                                           PRINTABLESTRING_SYNTAX_OID,NULL};
 static char *dirStringCompat_syntaxes[] = {COUNTRYSTRING_SYNTAX_OID,
                                                  PRINTABLESTRING_SYNTAX_OID,NULL};
 static char *ia5String_syntaxes[] = {IA5STRING_SYNTAX_OID,NULL};
+static char *caseExactSubstrings_syntaxes[] = {IA5STRING_SYNTAX_OID, /* allow IA5 to use cesubstrs e.g. krbPrincipalName */
+                                              COUNTRYSTRING_SYNTAX_OID,
+                                              DIRSTRING_SYNTAX_OID,
+                                              PRINTABLESTRING_SYNTAX_OID,NULL};
 
 /* for some reason vendorName and vendorVersion are dirstring but want
    to use EQUALITY caseExactIA5Match ???? RFC 3045
@@ -171,7 +172,7 @@ DIRSTRING_SYNTAX_OID, 0, dirStringCompat_syntaxes}, /* matching rule desc */
 "comparison, characters are not case folded in the Map preparation "
 "step, and only Insignificant Space Handling is applied in the "
 "Insignificant Character Handling step.",
-"1.3.6.1.4.1.1466.115.121.1.58", 0, dirString_syntaxes}, /* matching rule desc */
+"1.3.6.1.4.1.1466.115.121.1.58", 0, caseExactSubstrings_syntaxes}, /* matching rule desc */
  {"caseExactSubstringsMatch-mr", VENDOR, DS_PACKAGE_VERSION, "caseExactSubstringsMatch matching rule plugin"}, /* plugin desc */
  caseExactSubstringsMatch_names, /* matching rule name/oid/aliases */
  NULL, NULL, NULL, ces_filter_sub, ces_values2keys,




More information about the 389-commits mailing list