diff options
author | Noriko Hosoi <nhosoi@redhat.com> | 2008-07-23 15:14:11 +0000 |
---|---|---|
committer | Noriko Hosoi <nhosoi@redhat.com> | 2008-07-23 15:14:11 +0000 |
commit | dec2dda943c47e9d72a239ee0e8dfae1e34bc473 (patch) | |
tree | 3b2ae111d9ac70cc9bfb43621ad4ead9f87ea11c | |
parent | 1ff1bd5eebed07a0720351514ffc7409fd3e367b (diff) | |
download | ds-dec2dda943c47e9d72a239ee0e8dfae1e34bc473.tar.gz ds-dec2dda943c47e9d72a239ee0e8dfae1e34bc473.tar.xz ds-dec2dda943c47e9d72a239ee0e8dfae1e34bc473.zip |
Resolves: #456296
Summary: GER: attribute types which do not belong to an entry should not be returned with effective rights
Description: when an attribute was given to the search request and the attribute
in the list does not belong to the entry, it was returning "*:none", which was
not true. The star should be the attribute type.
-rw-r--r-- | ldap/servers/plugins/acl/acleffectiverights.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/ldap/servers/plugins/acl/acleffectiverights.c b/ldap/servers/plugins/acl/acleffectiverights.c index c50807f9..b8c979b7 100644 --- a/ldap/servers/plugins/acl/acleffectiverights.c +++ b/ldap/servers/plugins/acl/acleffectiverights.c @@ -666,6 +666,18 @@ _ger_get_attrs_rights ( gerstr, gerstrsize, gerstrcap, isfirstattr, errbuf ); isfirstattr = 0; } + else + { + /* if the attr does not belong to the entry, + "<attr>:none" is returned */ + if (!isfirstattr) + { + _append_gerstr(gerstr, gerstrsize, gerstrcap, ", ", NULL); + } + _append_gerstr(gerstr, gerstrsize, gerstrcap, attrs[i], ":"); + _append_gerstr(gerstr, gerstrsize, gerstrcap, "none", NULL); + isfirstattr = 0; + } } } charray_free(allattrs); |