From: Ondřej Kuzník Date: Mon, 11 Dec 2023 17:05:02 +0000 (+0000) Subject: ITS#10142 Link tiers in on cn=config startup X-Git-Tag: OPENLDAP_REL_ENG_2_6_7~24 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=88d0404d7bc84cbf94e9d768a497fa3936b89dd6;p=thirdparty%2Fopenldap.git ITS#10142 Link tiers in on cn=config startup --- diff --git a/servers/lloadd/config.c b/servers/lloadd/config.c index 3ff7a5544d..ab7a26bcfe 100644 --- a/servers/lloadd/config.c +++ b/servers/lloadd/config.c @@ -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; diff --git a/tests/scripts/lloadd/test003-cnconfig b/tests/scripts/lloadd/test003-cnconfig index 2ddefe8dea..373b5bb8c3 100755 --- a/tests/scripts/lloadd/test003-cnconfig +++ b/tests/scripts/lloadd/test003-cnconfig @@ -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