From: Kurt Zeilenga Date: Fri, 6 Jan 2006 20:46:15 +0000 (+0000) Subject: ITS#4310 suffix add w/ default ref fix X-Git-Tag: OPENLDAP_REL_ENG_2_3_16~9 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=472eea502dc98fe3347392b1cb65ac6bbe2d1dc9;p=openldap ITS#4310 suffix add w/ default ref fix --- diff --git a/CHANGES b/CHANGES index cf055d7456..844df17211 100644 --- a/CHANGES +++ b/CHANGES @@ -6,10 +6,12 @@ OpenLDAP 2.3.16 Engineering Flapd slapd cn=config bad ACL syntax modfy crash (ITS#4306) Fixed slapd ACL/suffix configuration issue (ITS#4307) Fixed slapd-bdb/hdb cache issue (ITS#4308) + Fixed slapd-bdb/hdb/ldbm suffix add with default referral issue (ITS#4310) Build environment Replace sched_yield(2) on Linux with select(2) (ITS#3950) Documentation Added slapd-bdb(5) cachefree description + Updated misc. manual pages OpenLDAP 2.3.15 Release Fixed slapd strerror logging bug (ITS#4292) diff --git a/servers/slapd/back-bdb/referral.c b/servers/slapd/back-bdb/referral.c index 2e602ddd6a..97305f9f54 100644 --- a/servers/slapd/back-bdb/referral.c +++ b/servers/slapd/back-bdb/referral.c @@ -101,7 +101,7 @@ dn2entry_retry: bdb_cache_return_entry_r (bdb->bi_dbenv, &bdb->bi_cache, e, &lock); e = NULL; - } else if ( default_referral != NULL ) { + } else if ( !be_issuffix( op->o_bd, &op->o_req_ndn ) && default_referral != NULL ) { rc = LDAP_OTHER; rs->sr_ref = referral_rewrite( default_referral, NULL, &op->o_req_dn, LDAP_SCOPE_DEFAULT ); diff --git a/servers/slapd/back-ldbm/referral.c b/servers/slapd/back-ldbm/referral.c index 756f99d9e8..ba3e5fb2ec 100644 --- a/servers/slapd/back-ldbm/referral.c +++ b/servers/slapd/back-ldbm/referral.c @@ -63,7 +63,7 @@ ldbm_back_referrals( cache_return_entry_r( &li->li_cache, matched ); - } else if ( default_referral != NULL ) { + } else if ( !be_issuffix( op->o_bd, &op->o_req_ndn ) && default_referral != NULL ) { rc = rs->sr_err = LDAP_OTHER; rs->sr_ref = referral_rewrite( default_referral, NULL, &op->o_req_dn, LDAP_SCOPE_DEFAULT );