diff options
Diffstat (limited to 'source4/scripting/python')
| -rw-r--r-- | source4/scripting/python/samba/provision/__init__.py | 28 | 
1 files changed, 16 insertions, 12 deletions
| diff --git a/source4/scripting/python/samba/provision/__init__.py b/source4/scripting/python/samba/provision/__init__.py index a84bb5b7ea..5f64d773e3 100644 --- a/source4/scripting/python/samba/provision/__init__.py +++ b/source4/scripting/python/samba/provision/__init__.py @@ -1661,18 +1661,6 @@ def provision(logger, session_info, credentials, smbconf=None,          server_services.append("+s3fs")          global_param["dcerpc endpoint servers"] = ["-winreg", "-srvsvc"] -        if targetdir is not None: -            file = tempfile.NamedTemporaryFile(dir=os.path.abspath(targetdir)) -        else: -            file = tempfile.NamedTemporaryFile(dir=os.path.abspath(os.path.dirname(lp.get("private dir")))) -        try: -            try: -                smbd.set_simple_acl(file.name, root_uid, wheel_gid) -            except Exception: -                raise ProvisioningError("Your filesystem or build does not support posix ACLs, s3fs is unworkable in this mode") -        finally: -            file.close() -      if len(server_services) > 0:          global_param["server services"] = server_services @@ -1744,6 +1732,22 @@ def provision(logger, session_info, credentials, smbconf=None,      if not os.path.exists(paths.state_dir):          os.mkdir(paths.state_dir) +    if paths.sysvol and not os.path.exists(paths.sysvol): +        os.makedirs(paths.sysvol, 0775) + +    if not use_ntvfs and serverrole == "domain controller": +        if paths.sysvol is None: +            raise MissingShareError("sysvol", paths.smbconf) + +        file = tempfile.NamedTemporaryFile(dir=os.path.abspath(paths.sysvol)) +        try: +            try: +                smbd.set_simple_acl(file.name, root_uid, wheel_gid) +            except Exception: +                raise ProvisioningError("Your filesystem or build does not support posix ACLs, s3fs is unworkable in this mode") +        finally: +            file.close() +      ldapi_url = "ldapi://%s" % urllib.quote(paths.s4_ldapi_path, safe="")      schema = Schema(domainsid, invocationid=invocationid, | 
