s4:provision Don't make the 'slaptest' call produce errors
authorAndrew Bartlett <abartlet@samba.org>
Mon, 5 Apr 2010 09:03:14 +0000 (19:03 +1000)
committerAndrew Bartlett <abartlet@samba.org>
Sat, 10 Apr 2010 11:41:00 +0000 (21:41 +1000)
Adding -n 0 also allows us to check the error code too

Andrew Bartlett

source4/scripting/python/samba/provisionbackend.py

index e5d4d8e1b1aa4553406f81555fee4caf3a9149c4..08deb4a1631e833b9973e2be1b7f30bc45dd99f6 100644 (file)
@@ -506,13 +506,10 @@ class OpenLDAPBackend(LDAPBackend):
         if not os.path.isdir(self.olcdir):
             os.makedirs(self.olcdir, 0770)
 
-            retcode = subprocess.call([self.slapd_path, "-Ttest", "-f", self.slapdconf, "-F", self.olcdir], close_fds=True, shell=False)
+            retcode = subprocess.call([self.slapd_path, "-Ttest", "-n", "0", "-f", self.slapdconf, "-F", self.olcdir], close_fds=True, shell=False)
 
-#            We can't do this, as OpenLDAP is strange.  It gives an error
-#            output to the above, but does the conversion sucessfully...
-#
-#            if retcode != 0:
-#                raise ProvisioningError("conversion from slapd.conf to cn=config failed")
+            if retcode != 0:
+                raise ProvisioningError("conversion from slapd.conf to cn=config failed")
 
             if not os.path.exists(os.path.join(self.olcdir, "cn=config.ldif")):
                 raise ProvisioningError("conversion from slapd.conf to cn=config failed")