]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
samba-tool ntacl: better messages for missing files
authorDouglas Bagnall <douglas.bagnall@catalyst.net.nz>
Wed, 10 Aug 2022 23:26:44 +0000 (11:26 +1200)
committerDouglas Bagnall <dbagnall@samba.org>
Wed, 7 Sep 2022 06:02:20 +0000 (06:02 +0000)
BUG: https://bugzilla.samba.org/show_bug.cgi?id=14937

Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Autobuild-User(master): Douglas Bagnall <dbagnall@samba.org>
Autobuild-Date(master): Wed Sep  7 06:02:20 UTC 2022 on sn-devel-184

python/samba/netcmd/ntacl.py
selftest/knownfail.d/samba-tool-ntacl [deleted file]

index 7df75d247fe2d501ae1b7199d05eab807978dee8..8675719017db3e2ea80d92b3986713275932e52f 100644 (file)
@@ -409,10 +409,15 @@ class cmd_ntacl_sysvolreset(Command):
         if use_ntvfs:
             logger.warning("Please note that POSIX permissions have NOT been changed, only the stored NT ACL")
 
-        provision.setsysvolacl(samdb, netlogon, sysvol,
-                               LA_uid, BA_gid, domain_sid,
-                               lp.get("realm").lower(), samdb.domain_dn(),
-                               lp, use_ntvfs=use_ntvfs)
+        try:
+            provision.setsysvolacl(samdb, netlogon, sysvol,
+                                   LA_uid, BA_gid, domain_sid,
+                                   lp.get("realm").lower(), samdb.domain_dn(),
+                                   lp, use_ntvfs=use_ntvfs)
+        except OSError as e:
+            if not e.filename:
+                raise
+            raise CommandError(f"Could not access {e.filename}: {e.strerror}", e)
 
 
 class cmd_ntacl_sysvolcheck(Command):
@@ -440,10 +445,15 @@ class cmd_ntacl_sysvolcheck(Command):
 
         domain_sid = security.dom_sid(samdb.domain_sid)
 
-        provision.checksysvolacl(samdb, netlogon, sysvol,
-                                 domain_sid,
-                                 lp.get("realm").lower(), samdb.domain_dn(),
-                                 lp)
+        try:
+            provision.checksysvolacl(samdb, netlogon, sysvol,
+                                     domain_sid,
+                                     lp.get("realm").lower(), samdb.domain_dn(),
+                                     lp)
+        except OSError as e:
+            if not e.filename:
+                raise
+            raise CommandError(f"Could not access {e.filename}: {e.strerror}", e)
 
 
 class cmd_ntacl(SuperCommand):
diff --git a/selftest/knownfail.d/samba-tool-ntacl b/selftest/knownfail.d/samba-tool-ntacl
deleted file mode 100644 (file)
index cffdcd1..0000000
+++ /dev/null
@@ -1 +0,0 @@
-^samba.tests.samba_tool.ntacl.+test_with_missing_files