71 lines
2.0 KiB
Diff
71 lines
2.0 KiB
Diff
From 84e0958b28fccb5cc36de90094aebc6902145c07 Mon Sep 17 00:00:00 2001
|
|
From: Howard Chu <hyc@openldap.org>
|
|
Date: Wed, 3 Oct 2018 21:58:32 +0100
|
|
Subject: [PATCH 049/109] ITS#8923 fix dyngroup NO_SUCH_OBJECT error handling
|
|
|
|
---
|
|
servers/slapd/backend.c | 2 +-
|
|
tests/data/dynlist.out | 3 +++
|
|
tests/scripts/test044-dynlist | 9 +++++----
|
|
3 files changed, 9 insertions(+), 5 deletions(-)
|
|
|
|
diff --git a/servers/slapd/backend.c b/servers/slapd/backend.c
|
|
index 445a2cb57..0a3dafab8 100644
|
|
--- a/servers/slapd/backend.c
|
|
+++ b/servers/slapd/backend.c
|
|
@@ -1520,7 +1520,7 @@ fe_acl_group(
|
|
op->o_private = o_priv;
|
|
if ( rc2 != 0 ) {
|
|
/* give up... */
|
|
- rc = LDAP_OTHER;
|
|
+ rc = (rc2 == LDAP_NO_SUCH_OBJECT) ? rc2 : LDAP_OTHER;
|
|
goto loopit;
|
|
}
|
|
}
|
|
diff --git a/tests/data/dynlist.out b/tests/data/dynlist.out
|
|
index 429039b67..8caf0e22f 100644
|
|
--- a/tests/data/dynlist.out
|
|
+++ b/tests/data/dynlist.out
|
|
@@ -198,6 +198,9 @@ memberURL: ldap:///ou=People,dc=example,dc=com??sub?(objectClass=person)
|
|
# Testing list compare...
|
|
TRUE
|
|
|
|
+# Testing list compare... (should return FALSE)
|
|
+FALSE
|
|
+
|
|
# Testing list compare (should return FALSE)...
|
|
FALSE
|
|
|
|
diff --git a/tests/scripts/test044-dynlist b/tests/scripts/test044-dynlist
|
|
index e5a0c47dc..8caf50ded 100755
|
|
--- a/tests/scripts/test044-dynlist
|
|
+++ b/tests/scripts/test044-dynlist
|
|
@@ -477,12 +477,12 @@ $LDAPCOMPARE -h $LOCALHOST -p $PORT1 \
|
|
RC=$?
|
|
case $RC in
|
|
5)
|
|
- echo "ldapcompare returned FALSE ($RC)!"
|
|
- test $KILLSERVERS != no && kill -HUP $KILLPIDS
|
|
- exit $RC
|
|
+ echo "ldapcompare returned FALSE ($RC)"
|
|
;;
|
|
6)
|
|
- echo "ldapcompare returned TRUE ($RC)"
|
|
+ echo "ldapcompare returned TRUE ($RC)!"
|
|
+ test $KILLSERVERS != no && kill -HUP $KILLPIDS
|
|
+ exit $RC
|
|
;;
|
|
0)
|
|
echo "ldapcompare returned success ($RC)!"
|
|
@@ -497,6 +497,7 @@ case $RC in
|
|
esac
|
|
echo "" >> $SEARCHOUT
|
|
|
|
+CMPDN="$BJORNSDN"
|
|
echo "Testing list compare (should return FALSE)..."
|
|
echo "# Testing list compare (should return FALSE)..." >> $SEARCHOUT
|
|
$LDAPCOMPARE -h $LOCALHOST -p $PORT1 \
|
|
--
|
|
2.19.1
|
|
|