[Date Prev][Date Next] [Chronological] [Thread] [Top]

RE: A new encode loop in send_search_entry() (ITS#2433)







-                        for ( a = rs->sr_entry->e_attrs; a != NULL; a =
a->a_next ) {
+                        for ( a = rs->sr_entry->e_attrs, j=0; a != NULL; a
= a->a_next, j++ ) {

Does this change honor vrFilter ?

                                if ( a->a_desc == ad ) break;
                                if ( attr->an_name.bv_val[0] != '-' &&
                                        is_ad_subtype( a->a_desc, ad ))
                                        break;
                        }

                        for ( i = 0; a->a_vals[i].bv_val != NULL; i++ ) {
                                if ( ! access_allowed( op, rs->sr_entry,
                                        ad, &a->a_vals[i], ACL_READ,
&acl_state) ) {
#ifdef NEW_LOGGING
                                        LDAP_LOG( ACL, INFO,
                                                "send_search_entry: conn
%lu "
                                                "access to attribute %s,
value %d not allowed\n",
                                                op->o_connid,
ad->ad_cname.bv_val, i );
#else
                                        Debug( LDAP_DEBUG_ACL,
                                                "acl: access to attribute
%s, "
                                                "value %d not allowed\n",
                                                ad->ad_cname.bv_val, i, 0
);
#endif
                                        continue;
                                }

                                if ( op->vrFilter && e_flags[j][i] == 0 ){
                                        continue;
                                }

------------------------
Jong Hyuk Choi
IBM Thomas J. Watson Research Center - Enterprise Linux Group
P. O. Box 218, Yorktown Heights, NY 10598
email: jongchoi@us.ibm.com
(phone) 914-945-3979    (fax) 914-945-4425   TL: 862-3979