]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
ITS#10142 Link tiers in on cn=config startup
authorOndřej Kuzník <ondra@mistotebe.net>
Mon, 11 Dec 2023 17:05:02 +0000 (17:05 +0000)
committerQuanah Gibson-Mount <quanah@openldap.org>
Tue, 19 Dec 2023 14:47:34 +0000 (14:47 +0000)
servers/lloadd/config.c
tests/scripts/lloadd/test003-cnconfig

index 3ff7a5544dc5a6fa3a7d4ec346c1e7b24f23c18b..ab7a26bcfe331832c6e7f6954fca5f0cb47a1c80 100644 (file)
@@ -3870,6 +3870,14 @@ lload_tier_ldadd( CfEntryInfo *p, Entry *e, ConfigArgs *ca )
     ca->bi = p->ce_bi;
     ca->ca_private = tier;
 
+    if ( !lloadd_inited ) {
+        if ( LDAP_STAILQ_EMPTY( &tiers ) ) {
+            LDAP_STAILQ_INSERT_HEAD( &tiers, tier, t_next );
+        } else {
+            LDAP_STAILQ_INSERT_TAIL( &tiers, tier, t_next );
+        }
+    }
+
     /* ca cleanups are only run in the case of online config but we use it to
      * save the new config when done with the entry */
     ca->lineno = 0;
index 2ddefe8dea869dd2bc5f9b93530eae59d2daeba0..373b5bb8c3ed6109efe221ed388d6f8dfae8fe93 100755 (executable)
@@ -16,7 +16,7 @@
 echo "running defines.sh"
 . $SRCDIR/scripts/defines.sh
 
-mkdir -p $TESTDIR $CONF1.d $DBDIR1 $DBDIR2
+mkdir -p $TESTDIR $CONF1.d $DBDIR1 $DBDIR2 $CFDIR
 
 $SLAPPASSWD -g -n >$CONFIGPWF
 echo "rootpw `$SLAPPASSWD -T $CONFIGPWF`" >$TESTDIR/configpw.conf
@@ -119,7 +119,8 @@ fi
 echo "Starting lloadd on TCP/IP port $PORT1..."
 . $CONFFILTER $BACKEND < $LLOADDUNREACHABLECONF > $CONF1.lloadd
 . $CONFFILTER $BACKEND < $SLAPDLLOADCONF > $CONF1.slapd
-$SLAPD -f $CONF1.slapd -h $URI6 -d $LVL > $LOG1 2>&1 &
+$SLAPD -Tt -f $CONF1.slapd -F $CONF1.d -d $LVL > $LOG1 2>&1
+$SLAPD -F $CONF1.d -h $URI6 -d $LVL >> $LOG1 2>&1 &
 PID=$!
 if test $WAIT != 0 ; then
     echo PID $PID