ITS#5268 don't replicate dSAOperation attributes unless specifically

requested. (It doesn't actually make sense to request them in that
case, but allow it.)
This commit is contained in:
Howard Chu 2007-12-08 17:44:15 +00:00
parent 562b88a3cf
commit bcc108a7ff

View File

@ -898,12 +898,16 @@ slap_send_search_entry( Operation *op, SlapReply *rs )
} else {
/* specific attrs requested */
if ( is_at_operational( desc->ad_type ) ) {
if ( !SLAP_OPATTRS( rs->sr_attr_flags ) &&
!ad_inlist( desc, rs->sr_attrs ) )
{
continue;
/* if not explicitly requested */
if ( !ad_inlist( desc, rs->sr_attrs )) {
/* if not all op attrs requested, skip */
if ( !SLAP_OPATTRS( rs->sr_attr_flags ))
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;