diff --git a/src/test/ldap/t/001_auth.pl b/src/test/ldap/t/001_auth.pl index 6c02f2530b..ee1bf95b32 100644 --- a/src/test/ldap/t/001_auth.pl +++ b/src/test/ldap/t/001_auth.pl @@ -117,6 +117,15 @@ END kill 'INT', `cat $slapd_pidfile` if -f $slapd_pidfile; } +# wait until slapd accepts requests +my $retries = 0; +while (1) { + last if (system("ldapsearch -h $ldap_server -p $ldap_port -s base -b $ldap_basedn -n 'objectclass=*'") == 0); + die "cannot connect to slapd" if $retries++ >= 10; + note "waiting for slapd to accept requests..."; + sleep(1); +} + append_to_file($ldap_pwfile, $ldap_rootpw); chmod 0600, $ldap_pwfile or die;