]> git.sur5r.net Git - openldap/commitdiff
ITS#5636
authorQuanah Gibson-Mount <quanah@openldap.org>
Wed, 3 Sep 2008 02:40:34 +0000 (02:40 +0000)
committerQuanah Gibson-Mount <quanah@openldap.org>
Wed, 3 Sep 2008 02:40:34 +0000 (02:40 +0000)
CHANGES
servers/slapd/aci.c

diff --git a/CHANGES b/CHANGES
index 24d0afb4cfc0a16f0b4fda791bba1ba4e5a08691..58559af152b590e4bfebf5d24d8b228eb52174bc 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -2,6 +2,7 @@ OpenLDAP 2.4 Change Log
 
 OpenLDAP 2.4.12 Engineering
        Fixed liblutil executables on Windows (ITS#5604)
+       Fixed slapd aci performance (ITS#5636)
        Fixed slapd custom attribute inheritance (ITS#5642)
        Fixed slapd firstComponentMatch normalization (ITS#5634)
        Fixed slapd overlay control registration (ITS#5649)
index 580590f12218cf2d23ac4ed86f0b1de0e0bc588b..ee3c38f68dbf74d9589c153556cec964a001192c 100644 (file)
@@ -345,9 +345,12 @@ aci_list_get_rights(
                        continue;
                }
 
-               found = 1;
                *mask |= aci_list_get_attr_rights( &perm, attr, val );
                *mask |= aci_list_get_attr_rights( &perm, &aci_bv[ ACI_BV_BR_ALL ], NULL );
+
+               if ( *mask != ACL_PRIV_NONE ) { 
+                       found = 1;
+               }
        }
 
        return found;
@@ -439,7 +442,9 @@ aci_mask(
                                opts,
                                sdn;
        int                     rc;
-               
+
+       ACL_INIT( *grant );
+       ACL_INIT( *deny );
 
        assert( !BER_BVISNULL( &desc->ad_cname ) );