mirror of
https://git.openldap.org/openldap/openldap.git
synced 2026-02-18 10:07:56 -05:00
Merge branch 'its10440' into 'master'
ITS#10440: clear incoming controls where it doesn't make sense to pass them See merge request openldap/openldap!830
This commit is contained in:
commit
1b713eadb0
7 changed files with 28 additions and 0 deletions
|
|
@ -137,6 +137,8 @@ autogroup_add_member_to_group( Operation *op, BerValue *dn, BerValue *ndn, autog
|
|||
modlist->sml_flags = SLAP_MOD_INTERNAL;
|
||||
modlist->sml_next = NULL;
|
||||
|
||||
memset( o.o_ctrlflag, 0, sizeof(o.o_ctrlflag) );
|
||||
|
||||
o.o_opid = 0; /* shared with op, saved above */
|
||||
o.o_tag = LDAP_REQ_MODIFY;
|
||||
o.o_callback = &cb;
|
||||
|
|
@ -194,6 +196,8 @@ autogroup_add_member_values_to_group( Operation *op, struct berval *dn, autogrou
|
|||
modlist.sml_flags = SLAP_MOD_INTERNAL;
|
||||
modlist.sml_next = NULL;
|
||||
|
||||
memset( o.o_ctrlflag, 0, sizeof(o.o_ctrlflag) );
|
||||
|
||||
o.o_opid = 0;
|
||||
o.o_tag = LDAP_REQ_MODIFY;
|
||||
o.o_callback = &cb;
|
||||
|
|
@ -268,6 +272,8 @@ autogroup_delete_member_from_group( Operation *op, BerValue *dn, BerValue *ndn,
|
|||
modlist->sml_flags = SLAP_MOD_INTERNAL;
|
||||
modlist->sml_next = NULL;
|
||||
|
||||
memset( o.o_ctrlflag, 0, sizeof(o.o_ctrlflag) );
|
||||
|
||||
o.o_opid = 0;
|
||||
o.o_callback = &cb;
|
||||
o.o_tag = LDAP_REQ_MODIFY;
|
||||
|
|
@ -325,6 +331,8 @@ autogroup_delete_member_values_from_group( Operation *op, struct berval *dn, aut
|
|||
modlist.sml_flags = SLAP_MOD_INTERNAL;
|
||||
modlist.sml_next = NULL;
|
||||
|
||||
memset( o.o_ctrlflag, 0, sizeof(o.o_ctrlflag) );
|
||||
|
||||
o.o_opid = 0;
|
||||
o.o_tag = LDAP_REQ_MODIFY;
|
||||
o.o_callback = &cb;
|
||||
|
|
@ -510,6 +518,8 @@ autogroup_add_members_from_filter( Operation *op, Entry *e, autogroup_entry_t *a
|
|||
if ( op->o_abandon && !modify )
|
||||
return 0;
|
||||
|
||||
memset( o.o_ctrlflag, 0, sizeof(o.o_ctrlflag) );
|
||||
|
||||
o.ors_attrsonly = 0;
|
||||
o.o_tag = LDAP_REQ_SEARCH;
|
||||
|
||||
|
|
@ -559,6 +569,7 @@ autogroup_add_members_from_filter( Operation *op, Entry *e, autogroup_entry_t *a
|
|||
rs_reinit( &rs, REP_RESULT );
|
||||
|
||||
o = *op;
|
||||
|
||||
o.o_opid = 0;
|
||||
o.o_callback = &null_cb;
|
||||
o.o_tag = LDAP_REQ_MODIFY;
|
||||
|
|
@ -567,6 +578,8 @@ autogroup_add_members_from_filter( Operation *op, Entry *e, autogroup_entry_t *a
|
|||
o.o_ndn = op->o_bd->be_rootndn;
|
||||
o.o_req_dn = age->age_dn;
|
||||
o.o_req_ndn = age->age_ndn;
|
||||
|
||||
memset( o.o_ctrlflag, 0, sizeof(o.o_ctrlflag) );
|
||||
o.o_relax = SLAP_CONTROL_CRITICAL;
|
||||
o.o_managedsait = SLAP_CONTROL_NONCRITICAL;
|
||||
o.o_permissive_modify = 1;
|
||||
|
|
|
|||
|
|
@ -686,6 +686,7 @@ constraint_violation( constraint *c, struct berval *bv, Operation *op )
|
|||
}
|
||||
nop.o_do_not_cache = 1;
|
||||
nop.o_callback = &cb;
|
||||
memset( nop.o_ctrlflag, 0, sizeof(nop.o_ctrlflag) );
|
||||
|
||||
nop.ors_scope = c->lud->lud_scope;
|
||||
nop.ors_deref = LDAP_DEREF_NEVER;
|
||||
|
|
|
|||
|
|
@ -292,6 +292,8 @@ memberof_isGroupOrMember( Operation *op, memberof_cbinfo_t *mci )
|
|||
op2.ors_slimit = 1;
|
||||
op2.ors_tlimit = SLAP_NO_LIMIT;
|
||||
|
||||
memset( op2.o_ctrlflag, 0, sizeof(op2.o_ctrlflag) );
|
||||
|
||||
if ( mci->what & MEMBEROF_IS_GROUP ) {
|
||||
SlapReply rs2 = { REP_RESULT };
|
||||
|
||||
|
|
@ -389,6 +391,8 @@ memberof_value_modify(
|
|||
op2.orm_no_opattrs = 1;
|
||||
op2.o_dont_replicate = 1;
|
||||
|
||||
memset( op2.o_ctrlflag, 0, sizeof(op2.o_ctrlflag) );
|
||||
|
||||
/* main op has already completed if we got here, so even
|
||||
* if its abandon flag was set we must complete as well. */
|
||||
op2.o_abandon = 0;
|
||||
|
|
@ -568,6 +572,8 @@ memberof_addcheck( Operation *op )
|
|||
mo_addcheck_t ma;
|
||||
SlapReply rs = {REP_SEARCH};
|
||||
|
||||
memset( o.o_ctrlflag, 0, sizeof(o.o_ctrlflag) );
|
||||
|
||||
o.o_dn = op->o_bd->be_rootdn;
|
||||
o.o_ndn = op->o_bd->be_rootndn;
|
||||
o.o_bd->bd_info = (BackendInfo *)on->on_info;
|
||||
|
|
|
|||
|
|
@ -399,6 +399,7 @@ nestgroup_memberFilter( Operation *op, int mbr_nf, nestgroup_filterinst_t *mbr_f
|
|||
Operation o = *op;
|
||||
int i;
|
||||
|
||||
memset( o.o_ctrlflag, 0, sizeof(o.o_ctrlflag) );
|
||||
o.o_managedsait = SLAP_CONTROL_CRITICAL;
|
||||
sc = op->o_tmpcalloc( 1, sizeof(slap_callback) + sizeof(gdn_info), op->o_tmpmemctx);
|
||||
gi = (gdn_info *)(sc+1);
|
||||
|
|
@ -580,6 +581,7 @@ nestgroup_memberOfVals( Operation *op, slap_overinst *on, Attribute *a )
|
|||
AttributeAssertion mava;
|
||||
int i;
|
||||
|
||||
memset( o.o_ctrlflag, 0, sizeof(o.o_ctrlflag) );
|
||||
o.o_managedsait = SLAP_CONTROL_CRITICAL;
|
||||
sc = op->o_tmpcalloc( 1, sizeof(slap_callback) + sizeof(gdn_info), op->o_tmpmemctx);
|
||||
gi = (gdn_info *)(sc+1);
|
||||
|
|
|
|||
|
|
@ -253,6 +253,7 @@ retcode_op_internal( Operation *op, SlapReply *rs )
|
|||
op2.ors_limit = NULL;
|
||||
op2.ors_attrsonly = 0;
|
||||
op2.ors_attrs = slap_anlist_all_attributes;
|
||||
memset( op2.o_ctrlflag, 0, sizeof(op2.o_ctrlflag) );
|
||||
|
||||
ber_str2bv_x( "(objectClass=errAbsObject)",
|
||||
STRLENOF( "(objectClass=errAbsObject)" ),
|
||||
|
|
|
|||
|
|
@ -2294,6 +2294,9 @@ syncprov_play_accesslog( Operation *op, SlapReply *rs, sync_control *srs,
|
|||
fop.o_bd = db;
|
||||
fop.o_dn = db->be_rootdn;
|
||||
fop.o_ndn = db->be_rootndn;
|
||||
|
||||
memset( fop.o_ctrlflag, 0, sizeof(fop.o_ctrlflag) );
|
||||
|
||||
rc = be_entry_get_rw( &fop, &si->si_logbase, NULL, ad_minCSN, 0, &e );
|
||||
if ( rc ) {
|
||||
return rc;
|
||||
|
|
|
|||
|
|
@ -292,6 +292,8 @@ void glue_parent(Operation *op) {
|
|||
nop.o_req_ndn = ndn;
|
||||
nop.ora_e = e;
|
||||
|
||||
memset( nop.o_ctrlflag, 0, sizeof(nop.o_ctrlflag) );
|
||||
|
||||
nop.o_bd->bd_info = (BackendInfo *) on->on_info->oi_orig;
|
||||
syncrepl_add_glue(&nop, e);
|
||||
nop.o_bd->bd_info = (BackendInfo *) on;
|
||||
|
|
|
|||
Loading…
Reference in a new issue