|
|
f92ce9 |
From 6e09835b2b5b221f285f1bd6d61978d0a77843bd Mon Sep 17 00:00:00 2001
|
|
|
f92ce9 |
From: Noriko Hosoi <nhosoi@redhat.com>
|
|
|
f92ce9 |
Date: Tue, 7 Oct 2014 12:12:28 -0700
|
|
|
f92ce9 |
Subject: [PATCH 18/21] Ticket #47919 - ldbm_back_modify
|
|
|
f92ce9 |
SLAPI_PLUGIN_BE_PRE_MODIFY_FN does not return even if one of the preop
|
|
|
f92ce9 |
plugins fails.
|
|
|
f92ce9 |
|
|
|
f92ce9 |
Bug Description: In ldbm_back_modify, if one of the be_preop plugins
|
|
|
f92ce9 |
called at SLAPI_PLUGIN_BE_PRE_MODIFY_FN fail, ldbm_back_modify does
|
|
|
f92ce9 |
not return there but go to the real modify operation.
|
|
|
f92ce9 |
|
|
|
f92ce9 |
Fix Description: If an error is returned from be_preop plugins in
|
|
|
f92ce9 |
ldbm_back_modify, it returns the error there and does not proceed
|
|
|
f92ce9 |
the modify operation.
|
|
|
f92ce9 |
|
|
|
f92ce9 |
https://fedorahosted.org/389/ticket/47919
|
|
|
f92ce9 |
|
|
|
f92ce9 |
Reviewed by mreynolds@redhat.com (Thank you, Mark!!)
|
|
|
f92ce9 |
|
|
|
f92ce9 |
(cherry picked from commit cb173814ec579fafbfef515738c16a986a9749cd)
|
|
|
f92ce9 |
(cherry picked from commit 17294432e95bdb30c6816cefa7be5035df818a43)
|
|
|
f92ce9 |
---
|
|
|
f92ce9 |
ldap/servers/slapd/back-ldbm/ldbm_modify.c | 4 ++--
|
|
|
f92ce9 |
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
|
f92ce9 |
|
|
|
f92ce9 |
diff --git a/ldap/servers/slapd/back-ldbm/ldbm_modify.c b/ldap/servers/slapd/back-ldbm/ldbm_modify.c
|
|
|
f92ce9 |
index 529bd32..d15b050 100644
|
|
|
f92ce9 |
--- a/ldap/servers/slapd/back-ldbm/ldbm_modify.c
|
|
|
f92ce9 |
+++ b/ldap/servers/slapd/back-ldbm/ldbm_modify.c
|
|
|
f92ce9 |
@@ -641,11 +641,11 @@ ldbm_back_modify( Slapi_PBlock *pb )
|
|
|
f92ce9 |
if (SLAPI_PLUGIN_NOOP == opreturn) {
|
|
|
f92ce9 |
not_an_error = 1;
|
|
|
f92ce9 |
rc = opreturn = LDAP_SUCCESS;
|
|
|
f92ce9 |
- goto error_return;
|
|
|
f92ce9 |
} else if (!opreturn) {
|
|
|
f92ce9 |
- opreturn = -1;
|
|
|
f92ce9 |
+ opreturn = SLAPI_PLUGIN_FAILURE;
|
|
|
f92ce9 |
slapi_pblock_set(pb, SLAPI_PLUGIN_OPRETURN, &opreturn);
|
|
|
f92ce9 |
}
|
|
|
f92ce9 |
+ goto error_return;
|
|
|
f92ce9 |
}
|
|
|
f92ce9 |
/* The Plugin may have messed about with some of the PBlock parameters... ie. mods */
|
|
|
f92ce9 |
slapi_pblock_get( pb, SLAPI_MODIFY_MODS, &mods );
|
|
|
f92ce9 |
--
|
|
|
f92ce9 |
1.9.3
|
|
|
f92ce9 |
|