diff --git a/CHANGES b/CHANGES index de07f3baa7c9c6469e6d8b6ae3436a4bea2e36b1..55579a004a6eda25f8e6b5276a604e1c5a4d7e33 100644 --- a/CHANGES +++ b/CHANGES @@ -23,6 +23,7 @@ OpenLDAP 2.4.13 Engineering Added slapo-constraint support for relax control (ITS#5705) Added slapo-constraint "set" type (ITS#5702) Fixed slapo-constraint filter parsing error (ITS#5751) + Fixed slapo-rwm objectClass preservation (ITS#5760) Fixed slapo-rwm rewriting undefined filter (ITS#5731) Fixed slapo-rwm reusing freed filter (ITS#5732) Added slapo-translucent try local bind when remote fails (ITS#5656) diff --git a/servers/slapd/overlays/rwm.c b/servers/slapd/overlays/rwm.c index f9301ccf9fc846ccacb3a303745e230098d9ca98..1c8e704751d670a50502ec6c52942a51e70619ec 100644 --- a/servers/slapd/overlays/rwm.c +++ b/servers/slapd/overlays/rwm.c @@ -1177,7 +1177,9 @@ remove_oc:; last--; bv--; - } else if ( mapped.bv_val != bv[0].bv_val ) { + } else if ( mapped.bv_val != bv[0].bv_val + && ber_bvstrcasecmp( &mapped, &bv[0] ) != 0 ) + { int i; for ( i = 0; !BER_BVISNULL( &(*ap)->a_vals[ i ] ); i++ ) {