]> git.sur5r.net Git - openldap/commitdiff
ITS#4310 suffix add w/ default ref fix
authorKurt Zeilenga <kurt@openldap.org>
Fri, 6 Jan 2006 20:46:15 +0000 (20:46 +0000)
committerKurt Zeilenga <kurt@openldap.org>
Fri, 6 Jan 2006 20:46:15 +0000 (20:46 +0000)
CHANGES
servers/slapd/back-bdb/referral.c
servers/slapd/back-ldbm/referral.c

diff --git a/CHANGES b/CHANGES
index cf055d745613b078cb3655026e4251803b8694ac..844df17211ea1f2abf8c4cdd5201e16bf9c55f99 100644 (file)
--- 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)
index 2e602ddd6aa006f8e16e311ee379503dc24ca3f0..97305f9f54ea0d0b0bf2560cc2b749c610aaf065 100644 (file)
@@ -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 );
index 756f99d9e8b36f83efca7751a43bc1a223a295d8..ba3e5fb2ec68c91940337e4cf5c230b4bb9deaa5 100644 (file)
@@ -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 );