1
0
mirror of https://github.com/samba-team/samba.git synced 2025-07-14 12:59:07 +03:00

s4:provisionbackend Don't loop forever waiting for OpenLDAP

We need to give a good error when we can't get OpenLDAP to accept our
connections.

Andrew Bartlett
This commit is contained in:
Andrew Bartlett
2010-04-28 10:39:05 +10:00
parent 4d1f0436bd
commit 3c585e9a80

View File

@ -222,6 +222,7 @@ class LDAPBackend(ProvisionBackend):
self.slapd = subprocess.Popen(self.slapd_provision_command,
close_fds=True, shell=False)
count = 0
while self.slapd.poll() is None:
# Wait until the socket appears
try:
@ -232,6 +233,11 @@ class LDAPBackend(ProvisionBackend):
return
except LdbError:
time.sleep(1)
count = count + 1
if count > 15:
self.message("Could not connect to slapd started with: %s" % "\'" + "\' \'".join(self.slapd_provision_command) + "\'")
raise ProvisioningError("slapd never accepted a connection within 15 seconds of starting")
self.message("Could not start slapd with: %s" % "\'" + "\' \'".join(self.slapd_provision_command) + "\'")
raise ProvisioningError("slapd died before we could make a connection to it")