selftest: run smbcacls test against a share with a DFS link
authorNoel Power <noel.power@suse.com>
Thu, 2 Jul 2020 10:44:36 +0000 (11:44 +0100)
committerJeremy Allison <jra@samba.org>
Tue, 7 Jul 2020 21:40:33 +0000 (21:40 +0000)
The commit creates a dfs link in existing 'fileserver' env
share msdfs_share. Additionally we create a new dfs target in
a new share (with associated directory)

Additionally add a known fail as smbcacls doesn't not yet navigate DFS links.
A subsequent commit will fix smcacls to handle DFS (and remove the
knownfail)

Signed-off-by: Noel Power <noel.power@suse.com>
Reviewed-by: Jeremy Allison <jra@samba.org>
selftest/knownfail.d/smbcacls [new file with mode: 0644]
selftest/target/Samba3.pm
source4/selftest/tests.py

diff --git a/selftest/knownfail.d/smbcacls b/selftest/knownfail.d/smbcacls
new file mode 100644 (file)
index 0000000..bcd78ce
--- /dev/null
@@ -0,0 +1 @@
+^samba.tests.blackbox.smbcacls_basic\(DFS\)
index 1b7098e00aacf6e2dee2d33c23aea42c09a875c6..2e2f74efb79764d787b5558b8ba88eee734b30a9 100755 (executable)
@@ -1991,6 +1991,9 @@ sub provision($$)
        my $msdfs_deeppath="$msdfs_shrdir/deeppath";
        push(@dirs,$msdfs_deeppath);
 
+       my $smbcacls_sharedir_dfs="$shrdir/smbcacls_sharedir_dfs";
+       push(@dirs,$smbcacls_sharedir_dfs);
+
        my $badnames_shrdir="$shrdir/badnames";
        push(@dirs,$badnames_shrdir);
 
@@ -2072,6 +2075,8 @@ sub provision($$)
        symlink "msdfs:$server_ip\\ro-tmp,$server_ipv6\\ro-tmp",
                "$msdfs_shrdir/msdfs-src1";
        symlink "msdfs:$server_ipv6\\ro-tmp", "$msdfs_shrdir/deeppath/msdfs-src2";
+       symlink "msdfs:$server_ip\\smbcacls_sharedir_dfs,$server_ipv6\\smbcacls_sharedir_dfs",
+               "$msdfs_shrdir/smbcacls_sharedir_dfs";
 
        ##
        ## create bad names in $badnames_shrdir
@@ -2316,6 +2321,9 @@ sub provision($$)
        }
 
        print CONF "
+[smbcacls_sharedir_dfs]
+       path = $smbcacls_sharedir_dfs
+        comment = smb username is [%U]
 [tmp]
        path = $shrdir
         comment = smb username is [%U]
index cfbcfb438c570ed733cd015b278d2fc16d6fdd3b..0e219f94d041b2002218e4ee485bcdc3df6b392b 100755 (executable)
@@ -927,6 +927,11 @@ planoldpythontestsuite("fileserver",
                        extra_args=['-U"$USERNAME%$PASSWORD"'])
 planoldpythontestsuite("fileserver",
                        "samba.tests.blackbox.smbcacls_basic")
+planoldpythontestsuite("fileserver",
+                       "samba.tests.blackbox.smbcacls_basic",
+                       "samba.tests.blackbox.smbcacls_basic(DFS)",
+                       environ={'SHARE': 'msdfs-share',
+                                 'TESTDIR': 'smbcacls_sharedir_dfs'})
 
 #
 # Want a selection of environments across the process models