From 983f43785b6ffdfddac5c799c8ffe984d53d5b6f Mon Sep 17 00:00:00 2001 From: Kurt Zeilenga Date: Thu, 22 Jul 1999 20:19:18 +0000 Subject: [PATCH] Fix "*" op-attr search --- servers/slapd/result.c | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/servers/slapd/result.c b/servers/slapd/result.c index 514a0724e8..26f2af95ba 100644 --- a/servers/slapd/result.c +++ b/servers/slapd/result.c @@ -545,8 +545,7 @@ send_search_entry( } /* check for special all user attributes ("*") attribute */ - allattrs = attrs == NULL - ? 1 + allattrs = ( attrs == NULL ) ? 1 : charray_inlist( attrs, LDAP_ALL_USER_ATTRIBUTES ); for ( a = e->e_attrs; a != NULL; a = a->a_next ) { @@ -560,7 +559,17 @@ send_search_entry( } else { /* specific addrs requested */ - if ( !allattrs && !charray_inlist( attrs, a->a_type ) ) { + if ( allattrs ) { + /* user requested all user attributes */ + /* if operational, make sure it's in list */ + + if( oc_check_operational_attr( a->a_type ) + && !charray_inlist( attrs, a->a_type ) ) + { + continue; + } + + } else if ( !charray_inlist( attrs, a->a_type ) ) { continue; } } -- 2.39.5