From: Quanah Gibson-Mount Date: Sun, 12 Dec 2010 01:51:45 +0000 (+0000) Subject: More for ITS#6608 X-Git-Tag: OPENLDAP_REL_ENG_2_4_24~266 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=ce1a18d1460751628bc06d01e84d5c0752f191e9;p=openldap More for ITS#6608 --- diff --git a/servers/slapd/overlays/accesslog.c b/servers/slapd/overlays/accesslog.c index aa165b7d0c..4f4bbafafa 100644 --- a/servers/slapd/overlays/accesslog.c +++ b/servers/slapd/overlays/accesslog.c @@ -1377,6 +1377,11 @@ static int accesslog_response(Operation *op, SlapReply *rs) { if ( lo->mask & LOG_OP_WRITES ) { slap_callback *cb; + + /* These internal ops are not logged */ + if ( op->o_dont_replicate && op->orm_no_opattrs ) + return SLAP_CB_CONTINUE; + ldap_pvt_thread_mutex_lock( &li->li_log_mutex ); old = li->li_old; li->li_old = NULL; @@ -1758,6 +1763,10 @@ accesslog_op_mod( Operation *op, SlapReply *rs ) slap_overinst *on = (slap_overinst *)op->o_bd->bd_info; log_info *li = on->on_bi.bi_private; + /* These internal ops are not logged */ + if ( op->o_dont_replicate && op->orm_no_opattrs ) + return SLAP_CB_CONTINUE; + if ( li->li_ops & LOG_OP_WRITES ) { slap_callback *cb = op->o_tmpalloc( sizeof( slap_callback ), op->o_tmpmemctx ), *cb2; cb->sc_cleanup = accesslog_mod_cleanup; diff --git a/servers/slapd/overlays/ppolicy.c b/servers/slapd/overlays/ppolicy.c index f34c442019..4064d003a2 100644 --- a/servers/slapd/overlays/ppolicy.c +++ b/servers/slapd/overlays/ppolicy.c @@ -1161,9 +1161,11 @@ locked: c.ldctl_iscritical = 1; c.ldctl_oid = LDAP_CONTROL_RELAX; } else { - /* If not forwarding, don't update opattrs */ - if ( SLAP_SINGLE_SHADOW( op->o_bd )) + /* If not forwarding, don't update opattrs and don't replicate */ + if ( SLAP_SINGLE_SHADOW( op->o_bd )) { op2.orm_no_opattrs = 1; + op2.o_dont_replicate = 1; + } op2.o_bd->bd_info = (BackendInfo *)on->on_info; } rc = op2.o_bd->be_modify( &op2, &r2 );