From: Howard Chu Date: Mon, 7 Nov 2011 23:23:58 +0000 (-0800) Subject: ITS#7019 fix dsa-specific attr check for Persist updates X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=a4df185adfcafa709959f3d181005445c700e02f;p=openldap ITS#7019 fix dsa-specific attr check for Persist updates --- diff --git a/servers/slapd/overlays/syncprov.c b/servers/slapd/overlays/syncprov.c index e5bedd4690..d49a3113f1 100644 --- a/servers/slapd/overlays/syncprov.c +++ b/servers/slapd/overlays/syncprov.c @@ -991,6 +991,7 @@ syncprov_qtask( void *ctx, void *arg ) op->o_hdr = &opbuf.ob_hdr; op->o_controls = opbuf.ob_controls; memset( op->o_controls, 0, sizeof(opbuf.ob_controls) ); + op->o_sync = SLAP_CONTROL_IGNORED; *op->o_hdr = *so->s_op->o_hdr; diff --git a/servers/slapd/result.c b/servers/slapd/result.c index 1e8d406223..8fa6cdda40 100644 --- a/servers/slapd/result.c +++ b/servers/slapd/result.c @@ -1303,6 +1303,10 @@ slap_send_search_entry( Operation *op, SlapReply *rs ) { continue; } + /* if DSA-specific and replicating, skip */ + if ( op->o_sync != SLAP_CONTROL_NONE && + desc->ad_type->sat_usage == LDAP_SCHEMA_DSA_OPERATION ) + continue; } else { if ( !userattrs && !ad_inlist( desc, rs->sr_attrs ) ) { continue;