summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/scripting/python/samba/provision/__init__.py10
-rwxr-xr-xsource4/setup/provision4
2 files changed, 10 insertions, 4 deletions
diff --git a/source4/scripting/python/samba/provision/__init__.py b/source4/scripting/python/samba/provision/__init__.py
index 61d016c864..9c2815721f 100644
--- a/source4/scripting/python/samba/provision/__init__.py
+++ b/source4/scripting/python/samba/provision/__init__.py
@@ -1518,7 +1518,8 @@ def provision(logger, session_info, credentials, smbconf=None,
domain=None, hostname=None, hostip=None, hostip6=None, domainsid=None,
next_rid=1000, dc_rid=None, adminpass=None, ldapadminpass=None, krbtgtpass=None,
domainguid=None, policyguid=None, policyguid_dc=None,
- invocationid=None, machinepass=None, ntdsguid=None, dnspass=None,
+ invocationid=None, machinepass=None, ntdsguid=None,
+ dns_backend=None, 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,
ldap_backend_forced_uri=None, backend_type=None, sitename=None,
@@ -1783,7 +1784,8 @@ def provision(logger, session_info, credentials, smbconf=None,
dnsdomain=names.dnsdomain,
dns_keytab_path=paths.dns_keytab, dnspass=dnspass)
- setup_ad_dns(samdb, names=names, hostip=hostip, hostip6=hostip6)
+ setup_ad_dns(samdb, names, logger, hostip=hostip, hostip6=hostip6,
+ dns_backend=dns_backend, os_level=dom_for_fun_level)
domainguid = samdb.searchone(basedn=domaindn,
attribute="objectGUID")
@@ -1911,7 +1913,7 @@ def provision_become_dc(smbconf=None, targetdir=None,
serverdn=None, domain=None, hostname=None, domainsid=None,
adminpass=None, krbtgtpass=None, domainguid=None, policyguid=None,
policyguid_dc=None, invocationid=None, machinepass=None, dnspass=None,
- root=None, nobody=None, users=None, wheel=None, backup=None,
+ dns_backend=None, root=None, nobody=None, users=None, wheel=None, backup=None,
serverrole=None, ldap_backend=None, ldap_backend_type=None,
sitename=None, debuglevel=1):
@@ -1924,7 +1926,7 @@ def provision_become_dc(smbconf=None, targetdir=None,
configdn=configdn, serverdn=serverdn, domain=domain,
hostname=hostname, hostip=None, domainsid=domainsid,
machinepass=machinepass, serverrole="domain controller",
- sitename=sitename)
+ sitename=sitename, dns_backend=dns_backend, dnspass=dnspass)
res.lp.set("debuglevel", str(debuglevel))
return res
diff --git a/source4/setup/provision b/source4/setup/provision
index 37faafd812..39ef62d4b3 100755
--- a/source4/setup/provision
+++ b/source4/setup/provision
@@ -74,6 +74,9 @@ parser.add_option("--krbtgtpass", type="string", metavar="PASSWORD",
help="choose krbtgt password (otherwise random)")
parser.add_option("--machinepass", type="string", metavar="PASSWORD",
help="choose machine password (otherwise random)")
+parser.add_option("--dns-backend", type="choice", metavar="NAMESERVER-BACKEND",
+ choices=["SAMBA", "BIND9", "BIND9_DLZ"],
+ help="The DNS server backend. SAMBA is the builtin name server (experimental), BIND9 uses bind9 text database to store zone information (default), BIND9_DLZ uses samba4 AD to store zone information (recommended)")
parser.add_option("--dnspass", type="string", metavar="PASSWORD",
help="choose dns password (otherwise random)")
parser.add_option("--ldapadminpass", type="string", metavar="PASSWORD",
@@ -244,6 +247,7 @@ try:
ntdsguid=opts.ntds_guid,
invocationid=opts.invocationid, adminpass=opts.adminpass,
krbtgtpass=opts.krbtgtpass, machinepass=opts.machinepass,
+ dns_backend=opts.dns_backend,
dnspass=opts.dnspass, root=opts.root, nobody=opts.nobody,
wheel=opts.wheel, users=opts.users,
serverrole=server_role, dom_for_fun_level=dom_for_fun_level,