From 29fe732ac1b566284f235409b596e7fce0eee15f Mon Sep 17 00:00:00 2001 From: Quanah Gibson-Mount Date: Mon, 23 Feb 2009 03:12:09 +0000 Subject: [PATCH] ITS#5968 --- CHANGES | 1 + servers/slapd/dn.c | 17 ++--------------- 2 files changed, 3 insertions(+), 15 deletions(-) diff --git a/CHANGES b/CHANGES index 7622e86c96..e7576e55ec 100644 --- a/CHANGES +++ b/CHANGES @@ -5,6 +5,7 @@ OpenLDAP 2.4.15 Release (2009/02/19) Fixed libldap GnuTLS compilation (ITS#5955) Fixed slapd bconfig conversion again (ITS#5346) Fixed slapd behavior with superior objectClasses again (ITS#5517) + Fixed slapd RFC4512 behavior with same attr in RDN (ITS#5968) Fixed slapd corrupt contextCSN (ITS#5947) Fixed slapd syncrepl order to match on add/delete (ITS#5954) Fixed slapd adding rdn with other values (ITS#5965) diff --git a/servers/slapd/dn.c b/servers/slapd/dn.c index c3669d6406..638187411a 100644 --- a/servers/slapd/dn.c +++ b/servers/slapd/dn.c @@ -250,21 +250,8 @@ AVA_Sort( LDAPRDN rdn, int nAVAs ) ava_j = rdn[ j ]; a = strcmp( ava_i->la_attr.bv_val, ava_j->la_attr.bv_val ); - if ( a == 0 ) { - int d; - - d = ava_i->la_value.bv_len - ava_j->la_value.bv_len; - - a = memcmp( ava_i->la_value.bv_val, - ava_j->la_value.bv_val, - d <= 0 ? ava_i->la_value.bv_len - : ava_j->la_value.bv_len ); - - if ( a == 0 ) { - a = d; - } - } - /* Duplicates are not allowed */ + /* RFC4512 does not allow multiple AVAs + * with the same attribute type in RDN (ITS#5968) */ if ( a == 0 ) return LDAP_INVALID_DN_SYNTAX; -- 2.39.5