|
|
dc8c34 |
From 0c0b4df54e3be5cc4ed4dec61c0788f4001977c4 Mon Sep 17 00:00:00 2001
|
|
|
dc8c34 |
From: Mark Reynolds <mreynolds@redhat.com>
|
|
|
dc8c34 |
Date: Wed, 12 Nov 2014 10:15:46 -0500
|
|
|
dc8c34 |
Subject: [PATCH 267/267] Ticket 47953 - Should not check aci syntax when
|
|
|
dc8c34 |
deleting an aci
|
|
|
dc8c34 |
|
|
|
dc8c34 |
Bug Description: Trying to delete an aci that has an invalid sytenx, generates a
|
|
|
dc8c34 |
syntax error when trying to remove it.
|
|
|
dc8c34 |
|
|
|
dc8c34 |
Fix Description: Do not check the syntax of an aci if it's being deleted.
|
|
|
dc8c34 |
|
|
|
dc8c34 |
https://fedorahosted.org/389/ticket/47953
|
|
|
dc8c34 |
|
|
|
dc8c34 |
Reviewed by: rmeggins(Thanks!)
|
|
|
dc8c34 |
|
|
|
dc8c34 |
(cherry picked from commit 3ce60db0a404b4663df6005b78027332d0e56f95)
|
|
|
dc8c34 |
|
|
|
dc8c34 |
Conflicts:
|
|
|
dc8c34 |
ldap/servers/plugins/acl/acl.c
|
|
|
dc8c34 |
|
|
|
dc8c34 |
(cherry picked from commit 234f118efe7867cbbe36ca5c8b13ea7195114a38)
|
|
|
dc8c34 |
(cherry picked from commit 67a084d288b971fa31c58375d06a521e4776c6ca)
|
|
|
dc8c34 |
---
|
|
|
dc8c34 |
ldap/servers/plugins/acl/acl.c | 12 +++++++-----
|
|
|
dc8c34 |
1 file changed, 7 insertions(+), 5 deletions(-)
|
|
|
dc8c34 |
|
|
|
dc8c34 |
diff --git a/ldap/servers/plugins/acl/acl.c b/ldap/servers/plugins/acl/acl.c
|
|
|
dc8c34 |
index d27c0e1..598601b 100644
|
|
|
dc8c34 |
--- a/ldap/servers/plugins/acl/acl.c
|
|
|
dc8c34 |
+++ b/ldap/servers/plugins/acl/acl.c
|
|
|
dc8c34 |
@@ -1485,13 +1485,15 @@ acl_check_mods(
|
|
|
dc8c34 |
|
|
|
dc8c34 |
/* Are we adding/replacing a aci attribute
|
|
|
dc8c34 |
** value. In that case, we need to make
|
|
|
dc8c34 |
- ** sure that the new value has thr right
|
|
|
dc8c34 |
+ ** sure that the new value has the right
|
|
|
dc8c34 |
** syntax
|
|
|
dc8c34 |
*/
|
|
|
dc8c34 |
- if (strcmp(mod->mod_type,
|
|
|
dc8c34 |
- aci_attr_type) == 0) {
|
|
|
dc8c34 |
- if ( 0 != (rv = acl_verify_syntax( e_sdn,
|
|
|
dc8c34 |
- mod->mod_bvalues[i], errbuf))) {
|
|
|
dc8c34 |
+
|
|
|
dc8c34 |
+ if (!SLAPI_IS_MOD_DELETE(mod->mod_op) &&
|
|
|
dc8c34 |
+ strcmp(mod->mod_type, aci_attr_type) == 0)
|
|
|
dc8c34 |
+ {
|
|
|
dc8c34 |
+ if ( 0 != (rv = acl_verify_syntax(e_sdn,
|
|
|
dc8c34 |
+ mod->mod_bvalues[i], errbuf))) {
|
|
|
dc8c34 |
aclutil_print_err(rv, e_sdn,
|
|
|
dc8c34 |
mod->mod_bvalues[i],
|
|
|
dc8c34 |
errbuf);
|
|
|
dc8c34 |
--
|
|
|
dc8c34 |
1.9.3
|
|
|
dc8c34 |
|