From c1bda15afec3789987bad2bf7bd9b887f32cbbf2 Mon Sep 17 00:00:00 2001
From: Quanah Gibson-Mount <quanah@openldap.org>
Date: Wed, 22 Dec 2010 00:40:55 +0000
Subject: [PATCH] Test updates allow to customize the number of children; use
 swamp mode=self makes more sense use as tester an identity that needs to be
 proxedauthz'ed (more representative and stressful)

---
 tests/data/slapd-glue-ldap.conf             | 15 +++++++++++----
 tests/data/slapd-meta-target1.conf          |  3 +++
 tests/data/slapd-meta-target2.conf          |  4 ++++
 tests/data/slapd-meta.conf                  | 15 +++++++++++----
 tests/scripts/test036-meta-concurrency      | 10 ++++++++--
 tests/scripts/test039-glue-ldap-concurrency | 12 +++++++++---
 6 files changed, 46 insertions(+), 13 deletions(-)

diff --git a/tests/data/slapd-glue-ldap.conf b/tests/data/slapd-glue-ldap.conf
index 8d12f859f0..cfeae8c02f 100644
--- a/tests/data/slapd-glue-ldap.conf
+++ b/tests/data/slapd-glue-ldap.conf
@@ -52,9 +52,9 @@ chase-referrals	no
 idassert-bind	bindmethod=simple
 		binddn="cn=Manager,ou=Meta,dc=example,dc=com"
 		credentials="secret"
-		mode=none
+		mode=self
 		flags=non-prescriptive
-idassert-authzfrom	"dn.exact:cn=Manager,dc=example,dc=com"
+idassert-authzfrom	"dn.exact:cn=Manager,o=Local"
 
 # local
 database	ldap
@@ -66,10 +66,17 @@ chase-referrals	no
 idassert-bind	bindmethod=simple
 		binddn="cn=Manager,dc=example,dc=com"
 		credentials="secret"
-		mode=none
+		mode=self
 		flags=non-prescriptive
-idassert-authzfrom	"dn.exact:cn=Manager,dc=example,dc=com"
+idassert-authzfrom	"dn.exact:cn=Manager,o=Local"
 
 limits		dn.exact="cn=Bjorn Jensen,ou=Information Technology Division,ou=People,dc=example,dc=com" time=1 size=8
 
+# This is only for binding as the rootdn
+database	ldap
+suffix		"o=Local"
+rootdn		"cn=Manager,o=Local"
+rootpw		secret
+uri		"@URI6@"
+
 #monitor#database	monitor
diff --git a/tests/data/slapd-meta-target1.conf b/tests/data/slapd-meta-target1.conf
index 278cc8936c..37d2f5d1df 100644
--- a/tests/data/slapd-meta-target1.conf
+++ b/tests/data/slapd-meta-target1.conf
@@ -52,12 +52,15 @@ rootpw		secret
 # ITS#5154: force mixed success/failure of binds using same connection
 access to dn="cn=Barbara Jensen,ou=Information Technology DivisioN,ou=People,dc=example,dc=com"
 		attrs=userPassword
+	by dn="cn=Manager,o=Local" write
 	by * =r
 
 access to attrs=userPassword
+	by dn="cn=Manager,o=Local" write
 	by * =xr
 
 access to *
+	by dn="cn=Manager,o=Local" write
 	by * read
 
 #monitor#database	monitor
diff --git a/tests/data/slapd-meta-target2.conf b/tests/data/slapd-meta-target2.conf
index bd590c9207..9df9bfcfee 100644
--- a/tests/data/slapd-meta-target2.conf
+++ b/tests/data/slapd-meta-target2.conf
@@ -54,4 +54,8 @@ rootpw		secret
 #ndb#dbname db_2
 #ndb#include @DATADIR@/ndb.conf
 
+access to *
+	by dn="cn=Manager,o=Local" write
+	by * read
+
 #monitor#database	monitor
diff --git a/tests/data/slapd-meta.conf b/tests/data/slapd-meta.conf
index 2c2a95aa4f..1cb56ced64 100644
--- a/tests/data/slapd-meta.conf
+++ b/tests/data/slapd-meta.conf
@@ -56,9 +56,9 @@ suffixmassage	"ou=Meta,o=Example,c=US" "ou=Meta,dc=example,dc=com"
 idassert-bind	bindmethod=simple
 		binddn="cn=manager,ou=meta,dc=example,dc=com"
 		credentials="secret"
-		mode=none
+		mode=self
 		flags=non-prescriptive
-idassert-authzFrom	"dn.exact:cn=Manager,o=Example,c=US"
+idassert-authzFrom	"dn.exact:cn=Manager,o=Local"
 
 # remote
 uri		"@URI1@o=Example,c=US"
@@ -68,10 +68,17 @@ suffixmassage	"o=Example,c=US" "dc=example,dc=com"
 idassert-bind	bindmethod=simple
 		binddn="cn=manager,dc=example,dc=com"
 		credentials="secret"
-		mode=none
+		mode=self
 		flags=non-prescriptive
-idassert-authzFrom	"dn.exact:cn=Manager,o=Example,c=US"
+idassert-authzFrom	"dn.exact:cn=Manager,o=Local"
 
 limits		dn.exact="cn=Bjorn Jensen,ou=Information Technology Division,ou=People,o=Example,c=US" time=1 size=8
 
+# This is only for binding as the rootdn
+database	meta
+suffix		"o=Local"
+rootdn		"cn=Manager,o=Local"
+rootpw		secret
+uri		"@URI6@o=Local"
+
 #monitor#database	monitor
diff --git a/tests/scripts/test036-meta-concurrency b/tests/scripts/test036-meta-concurrency
index 339e1e03f5..f8bc1d636e 100755
--- a/tests/scripts/test036-meta-concurrency
+++ b/tests/scripts/test036-meta-concurrency
@@ -32,6 +32,10 @@ if test x$TESTLOOPS = x ; then
 	TESTLOOPS=50
 fi
 
+if test x$TESTCHILDREN = x ; then
+	TESTCHILDREN=20
+fi
+
 rm -rf $TESTDIR
 
 mkdir -p $TESTDIR $DBDIR1 $DBDIR2
@@ -193,10 +197,12 @@ done
 # NOTE: copies do_* files from $TESTDIR/$DATADIR to $TESTDIR
 $MONITORDATA "$MONITORDB" "$TESTDIR/$DATADIR" "$TESTDIR"
 
+BINDDN="cn=Manager,o=Local"
+PASSWD="secret"
 echo "Using tester for concurrent server access..."
 $SLAPDTESTER -P "$PROGDIR" -d "$TESTDIR" -h $LOCALHOST -p $PORT3 \
-	-D "cn=Manager,$METABASEDN" -w $PASSWD -l $TESTLOOPS -r 20 \
-	-i '!REFERRAL' -i '*INVALID_CREDENTIALS'
+	-D "$BINDDN" -w $PASSWD -l $TESTLOOPS -j $TESTCHILDREN \
+	-r 20 -i '!REFERRAL' -i '*INVALID_CREDENTIALS' -SS
 RC=$?
 
 if test $RC != 0 ; then
diff --git a/tests/scripts/test039-glue-ldap-concurrency b/tests/scripts/test039-glue-ldap-concurrency
index b441d2b1fc..2437cc57c5 100755
--- a/tests/scripts/test039-glue-ldap-concurrency
+++ b/tests/scripts/test039-glue-ldap-concurrency
@@ -36,6 +36,10 @@ if test x$TESTOLOOPS = x ; then
 	TESTOLOOPS=1
 fi
 
+if test x$TESTCHILDREN = x ; then
+	TESTCHILDREN=20
+fi
+
 rm -rf $TESTDIR
 
 mkdir -p $TESTDIR $DBDIR1 $DBDIR2
@@ -182,10 +186,12 @@ done
 $MONITORDATA "$MONITORDB" "$TESTDIR/$DATADIR" "$TESTDIR"
 
 echo "Using tester for concurrent server access..."
+BINDDN="cn=Manager,o=Local"
+PASSWD="secret"
 $SLAPDTESTER -P "$PROGDIR" -d "$TESTDIR" -h $LOCALHOST -p $PORT3 \
-	-D "cn=Manager,$METABASEDN" -w $PASSWD \
-	-l $TESTLOOPS -L $TESTOLOOPS -r 20 \
-	-i '!REFERRAL' -i '*INVALID_CREDENTIALS'
+	-D "$BINDDN" -w $PASSWD \
+	-l $TESTLOOPS -L $TESTOLOOPS -j $TESTCHILDREN -r 20 \
+	-i '!REFERRAL' -i '*INVALID_CREDENTIALS' -SS
 RC=$?
 
 if test $RC != 0 ; then
-- 
GitLab