From: Kurt Zeilenga Date: Tue, 16 May 2006 01:41:38 +0000 (+0000) Subject: From HEAD: X-Git-Tag: OPENLDAP_REL_ENG_2_3_22~1 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=a7b1d7a6abc625e4092aa3a6b48d75b475e08778;p=openldap From HEAD: + Fixed slapd-bdb/hdb referral issue (ITS#4548) --- diff --git a/CHANGES b/CHANGES index 9e197d0c1d..315e0a734c 100644 --- a/CHANGES +++ b/CHANGES @@ -19,8 +19,9 @@ OpenLDAP 2.3.22 Release Fixed slapd slap_send_ldap_result bug (ITS#4499) Fixed slapd thread pool init issue (ITS#4513) Added slapd syncrepl mandatory searchbase check - Fixed slapd-bdb pre/post-read freeing (ITS#4532) - Fixed slapd-bdb pre/post-read unavailable issue (ITS#4538) + Fixed slapd-bdb/hdb pre/post-read freeing (ITS#4532) + Fixed slapd-bdb/hdb pre/post-read unavailable issue (ITS#4538) + Fixed slapd-bdb/hdb referral issue (ITS#4548) Fixed slapd-hdb IDL sort issue (ITS#4531) Fixed slapd-ldap proxyAuthz of bound identity/override (ITS#4497) Fixed slapd-ldap/meta protocol version propagation (ITS#4488) diff --git a/servers/slapd/back-bdb/referral.c b/servers/slapd/back-bdb/referral.c index 97305f9f54..168da4677d 100644 --- a/servers/slapd/back-bdb/referral.c +++ b/servers/slapd/back-bdb/referral.c @@ -91,8 +91,11 @@ dn2entry_retry: (long) op->o_tag, op->o_req_dn.bv_val, e->e_name.bv_val ); if( is_entry_referral( e ) ) { + BerVarray ref = get_entry_referrals( op, e ); rc = LDAP_OTHER; - rs->sr_ref = get_entry_referrals( op, e ); + rs->sr_ref = referral_rewrite( ref, NULL, + &op->o_req_dn, LDAP_SCOPE_DEFAULT ); + ber_bvarray_free( ref ); if ( rs->sr_ref ) { rs->sr_matched = ber_strdup_x( e->e_name.bv_val, op->o_tmpmemctx );