Skip to content
Snippets Groups Projects
Commit 03d92748 authored by Howard Chu's avatar Howard Chu
Browse files

ITS#7249 partial fix for memberof on frontendDB

parent 316afb11
Branches
Tags
No related merge requests found
......@@ -190,7 +190,16 @@ typedef struct memberof_cbinfo_t {
BerVarray memberof;
memberof_is_t what;
} memberof_cbinfo_t;
static void
memberof_set_backend( Operation *op_target, Operation *op, slap_overinst *on )
{
BackendInfo *bi = op->o_bd->bd_info;
if ( bi->bi_type == memberof.on_bi.bi_type )
op_target->o_bd->bd_info = (BackendInfo *)on->on_info;
}
static int
memberof_isGroupOrMember_cb( Operation *op, SlapReply *rs )
{
......@@ -285,7 +294,7 @@ memberof_isGroupOrMember( Operation *op, memberof_cbinfo_t *mci )
op2.ors_filterstr = mo->mo_groupFilterstr;
op2.ors_filter = &mo->mo_groupFilter;
op2.o_bd->bd_info = (BackendInfo *)on->on_info;
memberof_set_backend( &op2, op, on );
(void)op->o_bd->be_search( &op2, &rs2 );
op2.o_bd->bd_info = bi;
......@@ -307,7 +316,7 @@ memberof_isGroupOrMember( Operation *op, memberof_cbinfo_t *mci )
op2.ors_filterstr = mo->mo_memberFilterstr;
op2.ors_filter = &mo->mo_memberFilter;
op2.o_bd->bd_info = (BackendInfo *)on->on_info;
memberof_set_backend( &op2, op, on );
(void)op->o_bd->be_search( &op2, &rs2 );
op2.o_bd->bd_info = bi;
......@@ -409,7 +418,7 @@ memberof_value_modify(
oex.oe_key = (void *)&memberof;
LDAP_SLIST_INSERT_HEAD(&op2.o_extra, &oex, oe_next);
op2.o_bd->bd_info = (BackendInfo *)on->on_info;
memberof_set_backend( &op2, op, on );
(void)op->o_bd->be_modify( &op2, &rs2 );
op2.o_bd->bd_info = bi;
LDAP_SLIST_REMOVE(&op2.o_extra, &oex, OpExtra, oe_next);
......@@ -451,7 +460,7 @@ memberof_value_modify(
oex.oe_key = (void *)&memberof;
LDAP_SLIST_INSERT_HEAD(&op2.o_extra, &oex, oe_next);
op2.o_bd->bd_info = (BackendInfo *)on->on_info;
memberof_set_backend( &op2, op, on );
(void)op->o_bd->be_modify( &op2, &rs2 );
op2.o_bd->bd_info = bi;
LDAP_SLIST_REMOVE(&op2.o_extra, &oex, OpExtra, oe_next);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment