]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
s4-provision: Place xattr.tdb in the actual state directory
authorAndrew Bartlett <abartlet@samba.org>
Mon, 4 Jun 2012 23:56:53 +0000 (09:56 +1000)
committerAndrew Bartlett <abartlet@samba.org>
Tue, 5 Jun 2012 02:27:36 +0000 (04:27 +0200)
This patch does two things: it fixes up the spelling of "state dir" to
"state directory" so that we actually find the smb.conf parameter, and
we move it to after we process the global settings in case this is
changed in the future.

Andrew Bartlett

source4/scripting/python/samba/provision/__init__.py

index 1dc69a1f1b19981f15fcd2feb261e3dc0ebb1db2..a84bb5b7eae88f8ec86fb46c78c16817345473b8 100644 (file)
@@ -627,19 +627,6 @@ def make_smbconf(smbconf, hostname, domain, realm, targetdir,
     #Load non-existant file
     if os.path.exists(smbconf):
         lp.load(smbconf)
-    if eadb:
-        if use_ntvfs and not lp.get("posix:eadb"):
-            if targetdir is not None:
-                privdir = os.path.join(targetdir, "private")
-            else:
-                privdir = lp.get("private dir")
-            lp.set("posix:eadb", os.path.abspath(os.path.join(privdir, "eadb.tdb")))
-        elif not use_ntvfs and not lp.get("xattr_tdb:file"):
-            if targetdir is not None:
-                statedir = os.path.join(targetdir, "state")
-            else:
-                statedir = lp.get("state dir")
-            lp.set("xattr_tdb:file", os.path.abspath(os.path.join(statedir, "xattr.tdb")))
 
     if global_param is not None:
         for ent in global_param:
@@ -656,6 +643,20 @@ def make_smbconf(smbconf, hostname, domain, realm, targetdir,
         lp.set("state directory",  global_settings["state directory"])
         lp.set("cache directory", global_settings["cache directory"])
 
+    if eadb:
+        if use_ntvfs and not lp.get("posix:eadb"):
+            if targetdir is not None:
+                privdir = os.path.join(targetdir, "private")
+            else:
+                privdir = lp.get("private dir")
+            lp.set("posix:eadb", os.path.abspath(os.path.join(privdir, "eadb.tdb")))
+        elif not use_ntvfs and not lp.get("xattr_tdb:file"):
+            if targetdir is not None:
+                statedir = os.path.join(targetdir, "state")
+            else:
+                statedir = lp.get("state directory")
+            lp.set("xattr_tdb:file", os.path.abspath(os.path.join(statedir, "xattr.tdb")))
+
     shares = {}
     if serverrole == "domain controller":
         shares["sysvol"] = os.path.join(lp.get("state directory"), "sysvol")