diff --git a/servers/slapd/ad.c b/servers/slapd/ad.c index 5258dc3fc3..38bda68141 100644 --- a/servers/slapd/ad.c +++ b/servers/slapd/ad.c @@ -557,6 +557,20 @@ int ad_inlist( continue; } + if ( ber_bvccmp( &attrs->an_name, '*' ) ) { + if ( !is_at_operational( desc->ad_type ) ) { + return 1; + } + continue; + } + + if ( ber_bvccmp( &attrs->an_name, '+' ) ) { + if ( is_at_operational( desc->ad_type ) ) { + return 1; + } + continue; + } + /* * EXTENSION: see if requested description is @objectClass * if so, return attributes which the class requires/allows