|
|
cc3dff |
From e585f17556d12f96683665aed7699a78a89c9ab4 Mon Sep 17 00:00:00 2001
|
|
|
cc3dff |
From: Ludwig Krispenz <lkrispen@redhat.com>
|
|
|
cc3dff |
Date: Tue, 18 Feb 2014 11:40:16 +0100
|
|
|
cc3dff |
Subject: [PATCH] Ticket 47704 - invalid sizelimits in aci group evaluation
|
|
|
cc3dff |
|
|
|
cc3dff |
Bug Description: aci group evaluation fails because of sizelimit exceeded
|
|
|
cc3dff |
but it is exceeded because it is -1476887876 or another
|
|
|
cc3dff |
negative integer becasue operation parameter are a union
|
|
|
cc3dff |
based on operation types and so for otehr than search
|
|
|
cc3dff |
the value is dependent on the operation params
|
|
|
cc3dff |
|
|
|
cc3dff |
Fix Description: treat any negative integer like -1 (unlimited). A better fix
|
|
|
cc3dff |
would be to introduce a specific configuration param or
|
|
|
cc3dff |
to abondon the limit in group evaluation at all. But this
|
|
|
cc3dff |
could introduce backward compatibility problems and
|
|
|
cc3dff |
will be handled in ticket 47703 for newer versions
|
|
|
cc3dff |
|
|
|
cc3dff |
https://fedorahosted.org/389/ticket/47704
|
|
|
cc3dff |
|
|
|
cc3dff |
Reviewed by: Rich, thanks
|
|
|
cc3dff |
(cherry picked from commit 377266ebb2ff488aa3cc4b96990c002db7e6103e)
|
|
|
cc3dff |
---
|
|
|
cc3dff |
ldap/servers/plugins/acl/acl_ext.c | 6 ++++++
|
|
|
cc3dff |
1 file changed, 6 insertions(+)
|
|
|
cc3dff |
|
|
|
cc3dff |
diff --git a/ldap/servers/plugins/acl/acl_ext.c b/ldap/servers/plugins/acl/acl_ext.c
|
|
|
cc3dff |
index ee2dd0f..b9cec43 100644
|
|
|
cc3dff |
--- a/ldap/servers/plugins/acl/acl_ext.c
|
|
|
cc3dff |
+++ b/ldap/servers/plugins/acl/acl_ext.c
|
|
|
cc3dff |
@@ -836,6 +836,12 @@ acl_init_aclpb ( Slapi_PBlock *pb , Acl_PBlock *aclpb, const char *ndn, int copy
|
|
|
cc3dff |
slapi_pblock_get( pb, SLAPI_SEARCH_SIZELIMIT, &aclpb->aclpb_max_member_sizelimit );
|
|
|
cc3dff |
if ( aclpb->aclpb_max_member_sizelimit == 0 ) {
|
|
|
cc3dff |
aclpb->aclpb_max_member_sizelimit = SLAPD_DEFAULT_LOOKTHROUGHLIMIT;
|
|
|
cc3dff |
+ } else if ( aclpb->aclpb_max_member_sizelimit < -1 ) {
|
|
|
cc3dff |
+ /* handle the case of a negtive size limit either set or due
|
|
|
cc3dff |
+ * to bug bz1065971. The member size limit should be dropped,
|
|
|
cc3dff |
+ * but for backward compatibility to the best we can
|
|
|
cc3dff |
+ */
|
|
|
cc3dff |
+ aclpb->aclpb_max_member_sizelimit = -1;
|
|
|
cc3dff |
}
|
|
|
cc3dff |
slapi_pblock_get( pb, SLAPI_OPERATION_TYPE, &aclpb->aclpb_optype );
|
|
|
cc3dff |
|
|
|
cc3dff |
--
|
|
|
cc3dff |
1.8.1.4
|
|
|
cc3dff |
|