summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNoriko Hosoi <nhosoi@redhat.com>2008-07-23 15:14:11 +0000
committerNoriko Hosoi <nhosoi@redhat.com>2008-07-23 15:14:11 +0000
commitdec2dda943c47e9d72a239ee0e8dfae1e34bc473 (patch)
tree3b2ae111d9ac70cc9bfb43621ad4ead9f87ea11c
parent1ff1bd5eebed07a0720351514ffc7409fd3e367b (diff)
downloadds-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.c12
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);