diff --git a/servers/slapd/filter.c b/servers/slapd/filter.c index e0fc41de3b..60f4f0e063 100644 --- a/servers/slapd/filter.c +++ b/servers/slapd/filter.c @@ -608,7 +608,9 @@ filter2bv_x( Operation *op, Filter *f, struct berval *fstr ) simple: value = f->f_av_value; if ( f->f_av_desc->ad_type->sat_equality && - ( f->f_av_desc->ad_type->sat_equality->smr_usage & SLAP_MR_MUTATION_NORMALIZER )) { + !undef && + ( f->f_av_desc->ad_type->sat_equality->smr_usage & SLAP_MR_MUTATION_NORMALIZER )) + { f->f_av_desc->ad_type->sat_equality->smr_normalize( (SLAP_MR_DENORMALIZE|SLAP_MR_VALUE_OF_ASSERTION_SYNTAX), NULL, NULL, &f->f_av_value, &value, op->o_tmpmemctx );