[PATCH 2/7] s4:provision - Added parameter for specifying LDAP backend directory.

Endi S. Dewata edewata at redhat.com
Fri Jan 29 11:15:32 MST 2010


---
 source4/scripting/python/samba/provision.py        |    4 +++-
 source4/scripting/python/samba/provisionbackend.py |   11 ++++++++++-
 source4/setup/provision                            |    3 +++
 3 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/source4/scripting/python/samba/provision.py b/source4/scripting/python/samba/provision.py
index 94d694d..20acaa7 100644
--- a/source4/scripting/python/samba/provision.py
+++ b/source4/scripting/python/samba/provision.py
@@ -1083,7 +1083,7 @@ def provision(setup_dir, message, session_info,
               dnspass=None, root=None, nobody=None, users=None, 
               wheel=None, backup=None, aci=None, serverrole=None,
               dom_for_fun_level=None,
-              ldap_backend_extra_port=None, backend_type=None,
+              ldap_backend_extra_port=None, backend_type=None, ldap_dir=None,
               sitename=None,
               ol_mmr_urls=None, ol_olc=None, 
               setup_ds_path=None, slapd_path=None, nosync=False,
@@ -1208,6 +1208,7 @@ def provision(setup_dir, message, session_info,
                                          domainsid=domainsid,
                                          schema=schema,
                                          hostname=hostname,
+                                         ldap_dir=ldap_dir,
                                          ldapadminpass=ldapadminpass,
                                          slapd_path=slapd_path,
                                          ldap_backend_extra_port=ldap_backend_extra_port,
@@ -1223,6 +1224,7 @@ def provision(setup_dir, message, session_info,
                                          domainsid=domainsid,
                                          schema=schema,
                                          hostname=hostname,
+                                         ldap_dir=ldap_dir,
                                          ldapadminpass=ldapadminpass,
                                          slapd_path=slapd_path,
                                          ldap_backend_extra_port=ldap_backend_extra_port,
diff --git a/source4/scripting/python/samba/provisionbackend.py b/source4/scripting/python/samba/provisionbackend.py
index 4ac3d9b..1f028b6 100644
--- a/source4/scripting/python/samba/provisionbackend.py
+++ b/source4/scripting/python/samba/provisionbackend.py
@@ -123,6 +123,7 @@ class LDAPBackend(ProvisionBackend):
                  domainsid=None,
                  schema=None,
                  hostname=None,
+                 ldap_dir=None,
                  ldapadminpass=None,
                  slapd_path=None,
                  ldap_backend_extra_port=None,
@@ -139,7 +140,11 @@ class LDAPBackend(ProvisionBackend):
         self.schema = schema
         self.hostname = hostname
 
-        self.ldapdir = os.path.join(paths.private_dir, "ldap")
+        if ldap_dir is None:
+            self.ldapdir = os.path.join(paths.private_dir, "ldap")
+        else:
+            self.ldapdir = ldap_dir
+
         self.ldapadminpass = ldapadminpass
 
         self.slapd_path = slapd_path
@@ -259,6 +264,7 @@ class OpenLDAPBackend(LDAPBackend):
                  domainsid=None,
                  schema=None,
                  hostname=None,
+                 ldap_dir=None,
                  ldapadminpass=None,
                  slapd_path=None,
                  ldap_backend_extra_port=None,
@@ -275,6 +281,7 @@ class OpenLDAPBackend(LDAPBackend):
                 domainsid=domainsid,
                 schema=schema,
                 hostname=hostname,
+                ldap_dir=ldap_dir,
                 ldapadminpass=ldapadminpass,
                 slapd_path=slapd_path,
                 ldap_backend_extra_port=ldap_backend_extra_port,
@@ -541,6 +548,7 @@ class FDSBackend(LDAPBackend):
                  domainsid=None,
                  schema=None,
                  hostname=None,
+                 ldap_dir=None,
                  ldapadminpass=None,
                  slapd_path=None,
                  ldap_backend_extra_port=None,
@@ -557,6 +565,7 @@ class FDSBackend(LDAPBackend):
                 domainsid=domainsid,
                 schema=schema,
                 hostname=hostname,
+                ldap_dir=ldap_dir,
                 ldapadminpass=ldapadminpass,
                 slapd_path=slapd_path,
                 ldap_backend_extra_port=ldap_backend_extra_port,
diff --git a/source4/setup/provision b/source4/setup/provision
index 1ae52d2..6db526f 100755
--- a/source4/setup/provision
+++ b/source4/setup/provision
@@ -95,6 +95,8 @@ parser.add_option("--ldap-backend-extra-port", type="int", metavar="LDAP-BACKEND
 parser.add_option("--ldap-backend-type", type="choice", metavar="LDAP-BACKEND-TYPE", 
 		help="LDAP backend type (fedora-ds or openldap)",
 		choices=["fedora-ds", "openldap"])
+parser.add_option("--ldap-dir", type="string", metavar="LDAP-DIR", 
+		help="LDAP backend directory")
 parser.add_option("--ldap-backend-nosync", help="Configure LDAP backend not to call fsync() (for performance in test environments)", action="store_true")
 parser.add_option("--server-role", type="choice", metavar="ROLE",
 		  choices=["domain controller", "dc", "member server", "member", "standalone"],
@@ -239,6 +241,7 @@ provision(setup_dir, message,
           serverrole=server_role, dom_for_fun_level=dom_for_fun_level,
           ldap_backend_extra_port=opts.ldap_backend_extra_port, 
           backend_type=opts.ldap_backend_type,
+          ldap_dir=opts.ldap_dir,
           ldapadminpass=opts.ldapadminpass, ol_mmr_urls=opts.ol_mmr_urls,
           slapd_path=opts.slapd_path, setup_ds_path=opts.setup_ds_path,
           nosync=opts.nosync,ldap_dryrun_mode=opts.ldap_dryrun_mode,useeadb=eadb)
-- 
1.6.6


------=_Part_68415_58125355.1265837901273
Content-Type: text/x-patch;
	name=0003-s4-provision-Moved-default-FDS-SASL-mappings-deletio.patch
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename=0003-s4-provision-Moved-default-FDS-SASL-mappings-deletio.patch



More information about the samba-technical mailing list