This bug was introduced with RHDS 7.1 sp 1 - the fix to bug 164843. The root cause of the problem is that slapi_attr_type_cmp with SLAPI_TYPE_CMP_EXACT does a case sensitive match. Attribute types are case insensitive.
The problem also exists in Fedora DS 1.0 and 1.0.1.
Here is the one line fix: *** attr.c.~1.6.~ 2005-08-24 18:58:27.000000000 -0600 --- attr.c 2006-02-02 18:45:49.000000000 -0700 *************** *** 112,118 **** switch ( opt ) { case SLAPI_TYPE_CMP_EXACT: /* compare base name + options as given */ ! rc = strcmp( a1, a2 ); break; case SLAPI_TYPE_CMP_BASE: /* ignore options on both names - compare base names only */ --- 112,118 ---- switch ( opt ) { case SLAPI_TYPE_CMP_EXACT: /* compare base name + options as given */ ! rc = strcasecmp( a1, a2 ); break; case SLAPI_TYPE_CMP_BASE: /* ignore options on both names - compare base names only */
*** Bug 180349 has been marked as a duplicate of this bug. ***
Checking in ldapserver/ldap/servers/slapd/attr.c; /cvs/dirsec/ldapserver/ldap/servers/slapd/attr.c,v <-- attr.c new revision: 1.7; previous revision: 1.6 done
After discussing this bug with development it turns out that QE will not be able to observe a failing case for this issue. It failed on an interim build of DS 7.1 SP 1 and not on DS 7.1 SP 1 GA bits. I have developed a test case which *should* verify the problem if it were to occur again in the future and it has been reviewed by Rich.