From 97b13799ce4786f03602fba8eb6ad5da7023bb5c Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Wed, 22 Aug 2012 06:58:19 +1000 Subject: s4-classicupgrade: Add --use-ntvfs option This is an odd option, but is needed because I wish to add assertions about ACL setting that will not work in make test without the vfs_fake_acls module loaded. Andrew Bartlett --- source4/scripting/python/samba/netcmd/domain.py | 6 ++++-- source4/scripting/python/samba/upgrade.py | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/source4/scripting/python/samba/netcmd/domain.py b/source4/scripting/python/samba/netcmd/domain.py index 9791704064..b86f52f0f1 100644 --- a/source4/scripting/python/samba/netcmd/domain.py +++ b/source4/scripting/python/samba/netcmd/domain.py @@ -911,6 +911,8 @@ class cmd_domain_classicupgrade(Command): Option("--verbose", help="Be verbose", action="store_true"), Option("--use-xattrs", type="choice", choices=["yes","no","auto"], metavar="[yes|no|auto]", help="Define if we should use the native fs capabilities or a tdb file for storing attributes likes ntacl, auto tries to make an inteligent guess based on the user rights and system capabilities", default="auto"), + Option("--use-ntvfs", help="Use NTVFS for the fileserver (default = no)", + action="store_true"), Option("--dns-backend", type="choice", metavar="NAMESERVER-BACKEND", choices=["SAMBA_INTERNAL", "BIND9_FLATFILE", "BIND9_DLZ", "NONE"], help="The DNS server backend. SAMBA_INTERNAL is the builtin name server, " \ @@ -924,7 +926,7 @@ class cmd_domain_classicupgrade(Command): def run(self, smbconf=None, targetdir=None, dbdir=None, testparm=None, quiet=False, verbose=False, use_xattrs=None, sambaopts=None, versionopts=None, - dns_backend=None): + dns_backend=None, use_ntvfs=False): if not os.path.exists(smbconf): raise CommandError("File %s does not exist" % smbconf) @@ -1008,7 +1010,7 @@ class cmd_domain_classicupgrade(Command): logger.info("Provisioning") upgrade_from_samba3(samba3, logger, targetdir, session_info=system_session(), - useeadb=eadb, dns_backend=dns_backend) + useeadb=eadb, dns_backend=dns_backend, use_ntvfs=use_ntvfs) class cmd_domain(SuperCommand): """Domain management""" diff --git a/source4/scripting/python/samba/upgrade.py b/source4/scripting/python/samba/upgrade.py index 8ce080b52f..f363a9c02d 100644 --- a/source4/scripting/python/samba/upgrade.py +++ b/source4/scripting/python/samba/upgrade.py @@ -545,7 +545,8 @@ def get_posix_attr_from_ldap_backend(logger, ldb_object, base_dn, user, attr): logger.warning("LDAP entry for user %s contains more than one %s", user, attr) return None -def upgrade_from_samba3(samba3, logger, targetdir, session_info=None, useeadb=False, dns_backend=None): +def upgrade_from_samba3(samba3, logger, targetdir, session_info=None, useeadb=False, dns_backend=None, + use_ntvfs=False): """Upgrade from samba3 database to samba4 AD database :param samba3: samba3 object @@ -779,7 +780,8 @@ Please fix this account before attempting to upgrade again dom_for_fun_level=dsdb.DS_DOMAIN_FUNCTION_2003, hostname=netbiosname.lower(), machinepass=machinepass, serverrole=serverrole, samdb_fill=FILL_FULL, - useeadb=useeadb, dns_backend=dns_backend, use_rfc2307=True) + useeadb=useeadb, dns_backend=dns_backend, use_rfc2307=True, + use_ntvfs=use_ntvfs) result.report_logger(logger) # Import WINS database -- cgit