mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-01-24 13:24:56 +08:00
restore the existing BackendDB, in case overlays are in use
This commit is contained in:
parent
ea92291cb6
commit
419d2925b1
@ -193,8 +193,8 @@ fe_extended( Operation *op, SlapReply *rs )
|
|||||||
reqdata = *op->ore_reqdata;
|
reqdata = *op->ore_reqdata;
|
||||||
}
|
}
|
||||||
|
|
||||||
if( !(ext = find_extop(supp_ext_list, &op->ore_reqoid )))
|
ext = find_extop(supp_ext_list, &op->ore_reqoid );
|
||||||
{
|
if ( ext == NULL ) {
|
||||||
Statslog( LDAP_DEBUG_STATS, "%s EXT oid=%s\n",
|
Statslog( LDAP_DEBUG_STATS, "%s EXT oid=%s\n",
|
||||||
op->o_log_prefix, op->ore_reqoid.bv_val, 0, 0, 0 );
|
op->o_log_prefix, op->ore_reqoid.bv_val, 0, 0, 0 );
|
||||||
Debug( LDAP_DEBUG_ANY, "do_extended: unsupported operation \"%s\"\n",
|
Debug( LDAP_DEBUG_ANY, "do_extended: unsupported operation \"%s\"\n",
|
||||||
@ -210,6 +210,8 @@ fe_extended( Operation *op, SlapReply *rs )
|
|||||||
op->ore_reqoid.bv_val, 0 ,0 );
|
op->ore_reqoid.bv_val, 0 ,0 );
|
||||||
|
|
||||||
{ /* start of OpenLDAP extended operation */
|
{ /* start of OpenLDAP extended operation */
|
||||||
|
BackendDB *bd = op->o_bd;
|
||||||
|
|
||||||
rs->sr_err = (ext->ext_main)( op, rs );
|
rs->sr_err = (ext->ext_main)( op, rs );
|
||||||
|
|
||||||
if( rs->sr_err != SLAPD_ABANDON ) {
|
if( rs->sr_err != SLAPD_ABANDON ) {
|
||||||
@ -224,7 +226,7 @@ fe_extended( Operation *op, SlapReply *rs )
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ( op->o_bd == NULL )
|
if ( op->o_bd == NULL )
|
||||||
op->o_bd = frontendDB;
|
op->o_bd = bd;
|
||||||
send_ldap_extended( op, rs );
|
send_ldap_extended( op, rs );
|
||||||
|
|
||||||
if ( rs->sr_ref != default_referral ) {
|
if ( rs->sr_ref != default_referral ) {
|
||||||
|
Loading…
Reference in New Issue
Block a user