2 # This script generates a list of testsuites that should be run as part of
3 # the Samba 3 test suite.
5 # The output of this script is parsed by selftest.pl, which then decides
6 # which of the tests to actually run. It will, for example, skip all tests
7 # listed in selftest/skip or only run a subset during "make quicktest".
9 # The idea is that this script outputs all of the tests of Samba 3, not
10 # just those that are known to pass, and list those that should be skipped
11 # or are known to fail in selftest/skip or selftest/samba3-knownfail. This makes it
12 # very easy to see what functionality is still missing in Samba 3 and makes
13 # it possible to run the testsuite against other servers, such as Samba 4 or
14 # Windows that have a different set of features.
16 # The syntax for a testsuite is "-- TEST --" on a single line, followed
17 # by the name of the test, the environment it needs and the command to run, all
18 # three separated by newlines. All other lines in the output are considered
23 sys
.path
.insert(0, os
.path
.normpath(os
.path
.join(os
.path
.dirname(__file__
), "../../selftest")))
24 import selftesthelpers
25 from selftesthelpers
import bindir
, srcdir
, scriptdir
, binpath
26 from selftesthelpers
import plantestsuite
, samba3srcdir
27 from selftesthelpers
import smbtorture3
, configuration
, smbclient3
, smbtorture4
28 from selftesthelpers
import net
, wbinfo
, dbwrap_tool
, rpcclient
, python
29 from selftesthelpers
import smbget
, smbcacls
, smbcquotas
, ntlm_auth3
30 from selftesthelpers
import valgrindify
, smbtorture4_testsuites
31 from selftesthelpers
import smbtorture4_options
32 from selftesthelpers
import smbcontrol
33 from selftesthelpers
import smbstatus
34 smbtorture4_options
.extend([
35 '--option=torture:sharedelay=100000',
36 '--option=torture:writetimeupdatedelay=500000',
40 def plansmbtorture4testsuite(name
, env
, options
, description
=''):
42 modname
= "samba3.%s" % (name
, )
44 modname
= "samba3.%s %s" % (name
, description
)
46 selftesthelpers
.plansmbtorture4testsuite(
47 name
, env
, options
, target
='samba3', modname
=modname
)
52 config_h
= os
.environ
["CONFIG_H"]
54 samba4bindir
= bindir()
55 config_h
= os
.path
.join(samba4bindir
, "default/include/config.h")
57 # check available features
59 f
= open(config_h
, 'r')
62 config_hash
= dict((x
[0], ' '.join(x
[1:]))
63 for x
in map(lambda line
: line
.strip().split(' ')[1:],
64 filter(lambda line
: (line
[0:7] == '#define') and (len(line
.split(' ')) > 2), lines
)))
68 have_linux_kernel_oplocks
= ("HAVE_KERNEL_OPLOCKS_LINUX" in config_hash
)
69 have_inotify
= ("HAVE_INOTIFY" in config_hash
)
70 have_ldwrap
= ("HAVE_LDWRAP" in config_hash
)
71 with_pthreadpool
= ("WITH_PTHREADPOOL" in config_hash
)
74 plantestsuite("samba3.blackbox.success", "nt4_dc:local", [os
.path
.join(samba3srcdir
, "script/tests/test_success.sh")])
75 plantestsuite("samba3.blackbox.failure", "nt4_dc:local", [os
.path
.join(samba3srcdir
, "script/tests/test_failure.sh")])
77 plantestsuite("samba3.local_s3", "nt4_dc:local", [os
.path
.join(samba3srcdir
, "script/tests/test_local_s3.sh")])
79 plantestsuite("samba3.blackbox.registry.upgrade", "nt4_dc:local", [os
.path
.join(samba3srcdir
, "script/tests/test_registry_upgrade.sh"), net
, dbwrap_tool
])
81 tests
= ["FDPASS", "LOCK1", "LOCK2", "LOCK3", "LOCK4", "LOCK5", "LOCK6", "LOCK7",
87 "UNLINK", "BROWSE", "ATTR", "TRANS2", "TORTURE",
88 "OPLOCK1", "OPLOCK2", "OPLOCK4", "STREAMERROR",
89 "DIR", "DIR1", "DIR-CREATETIME", "TCON", "TCONDEV", "RW1", "RW2", "RW3", "LARGE_READX", "RW-SIGNING",
90 "OPEN", "XCOPY", "RENAME", "DELETE", "DELETE-LN", "WILDDELETE", "PROPERTIES", "W2K",
91 "TCON2", "IOCTL", "CHKPATH", "FDSESS", "CHAIN1", "CHAIN2", "OWNER-RIGHTS",
92 "CHAIN3", "PIDHIGH", "CLI_SPLICE",
93 "UID-REGRESSION-TEST",
94 "CASE-INSENSITIVE-CREATE", "SMB2-BASIC", "NTTRANS-FSCTL", "SMB2-NEGPROT",
95 "SMB2-SESSION-REAUTH", "SMB2-SESSION-RECONNECT", "SMB2-FTRUNCATE",
96 "SMB2-ANONYMOUS", "SMB2-DIR-FSYNC",
105 plantestsuite("samba3.smbtorture_s3.plain.%s" % t
, "fileserver", [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), t
, '//$SERVER_IP/tmp', '$USERNAME', '$PASSWORD', smbtorture3
, "", "-l $LOCAL_PATH"])
106 plantestsuite("samba3.smbtorture_s3.crypt_client.%s" % t
, "nt4_dc", [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), t
, '//$SERVER_IP/tmp', '$USERNAME', '$PASSWORD', smbtorture3
, "-e", "-l $LOCAL_PATH"])
108 # this is a negative test to verify that the server rejects
109 # access without encryption
110 plantestsuite("samba3.smbtorture_s3.crypt_server.%s" % t
, "nt4_dc", [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), t
, '//$SERVER_IP/tmpenc', '$USERNAME', '$PASSWORD', smbtorture3
, "", "-l $LOCAL_PATH"])
111 if t
== "CLI_SPLICE":
112 # We must test this against the SMB1 fallback.
113 plantestsuite("samba3.smbtorture_s3.plain.%s" % t
, "fileserver", [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), t
, '//$SERVER_IP/tmp', '$USERNAME', '$PASSWORD', smbtorture3
, "", "-l $LOCAL_PATH", "-mNT1"])
114 plantestsuite("samba3.smbtorture_s3.plain.%s" % t
, "ad_dc_ntvfs", [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), t
, '//$SERVER_IP/tmp', '$USERNAME', '$PASSWORD', smbtorture3
, "", "-l $LOCAL_PATH"])
120 for t
in nonunix_tests
:
122 "samba3.smbtorture_s3.plain.%s" % t
,
124 [os
.path
.join(samba3srcdir
,
125 "script/tests/test_smbtorture_s3_no_unix_ext.sh"),
133 # Can't run SMB1 encrypted tests without unix extensions. This
134 # will have to be added once we do SMB3 unix extensions.
137 plantestsuite("samba3.smbtorture_s3.plain.%s" % t
, "ad_dc", [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), t
, '//$SERVER/tmp', '$DC_USERNAME', '$DC_PASSWORD', smbtorture3
, "", "-l $LOCAL_PATH"])
140 plantestsuite("samba3.smbtorture_s3.plain.%s" % t
,
142 [os
.path
.join(samba3srcdir
,
143 "script/tests/test_smbtorture_s3.sh"),
153 # RENAME-ACCESS needs to run against a special share - acl_xattr_ign_sysacl_windows
155 plantestsuite("samba3.smbtorture_s3.plain.%s" % "RENAME-ACCESS", "nt4_dc", [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), "RENAME-ACCESS", '//$SERVER_IP/acl_xattr_ign_sysacl_windows', '$USERNAME', '$PASSWORD', smbtorture3
, "", "-l $LOCAL_PATH"])
156 plantestsuite("samba3.smbtorture_s3.crypt_client.%s" % "RENAME-ACCESS", "nt4_dc", [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), "RENAME-ACCESS", '//$SERVER_IP/acl_xattr_ign_sysacl_windows', '$USERNAME', '$PASSWORD', smbtorture3
, "-e", "-l $LOCAL_PATH"])
159 tests
= ["OPLOCK-CANCEL"]
161 plantestsuite("samba3.smbtorture_s3.plain.%s" % t
, "nt4_dc", [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), t
, '//$SERVER_IP/tmp', '$USERNAME', '$PASSWORD', smbtorture3
, "", "-l $LOCAL_PATH"])
164 tests
= ["MANGLE-ILLEGAL"]
166 plantestsuite("samba3.smbtorture_s3.plain.%s" % t
, env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), t
, '//$SERVER_IP/mangle_illegal', '$USERNAME', '$PASSWORD', smbtorture3
, "", "-l $LOCAL_PATH"])
168 tests
= ["RW1", "RW2", "RW3", "SMB2-BASIC"]
170 plantestsuite("samba3.smbtorture_s3.vfs_aio_pthread(simpleserver).%s" % t
, "simpleserver", [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), t
, '//$SERVER_IP/vfs_aio_pthread', '$USERNAME', '$PASSWORD', smbtorture3
, "", "-l $LOCAL_PATH"])
171 plantestsuite("samba3.smbtorture_s3.vfs_aio_fork(simpleserver).%s" % t
, "simpleserver", [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), t
, '//$SERVER_IP/vfs_aio_fork', '$USERNAME', '$PASSWORD', smbtorture3
, "", "-l $LOCAL_PATH"])
173 plantestsuite("samba3.smbtorture_s3.hidenewfiles(simpleserver)",
175 [os
.path
.join(samba3srcdir
,
176 "script/tests/test_smbtorture_s3.sh"),
177 'hide-new-files-timeout',
178 '//$SERVER_IP/hidenewfiles',
186 "vfs_aio_pthread_async_dosmode_default1",
187 "vfs_aio_pthread_async_dosmode_default2",
188 "vfs_aio_pthread_async_dosmode_force_sync1",
189 "vfs_aio_pthread_async_dosmode_force_sync2"
192 plantestsuite("samba3.smbtorture_s3.%s(simpleserver).SMB2-BASIC" % s
, "simpleserver", [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), 'SMB2-BASIC', '//$SERVER_IP/' + s
, '$USERNAME', '$PASSWORD', smbtorture3
, "", "-l $LOCAL_PATH"])
193 t
= "smb2.compound_find"
194 plansmbtorture4testsuite(t
, "simpleserver", "//%s/%s %s" % ('$SERVER_IP', s
, '-U$USERNAME%$PASSWORD'), description
=s
)
196 posix_tests
= ["POSIX", "POSIX-APPEND", "POSIX-SYMLINK-ACL", "POSIX-SYMLINK-EA", "POSIX-OFD-LOCK",
197 "POSIX-STREAM-DELETE", "WINDOWS-BAD-SYMLINK", "POSIX-MKDIR",
198 "POSIX-BLOCKING-LOCK",
200 "POSIX-ACL-SHAREROOT",
203 for t
in posix_tests
:
204 plantestsuite("samba3.smbtorture_s3.plain.%s" % t
, "nt4_dc", [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), t
, '//$SERVER_IP/posix_share', '$USERNAME', '$PASSWORD', smbtorture3
, "", "-l $LOCAL_PATH"])
205 plantestsuite("samba3.smbtorture_s3.crypt.%s" % t
, "nt4_dc", [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), t
, '//$SERVER_IP/posix_share', '$USERNAME', '$PASSWORD', smbtorture3
, "-e", "-l $LOCAL_PATH"])
206 plantestsuite("samba3.smbtorture_s3.plain.%s" % t
, "ad_dc_ntvfs", [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), t
, '//$SERVER_IP/posix_share', '$USERNAME', '$PASSWORD', smbtorture3
, "", "-l $LOCAL_PATH"])
215 "LOCAL-string_to_sid",
216 "LOCAL-sid_to_string",
217 "LOCAL-binary_to_sid",
220 "LOCAL-CONVERT-STRING",
221 "LOCAL-CONV-AUTH-INFO",
222 "LOCAL-IDMAP-TDB-COMMON",
223 "LOCAL-MESSAGING-READ1",
224 "LOCAL-MESSAGING-READ2",
225 "LOCAL-MESSAGING-READ3",
226 "LOCAL-MESSAGING-READ4",
227 "LOCAL-MESSAGING-FDPASS1",
228 "LOCAL-MESSAGING-FDPASS2",
229 "LOCAL-MESSAGING-FDPASS2a",
230 "LOCAL-MESSAGING-FDPASS2b",
231 "LOCAL-MESSAGING-SEND-ALL",
232 "LOCAL-PTHREADPOOL-TEVENT",
233 "LOCAL-CANONICALIZE-PATH",
234 "LOCAL-DBWRAP-WATCH1",
235 "LOCAL-DBWRAP-WATCH2",
236 "LOCAL-DBWRAP-WATCH3",
237 "LOCAL-DBWRAP-WATCH4",
238 "LOCAL-DBWRAP-DO-LOCKED1",
247 "LOCAL-NAMEMAP-CACHE1",
248 "LOCAL-IDMAP-CACHE1",
249 "LOCAL-hex_encode_buf",
250 "LOCAL-remove_duplicate_addrs2"]
252 for t
in local_tests
:
253 plantestsuite("samba3.smbtorture_s3.%s" % t
, "none", [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), t
, '//foo/bar', '""', '""', smbtorture3
, ""])
255 plantestsuite("samba.vfstest.stream_depot", "nt4_dc:local", [os
.path
.join(samba3srcdir
, "script/tests/stream-depot/run.sh"), binpath("vfstest"), "$PREFIX", configuration
])
256 plantestsuite("samba.vfstest.xattr-tdb-1", "nt4_dc:local", [os
.path
.join(samba3srcdir
, "script/tests/xattr-tdb-1/run.sh"), binpath("vfstest"), "$PREFIX", configuration
])
257 plantestsuite("samba.vfstest.acl", "nt4_dc:local", [os
.path
.join(samba3srcdir
, "script/tests/vfstest-acl/run.sh"), binpath("vfstest"), "$PREFIX", configuration
])
258 plantestsuite("samba.vfstest.catia", "nt4_dc:local", [os
.path
.join(samba3srcdir
, "script/tests/vfstest-catia/run.sh"), binpath("vfstest"), "$PREFIX", configuration
])
260 plantestsuite("samba3.blackbox.smbclient_basic.NT1", "nt4_dc_schannel", [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_basic.sh"), '$SERVER', '$SERVER_IP', '$DC_USERNAME', '$DC_PASSWORD', smbclient3
, configuration
, "-mNT1"])
261 plantestsuite("samba3.blackbox.smbclient_basic.SMB2_02", "nt4_dc_schannel", [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_basic.sh"), '$SERVER', '$SERVER_IP', '$DC_USERNAME', '$DC_PASSWORD', smbclient3
, configuration
, "-mSMB2_02"])
262 plantestsuite("samba3.blackbox.smbclient_basic.SMB2_10", "nt4_dc_schannel", [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_basic.sh"), '$SERVER', '$SERVER_IP', '$DC_USERNAME', '$DC_PASSWORD', smbclient3
, configuration
, "-mSMB2_10"])
263 plantestsuite("samba3.blackbox.smbclient_basic.SMB3_02", "nt4_dc_schannel", [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_basic.sh"), '$SERVER', '$SERVER_IP', '$DC_USERNAME', '$DC_PASSWORD', smbclient3
, configuration
, "-mSMB3_02"])
264 plantestsuite("samba3.blackbox.smbclient_basic.SMB3_11", "nt4_dc_schannel", [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_basic.sh"), '$SERVER', '$SERVER_IP', '$DC_USERNAME', '$DC_PASSWORD', smbclient3
, configuration
, "-mSMB3_11"])
266 plantestsuite("samba3.blackbox.smbclient_basic", "ad_member", [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_basic.sh"), '$SERVER', '$SERVER_IP', '$DC_USERNAME', '$DC_PASSWORD', smbclient3
, configuration
])
267 for options
in ["", "--option=clientntlmv2auth=no", "--option=clientusespnego=no", "--option=clientusespnego=no --option=clientntlmv2auth=no", "--option=clientntlmv2auth=no --option=clientlanmanauth=yes --max-protocol=LANMAN2", "--option=clientntlmv2auth=no --option=clientlanmanauth=yes --option=clientmaxprotocol=NT1"]:
269 plantestsuite("samba3.blackbox.smbclient_auth.plain.%s" % (options
), env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$DC_USERNAME', '$DC_PASSWORD', smbclient3
, configuration
, options
])
271 for env
in ["nt4_dc", "nt4_member", "ad_member", "ad_dc", "ad_dc_ntvfs", "s4member", "fl2000dc"]:
272 plantestsuite("samba3.blackbox.smbclient_machine_auth.plain", "%s:local" % env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_machine_auth.sh"), '$SERVER', smbclient3
, configuration
])
273 plantestsuite("samba3.blackbox.smbclient_ntlm.plain NT1", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_ntlm.sh"), '$SERVER', '$DC_USERNAME', '$DC_PASSWORD', "never", smbclient3
, "NT1", configuration
])
274 plantestsuite("samba3.blackbox.smbclient_ntlm.plain SMB3", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_ntlm.sh"), '$SERVER', '$DC_USERNAME', '$DC_PASSWORD', "never", smbclient3
, "SMB3", configuration
])
276 for options
in ["--option=clientntlmv2auth=no", "--option=clientusespnego=no --option=clientntlmv2auth=no", "--option=clientusespnego=no --option=clientntlmv2auth=no -mNT1", ""]:
277 for env
in ["nt4_member", "ad_member"]:
278 plantestsuite("samba3.blackbox.smbclient_auth.plain.%s" % (options
), env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$DC_USERNAME', '$DC_PASSWORD', smbclient3
, configuration
, options
])
279 plantestsuite("samba3.blackbox.smbclient_auth.plain.%s.member_creds" % (options
), env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$SERVER/$USERNAME', '$PASSWORD', smbclient3
, configuration
, options
])
281 for env
in ["nt4_member", "ad_member"]:
282 plantestsuite("samba3.blackbox.smbclient_auth.empty_domain.domain_creds", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '/$DC_USERNAME', '$DC_PASSWORD', smbclient3
, configuration
, options
])
283 plantestsuite("samba3.blackbox.smbclient_auth.empty_domain.member_creds", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '/$USERNAME', '$PASSWORD', smbclient3
, configuration
, options
])
284 plantestsuite("samba3.blackbox.smbclient_auth.dot_domain.domain_creds", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', './$DC_USERNAME', '$DC_PASSWORD', smbclient3
, configuration
, options
])
285 plantestsuite("samba3.blackbox.smbclient_auth.dot_domain.member_creds", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', './$USERNAME', '$PASSWORD', smbclient3
, configuration
, options
])
286 plantestsuite("samba3.blackbox.smbclient_auth.upn.domain_creds", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$DC_USERNAME@$REALM', '$DC_PASSWORD', smbclient3
, configuration
, options
])
287 plantestsuite("samba3.blackbox.smbclient_auth.upn.member_creds", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$USERNAME@$SERVER', '$PASSWORD', smbclient3
, configuration
, options
])
290 plantestsuite("samba3.blackbox.smbspool", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbspool.sh"), '$SERVER', '$SERVER_IP', '$DC_USERNAME', '$DC_PASSWORD', env
])
292 for env
in ["ad_member:local", "nt4_dc:local"]:
293 plantestsuite("samba3.blackbox.smbpasswd", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbpasswd.sh"), '$SERVER', '$SERVER_IP', '$DC_USERNAME', '$DC_PASSWORD'])
296 plantestsuite("samba3.blackbox.smbclient_auth.plain.ipv6", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IPV6', '$SERVER/$USERNAME', '$PASSWORD', smbclient3
, configuration
])
298 for env
in ["nt4_member", "ad_member"]:
299 plantestsuite("samba3.blackbox.net_cred_change", "%s:local" % env
, [os
.path
.join(samba3srcdir
, "script/tests/test_net_cred_change.sh"), configuration
])
302 t
= "--krb5auth=$DOMAIN/$DC_USERNAME%$DC_PASSWORD"
303 plantestsuite("samba3.wbinfo_simple.%s" % t
, "%s:local" % env
, [os
.path
.join(srcdir(), "nsswitch/tests/test_wbinfo_simple.sh"), t
])
304 plantestsuite("samba3.wbinfo_name_lookup", env
,
305 [os
.path
.join(srcdir(),
306 "nsswitch/tests/test_wbinfo_name_lookup.sh"),
307 '$DOMAIN', '$REALM', '$DC_USERNAME'])
310 plantestsuite("samba3.wbinfo_user_info_cached", env
,
311 [os
.path
.join(srcdir(),
312 "nsswitch/tests/test_wbinfo_user_info_cached.sh"),
313 '$DOMAIN', '$REALM', 'joe', 'Secret007', '"Samba Users"', env
])
314 plantestsuite("samba3.wbinfo_user_info_cached.trustdom", env
,
315 [os
.path
.join(srcdir(),
316 "nsswitch/tests/test_wbinfo_user_info_cached.sh"),
317 '$TRUST_F_BOTH_DOMAIN', '$TRUST_F_BOTH_REALM', 'joe', 'Secret007', '"Samba Users"', env
])
319 env
= "ad_member:local"
320 plantestsuite("samba3.wbinfo_user_info", env
,
321 [os
.path
.join(srcdir(),
322 "nsswitch/tests/test_wbinfo_user_info.sh"),
323 '$DOMAIN', '$REALM', '$DOMAIN', 'alice', 'alice', 'jane', 'jane.doe', env
])
325 env
= "fl2008r2dc:local"
326 plantestsuite("samba3.wbinfo_user_info", env
,
327 [os
.path
.join(srcdir(),
328 "nsswitch/tests/test_wbinfo_user_info.sh"),
329 '$TRUST_DOMAIN', '$TRUST_REALM', '$DOMAIN', 'alice', 'alice', 'jane', 'jane.doe', env
])
331 env
= "nt4_member:local"
332 plantestsuite("samba3.wbinfo_sids_to_xids", env
,
333 [os
.path
.join(srcdir(),
334 "nsswitch/tests/test_wbinfo_sids_to_xids.sh")])
337 t
= "WBCLIENT-MULTI-PING"
338 plantestsuite("samba3.smbtorture_s3.%s" % t
, env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbtorture_s3.sh"), t
, '//foo/bar', '""', '""', smbtorture3
, ""])
339 plantestsuite("samba3.substitutions", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_substitutions.sh"), "$SERVER", "alice", "Secret007", "$PREFIX"])
341 for env
in ["maptoguest", "simpleserver"]:
342 plantestsuite("samba3.blackbox.smbclient_auth.plain.local_creds", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$USERNAME', '$PASSWORD', smbclient3
, configuration
+ " --option=clientntlmv2auth=no --option=clientlanmanauth=yes"])
345 plantestsuite("samba3.blackbox.smbclient_auth.plain.bad_username", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', 'notmy$USERNAME', '$PASSWORD', smbclient3
, configuration
+ " --option=clientntlmv2auth=no --option=clientlanmanauth=yes"])
346 plantestsuite("samba3.blackbox.smbclient_ntlm.plain.NT1", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_ntlm.sh"), '$SERVER', '$USERNAME', '$PASSWORD', "baduser", smbclient3
, "NT1", configuration
])
347 plantestsuite("samba3.blackbox.smbclient_ntlm.plain.SMB3", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_ntlm.sh"), '$SERVER', '$USERNAME', '$PASSWORD', "baduser", smbclient3
, "NT1", configuration
])
350 for env
in ["nt4_dc"]:
351 plantestsuite("samba3.blackbox.smbclient_s3.NT1.plain", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$DC_USERNAME', '$DC_PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient3
, wbinfo
, net
, configuration
, "NT1"])
352 plantestsuite("samba3.blackbox.smbclient_s3.SMB3.plain", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$DC_USERNAME', '$DC_PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient3
, wbinfo
, net
, configuration
, "SMB3"])
354 for env
in ["nt4_member", "ad_member"]:
355 plantestsuite("samba3.blackbox.smbclient_s3.NT1.plain.member_creds", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$SERVER', '$SERVER/$USERNAME', '$PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient3
, wbinfo
, net
, configuration
, "NT1"])
356 plantestsuite("samba3.blackbox.smbclient_s3.SMB3.plain.member_creds", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$SERVER', '$SERVER/$USERNAME', '$PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient3
, wbinfo
, net
, configuration
, "SMB3"])
358 for env
in ["nt4_dc"]:
359 plantestsuite("samba3.blackbox.smbclient_s3.NT1.sign", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$DC_USERNAME', '$DC_PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient3
, wbinfo
, net
, configuration
, "NT1", "--signing=required"])
360 plantestsuite("samba3.blackbox.smbclient_s3.SMB3.sign", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$DC_USERNAME', '$DC_PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient3
, wbinfo
, net
, configuration
, "SMB3", "--signing=required"])
362 for env
in ["nt4_member", "ad_member"]:
363 plantestsuite("samba3.blackbox.smbclient_s3.NT1.sign.member_creds", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$SERVER', '$SERVER/$USERNAME', '$PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient3
, wbinfo
, net
, configuration
, "NT1", "--signing=required"])
364 plantestsuite("samba3.blackbox.smbclient_s3.SMB3.sign.member_creds", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$SERVER', '$SERVER/$USERNAME', '$PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient3
, wbinfo
, net
, configuration
, "SMB3", "--signing=required"])
366 for env
in ["nt4_dc"]:
368 plantestsuite("samba3.blackbox.smbclient_s3.NT1.crypt", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$USERNAME', '$PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient3
, wbinfo
, net
, configuration
, "NT1", "-e"])
369 plantestsuite("samba3.blackbox.smbclient_s3.SMB3.crypt", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$USERNAME', '$PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient3
, wbinfo
, net
, configuration
, "SMB3", "-e"])
371 for env
in ["fileserver"]:
372 plantestsuite("samba3.blackbox.preserve_case.NT1", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_preserve_case.sh"), '$SERVER', '$DOMAIN', '$USERNAME', '$PASSWORD', '$PREFIX', smbclient3
, "NT1"])
373 plantestsuite("samba3.blackbox.preserve_case.SMB2+", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_preserve_case.sh"), '$SERVER', '$DOMAIN', '$USERNAME', '$PASSWORD', '$PREFIX', smbclient3
, '"SMB2 SMB3"'])
374 plantestsuite("samba3.blackbox.dfree_command.NT1", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_dfree_command.sh"), '$SERVER', '$DOMAIN', '$USERNAME', '$PASSWORD', '$PREFIX', smbclient3
, "NT1"])
375 plantestsuite("samba3.blackbox.dfree_command.SMB3", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_dfree_command.sh"), '$SERVER', '$DOMAIN', '$USERNAME', '$PASSWORD', '$PREFIX', smbclient3
, "SMB3"])
376 plantestsuite("samba3.blackbox.dfree_quota.NT1", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_dfree_quota.sh"), '$SERVER', '$DOMAIN', '$USERNAME', '$PASSWORD', '$LOCAL_PATH', smbclient3
, smbcquotas
, smbcacls
, "NT1"])
377 plantestsuite("samba3.blackbox.dfree_quota.SMB3", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_dfree_quota.sh"), '$SERVER', '$DOMAIN', '$USERNAME', '$PASSWORD', '$LOCAL_PATH', smbclient3
, smbcquotas
, smbcacls
, "SMB3"])
378 plantestsuite("samba3.blackbox.smbcquotas", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbcquota.sh"), '$SERVER', '$DOMAIN', '$USERNAME', '$PASSWORD', '$LOCAL_PATH', smbcquotas
])
379 plantestsuite("samba3.blackbox.valid_users", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_valid_users.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$USERNAME', '$PASSWORD', '$PREFIX', smbclient3
])
380 plantestsuite("samba3.blackbox.force_create_mode", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_force_create_mode.sh"), '$SERVER', '$DOMAIN', '$USERNAME', '$PASSWORD', '$PREFIX', env
, smbclient3
])
381 plantestsuite("samba3.blackbox.dropbox", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_dropbox.sh"), '$SERVER', '$DOMAIN', 'gooduser', '$PASSWORD', '$PREFIX', env
, smbclient3
])
382 plantestsuite("samba3.blackbox.offline", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_offline.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$USERNAME', '$PASSWORD', '$LOCAL_PATH/offline', smbclient3
])
383 plantestsuite("samba3.blackbox.shadow_copy2.NT1", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_shadow_copy.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$USERNAME', '$PASSWORD', '$LOCAL_PATH/shadow', smbclient3
, '-m', 'NT1'])
384 plantestsuite("samba3.blackbox.shadow_copy2.SMB3", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_shadow_copy.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$USERNAME', '$PASSWORD', '$LOCAL_PATH/shadow', smbclient3
, '-m', 'SMB3'])
385 plantestsuite("samba3.blackbox.shadow_copy_torture", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_shadow_copy_torture.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$USERNAME', '$PASSWORD', '$LOCAL_PATH/shadow', smbtorture4
])
386 plantestsuite("samba3.blackbox.smbclient.forceuser_validusers", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_forceuser_validusers.sh"), '$SERVER', '$DOMAIN', '$USERNAME', '$PASSWORD', '$LOCAL_PATH', smbclient3
])
387 plantestsuite("samba3.blackbox.smbget", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbget.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', 'smbget_user', '$PASSWORD', '$LOCAL_PATH/smbget', smbget
])
388 plantestsuite("samba3.blackbox.netshareenum", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_shareenum.sh"), '$SERVER', '$USERNAME', '$PASSWORD', rpcclient
])
389 plantestsuite("samba3.blackbox.acl_xattr.NT1", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_acl_xattr.sh"), '$SERVER', '$USERNAME', '$PASSWORD', '$PREFIX', smbclient3
, smbcacls
, '-mNT1'])
390 plantestsuite("samba3.blackbox.acl_xattr.SMB3", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_acl_xattr.sh"), '$SERVER', '$USERNAME', '$PASSWORD', '$PREFIX', smbclient3
, smbcacls
, '-mSMB3'])
391 plantestsuite("samba3.blackbox.smb2.not_casesensitive", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smb2_not_casesensitive.sh"), '//$SERVER/tmp', '$SERVER_IP', '$USERNAME', '$PASSWORD', '$LOCAL_PATH', smbclient3
])
392 plantestsuite("samba3.blackbox.inherit_owner.default.NT1", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_inherit_owner.sh"), '$SERVER', '$USERNAME', '$PASSWORD', '$PREFIX', smbclient3
, smbcacls
, net
, 'tmp', '0', '0', '-m', 'NT1'])
393 plantestsuite("samba3.blackbox.inherit_owner.default.SMB3", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_inherit_owner.sh"), '$SERVER', '$USERNAME', '$PASSWORD', '$PREFIX', smbclient3
, smbcacls
, net
, 'tmp', '0', '0', '-m', 'SMB3'])
394 plantestsuite("samba3.blackbox.inherit_owner.full.NT1", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_inherit_owner.sh"), '$SERVER', '$USERNAME', '$PASSWORD', '$PREFIX', smbclient3
, smbcacls
, net
, 'inherit_owner', '1', '1', '-m', 'NT1'])
395 plantestsuite("samba3.blackbox.inherit_owner.full.SMB3", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_inherit_owner.sh"), '$SERVER', '$USERNAME', '$PASSWORD', '$PREFIX', smbclient3
, smbcacls
, net
, 'inherit_owner', '1', '1', '-m', 'SMB3'])
396 plantestsuite("samba3.blackbox.inherit_owner.unix.NT1", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_inherit_owner.sh"), '$SERVER', '$USERNAME', '$PASSWORD', '$PREFIX', smbclient3
, smbcacls
, net
, 'inherit_owner_u', '0', '1', '-m', 'NT1'])
397 plantestsuite("samba3.blackbox.inherit_owner.unix.SMB3", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_inherit_owner.sh"), '$SERVER', '$USERNAME', '$PASSWORD', '$PREFIX', smbclient3
, smbcacls
, net
, 'inherit_owner_u', '0', '1', '-m', 'SMB3'])
398 plantestsuite("samba3.blackbox.large_acl.NT1", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_large_acl.sh"), '$SERVER', '$USERNAME', '$PASSWORD', smbclient3
, smbcacls
, '-m', 'NT1'])
399 plantestsuite("samba3.blackbox.large_acl.SMB3", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_large_acl.sh"), '$SERVER', '$USERNAME', '$PASSWORD', smbclient3
, smbcacls
, '-m', 'SMB3'])
400 plantestsuite("samba3.blackbox.give_owner", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_give_owner.sh"), '$SERVER', '$SERVER_IP', '$USERNAME', '$PASSWORD', '$PREFIX', smbclient3
, smbcacls
, net
, 'tmp'])
401 plantestsuite("samba3.blackbox.homes", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_homes.sh"), '$SERVER', '$USERNAME', '$PASSWORD', '$LOCAL_PATH', '$PREFIX', smbclient3
, configuration
])
402 plantestsuite("samba3.blackbox.force_group_change", env
,
403 [os
.path
.join(samba3srcdir
, "script/tests/test_force_group_change.sh"),
404 '$SERVER', '$USERNAME', '$PASSWORD', '$LOCAL_PATH', smbclient3
, smbcontrol
])
405 plantestsuite("samba3.blackbox.zero-data", env
,
406 [os
.path
.join(samba3srcdir
, "script/tests/test_zero_data.sh"),
407 '$SERVER_IP', '$USERNAME', '$PASSWORD', '$LOCAL_PATH'])
408 plantestsuite("samba3.blackbox.timestamps", env
,
409 [os
.path
.join(samba3srcdir
, "script/tests/test_timestamps.sh"),
410 '$SERVER_IP', '$USERNAME', '$PASSWORD', '$LOCAL_PATH', smbclient3
])
416 # Test smbclient/tarmode
417 plantestsuite("samba3.blackbox.smbclient_tarmode.NT1", env
,
418 [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_tarmode.sh"),
419 '$SERVER', '$SERVER_IP', '$USERNAME', '$PASSWORD',
420 '$LOCAL_PATH/tarmode', '$PREFIX', smbclient3
, configuration
, "-mNT1"])
421 plantestsuite("samba3.blackbox.smbclient_tarmode.SMB3", env
,
422 [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_tarmode.sh"),
423 '$SERVER', '$SERVER_IP', '$USERNAME', '$PASSWORD',
424 '$LOCAL_PATH/tarmode', '$PREFIX', smbclient3
, configuration
, "-mSMB3"])
426 # Test suite for new smbclient/tar with libarchive (GSoC 13)
427 plantestsuite("samba3.blackbox.smbclient_tar.NT1", env
,
428 [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_tarmode.pl"),
429 '-n', '$SERVER', '-i', '$SERVER_IP', '-s', 'tmp',
430 '-u', '$USERNAME', '-p', '$PASSWORD', '-l', '$LOCAL_PATH/tarmode',
431 '-d', '$PREFIX', '-b', smbclient3
,
432 '--subunit', '--', configuration
, '-mNT1'])
433 plantestsuite("samba3.blackbox.smbclient_tar.SMB3", env
,
434 [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_tarmode.pl"),
435 '-n', '$SERVER', '-i', '$SERVER_IP', '-s', 'tmp',
436 '-u', '$USERNAME', '-p', '$PASSWORD', '-l', '$LOCAL_PATH/tarmode',
437 '-d', '$PREFIX', '-b', smbclient3
,
438 '--subunit', '--', configuration
, '-mSMB3'])
440 for env
in ["fileserver:local"]:
441 plantestsuite("samba3.blackbox.net_usershare", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_net_usershare.sh"), '$SERVER', '$SERVER_IP', '$USERNAME', '$PASSWORD', smbclient3
])
443 plantestsuite("samba3.blackbox.smbstatus", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_smbstatus.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$USERNAME', '$PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient3
, smbstatus
, configuration
, "SMB3"])
444 plantestsuite("samba3.blackbox.net_registry_import", env
, [os
.path
.join(samba3srcdir
, "script/tests/test_net_registry_import.sh"), '$SERVER', '$LOCAL_PATH', '$USERNAME', '$PASSWORD'])
446 # TODO encrypted against member, with member creds, and with DC creds
447 plantestsuite("samba3.blackbox.net.misc", "nt4_dc:local",
448 [os
.path
.join(samba3srcdir
, "script/tests/test_net_misc.sh"),
449 scriptdir
, "$SMB_CONF_PATH", net
, configuration
, "NT1"])
450 plantestsuite("samba3.blackbox.net.misc", "nt4_dc:local",
451 [os
.path
.join(samba3srcdir
, "script/tests/test_net_misc.sh"),
452 scriptdir
, "$SMB_CONF_PATH", net
, configuration
, "SMB3"])
453 plantestsuite("samba3.blackbox.net.local.registry", "nt4_dc:local",
454 [os
.path
.join(samba3srcdir
, "script/tests/test_net_registry.sh"),
455 scriptdir
, "$SMB_CONF_PATH", net
, configuration
])
456 plantestsuite("samba3.blackbox.net.registry.check", "nt4_dc:local",
457 [os
.path
.join(samba3srcdir
, "script/tests/test_net_registry_check.sh"),
458 scriptdir
, "$SMB_CONF_PATH", net
, configuration
, dbwrap_tool
])
459 plantestsuite("samba3.blackbox.net.rpc.registry", "nt4_dc",
460 [os
.path
.join(samba3srcdir
, "script/tests/test_net_registry.sh"),
461 scriptdir
, "$SMB_CONF_PATH", net
, configuration
, 'rpc'])
463 plantestsuite("samba3.blackbox.net.local.registry.roundtrip", "nt4_dc:local",
464 [os
.path
.join(samba3srcdir
, "script/tests/test_net_registry_roundtrip.sh"),
465 scriptdir
, "$SMB_CONF_PATH", net
, configuration
])
466 plantestsuite("samba3.blackbox.net.rpc.registry.roundtrip", "nt4_dc",
467 [os
.path
.join(samba3srcdir
, "script/tests/test_net_registry_roundtrip.sh"),
468 scriptdir
, "$SMB_CONF_PATH", net
, configuration
, 'rpc'])
470 plantestsuite("samba3.blackbox.net.local.conf", "nt4_dc:local",
471 [os
.path
.join(samba3srcdir
, "script/tests/test_net_conf.sh"),
472 scriptdir
, "$SMB_CONF_PATH", net
, configuration
])
473 plantestsuite("samba3.blackbox.net.rpc.conf", "nt4_dc",
474 [os
.path
.join(samba3srcdir
, "script/tests/test_net_conf.sh"),
475 scriptdir
, "$SMB_CONF_PATH", net
, configuration
, 'rpc'])
478 plantestsuite("samba3.blackbox.testparm", "nt4_dc:local",
479 [os
.path
.join(samba3srcdir
, "script/tests/test_testparm_s3.sh"),
483 "samba3.pthreadpool", "none",
484 [os
.path
.join(samba3srcdir
, "script/tests/test_pthreadpool.sh")])
486 if with_pthreadpool
and have_ldwrap
:
487 plantestsuite("samba3.pthreadpool_cmocka", "none",
488 [os
.path
.join(bindir(), "pthreadpooltest_cmocka")])
491 plantestsuite("samba3.libwbclient_threads",
493 [os
.path
.join(samba3srcdir
,
494 "script/tests/test_libwbclient_threads.sh"),
495 "$DOMAIN", "$DC_USERNAME"])
497 plantestsuite("samba3.test_nfs4_acl", "none",
498 [os
.path
.join(bindir(), "test_nfs4_acls"),
502 "samba3.resolvconf", "none",
503 [os
.path
.join(samba3srcdir
, "script/tests/test_resolvconf.sh")])
505 plantestsuite("samba3.tevent_glib_glue", "none",
506 [os
.path
.join(samba3srcdir
, "script/tests/test_tevent_glib_glue.sh")])
508 plantestsuite("samba3.async_req", "nt4_dc",
509 [os
.path
.join(samba3srcdir
, "script/tests/test_async_req.sh")])
513 base
= ["base.attr", "base.charset", "base.chkpath", "base.createx_access", "base.defer_open", "base.delaywrite", "base.delete",
514 "base.deny1", "base.deny2", "base.deny3", "base.denydos", "base.dir1", "base.dir2",
515 "base.disconnect", "base.fdpass", "base.lock",
516 "base.mangle", "base.negnowait", "base.ntdeny1",
517 "base.ntdeny2", "base.open", "base.openattr", "base.properties", "base.rename", "base.rw1",
518 "base.secleak", "base.tcon", "base.tcondev", "base.trans2", "base.unlink", "base.vuid",
519 "base.xcopy", "base.samba3error"]
521 raw
= ["raw.acls", "raw.chkpath", "raw.close", "raw.composite", "raw.context", "raw.eas",
522 "raw.ioctl", "raw.lock", "raw.mkdir", "raw.mux", "raw.notify", "raw.open", "raw.oplock",
523 "raw.qfileinfo", "raw.qfsinfo", "raw.read", "raw.rename", "raw.search", "raw.seek",
524 "raw.sfileinfo.base", "raw.sfileinfo.bug", "raw.streams", "raw.unlink", "raw.write",
525 "raw.samba3hide", "raw.samba3badpath", "raw.sfileinfo.rename", "raw.session",
526 "raw.samba3caseinsensitive", "raw.samba3posixtimedlock",
527 "raw.samba3rootdirfid", "raw.sfileinfo.end-of-file",
528 "raw.bench-oplock", "raw.bench-lock", "raw.bench-open", "raw.bench-tcon",
529 "raw.samba3checkfsp", "raw.samba3closeerr", "raw.samba3oplocklogoff", "raw.samba3badnameblob"]
531 smb2
= smbtorture4_testsuites("smb2.")
533 rpc
= ["rpc.authcontext", "rpc.samba3.bind", "rpc.samba3.srvsvc", "rpc.samba3.sharesec",
534 "rpc.samba3.spoolss", "rpc.samba3.wkssvc", "rpc.samba3.winreg",
535 "rpc.samba3.getaliasmembership-0",
536 "rpc.samba3.netlogon", "rpc.samba3.sessionkey", "rpc.samba3.getusername",
537 "rpc.samba3.smb1-pipe-name", "rpc.samba3.smb2-pipe-name",
538 "rpc.samba3.smb-reauth1", "rpc.samba3.smb-reauth2",
539 "rpc.svcctl", "rpc.ntsvcs", "rpc.winreg", "rpc.eventlog",
540 "rpc.spoolss.printserver", "rpc.spoolss.win", "rpc.spoolss.notify", "rpc.spoolss.printer",
541 "rpc.spoolss.driver",
542 "rpc.lsa", "rpc.lsa-getuser", "rpc.lsa.lookupsids", "rpc.lsa.lookupnames",
543 "rpc.lsa.privileges", "rpc.lsa.secrets",
545 "rpc.samr", "rpc.samr.users", "rpc.samr.users.privileges", "rpc.samr.passwords",
546 "rpc.samr.passwords.pwdlastset", "rpc.samr.passwords.lockout", "rpc.samr.passwords.badpwdcount", "rpc.samr.large-dc", "rpc.samr.machine.auth",
547 "rpc.samr.priv", "rpc.samr.passwords.validate",
548 "rpc.netlogon.admin",
549 "rpc.schannel", "rpc.schannel2", "rpc.bench-schannel1", "rpc.schannel_anon_setpw", "rpc.join", "rpc.bind",
550 "rpc.initshutdown", "rpc.wkssvc", "rpc.srvsvc"]
552 local
= ["local.nss"]
554 idmap
= ["idmap.rfc2307", "idmap.alloc", "idmap.rid", "idmap.ad"]
556 rap
= ["rap.basic", "rap.rpc", "rap.printing", "rap.sam"]
558 unix
= ["unix.info2", "unix.whoami"]
565 "vfs.fruit_netatalk",
567 "vfs.fruit_timemachine",
568 "vfs.fruit_conversion",
572 tests
= base
+ raw
+ smb2
+ rpc
+ unix
+ local
+ rap
+ nbt
+ idmap
+ vfs
575 if t
== "base.delaywrite" or t
== "base.deny1" or t
== "base.deny2":
576 plansmbtorture4testsuite(t
, "fileserver", '//$SERVER/tmp -U$USERNAME%$PASSWORD --maximum-runtime=900')
577 elif t
== "base.createx_access":
578 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD -k yes --maximum-runtime=900')
580 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=doscharset=ISO-8859-1')
581 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=doscharset=ISO-8859-1')
582 elif t
== "winbind.pac":
583 plansmbtorture4testsuite(t
, "ad_member:local", '//$SERVER/tmp --realm=$REALM --machine-pass --option=torture:addc=$DC_SERVER', description
="machine account")
584 elif t
== "unix.whoami":
585 plansmbtorture4testsuite(t
, "nt4_member:local", '//$SERVER/tmp --machine-pass', description
="machine account")
586 plansmbtorture4testsuite(t
, "ad_member:local", '//$SERVER/tmp --machine-pass --option=torture:addc=$DC_SERVER', description
="machine account")
587 for env
in ["nt4_dc", "nt4_member"]:
588 plansmbtorture4testsuite(t
, env
, '//$SERVER/tmp -U$DC_USERNAME%$DC_PASSWORD')
589 plansmbtorture4testsuite(t
, env
, '//$SERVER/tmpguest -U%', description
='anonymous connection')
590 for env
in ["ad_dc", "ad_member"]:
591 plansmbtorture4testsuite(t
, env
, '//$SERVER/tmp -U$DC_USERNAME@$REALM%$DC_PASSWORD --option=torture:addc=$DC_SERVER')
592 plansmbtorture4testsuite(t
, env
, '//$SERVER/tmp -k yes -U$DC_USERNAME@$REALM%$DC_PASSWORD --option=torture:addc=$DC_SERVER', description
='kerberos connection')
593 plansmbtorture4testsuite(t
, env
, '//$SERVER/tmpguest -U% --option=torture:addc=$DC_SERVER', description
='anonymous connection')
594 plansmbtorture4testsuite(t
, env
, '//$SERVER/tmp -k no -U$DC_USERNAME@$REALM%$DC_PASSWORD', description
='ntlm user@realm')
595 elif t
== "raw.samba3posixtimedlock" or t
== "smb2.samba3misc":
596 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmpguest -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/nt4_dc/share')
597 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/brl_delay_inject1 -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/nt4_dc/share',
598 description
="brl_delay_inject1")
599 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/brl_delay_inject2 -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/nt4_dc/share',
600 description
="brl_delay_inject2")
601 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER_IP/tmpguest -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/ad_dc/share')
602 elif t
== "raw.chkpath":
603 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmpcase -U$USERNAME%$PASSWORD')
604 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER_IP/tmpcase -U$USERNAME%$PASSWORD')
605 elif t
== "raw.samba3hide" or t
== "raw.samba3checkfsp" or t
== "raw.samba3closeerr":
606 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
607 plansmbtorture4testsuite(t
, "simpleserver", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
608 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
609 elif t
== "raw.session":
610 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'plain')
611 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmpenc -U$USERNAME%$PASSWORD', 'enc')
612 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -k no -U$USERNAME%$PASSWORD', 'ntlm')
613 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -k yes -U$USERNAME%$PASSWORD', 'krb5')
614 elif t
== "smb2.session":
615 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'plain')
616 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmpenc -U$USERNAME%$PASSWORD', 'enc')
617 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -k no -U$USERNAME%$PASSWORD', 'ntlm')
618 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -k yes -U$USERNAME%$PASSWORD', 'krb5')
619 # Certain tests fail when run against ad_member with MIT kerberos because the private krb5.conf overrides the provisioned lib/krb5.conf,
620 # ad_member_idmap_rid sets "create krb5.conf = no"
621 plansmbtorture4testsuite(t
, "ad_member_idmap_rid", '//$SERVER/tmp -k yes -U$DC_USERNAME@$REALM%$DC_PASSWORD', 'krb5')
623 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'over ncacn_np ')
624 plansmbtorture4testsuite(t
, "nt4_dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ')
625 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'over ncacn_np ')
626 plansmbtorture4testsuite(t
, "ad_dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ')
627 elif t
== "rpc.mdssvc":
628 plansmbtorture4testsuite(t
, "fileserver", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=torture:no_spotlight_localdir=$SELFTEST_PREFIX/fileserver/share')
629 elif t
== "rpc.samr.passwords.validate":
630 plansmbtorture4testsuite(t
, "nt4_dc", 'ncacn_ip_tcp:$SERVER_IP[seal] -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ')
631 plansmbtorture4testsuite(t
, "ad_dc", 'ncacn_ip_tcp:$SERVER_IP[seal] -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ')
632 elif t
== "smb2.durable-open" or t
== "smb2.durable-v2-open" or t
== "smb2.replay" or t
== "smb2.durable-v2-delay":
633 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/durable -U$USERNAME%$PASSWORD')
634 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER_IP/durable -U$USERNAME%$PASSWORD')
635 elif t
== "base.rw1":
636 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
637 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/valid-users-tmp -U$USERNAME%$PASSWORD')
638 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/write-list-tmp -U$USERNAME%$PASSWORD')
639 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
640 elif t
== "idmap.rfc2307":
641 plantestsuite(t
, "ad_member_rfc2307",
642 [os
.path
.join(samba3srcdir
,
643 "../nsswitch/tests/test_idmap_rfc2307.sh"),
645 'Administrator', '2000000',
647 '"Domain Users"', '2000002',
648 'DnsAdmins', '2000003',
650 'ou=idmap,dc=samba,dc=example,dc=com',
651 '$DC_SERVER', '$DC_USERNAME', '$DC_PASSWORD'])
652 elif t
== "idmap.alloc":
653 plantestsuite(t
, "ad_member_rfc2307", [os
.path
.join(samba3srcdir
, "../nsswitch/tests/test_idmap_nss.sh"), '$DOMAIN'])
654 elif t
== "idmap.rid":
655 plantestsuite(t
, "ad_member_idmap_rid", [os
.path
.join(samba3srcdir
, "../nsswitch/tests/test_idmap_rid.sh"), '$DOMAIN', '2000000'])
656 elif t
== "idmap.ad":
657 plantestsuite(t
, "ad_member_idmap_ad", [os
.path
.join(samba3srcdir
, "../nsswitch/tests/test_idmap_ad.sh"), '$DOMAIN', '$DC_SERVER', '$DC_PASSWORD', '$TRUST_DOMAIN', '$TRUST_SERVER', '$TRUST_PASSWORD'])
658 elif t
== "raw.acls":
659 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
660 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/nfs4acl_simple_40 -U$USERNAME%$PASSWORD', description
='nfs4acl_xattr-simple-40')
661 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/nfs4acl_special_40 -U$USERNAME%$PASSWORD', description
='nfs4acl_xattr-special-40')
662 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/nfs4acl_simple_41 -U$USERNAME%$PASSWORD', description
='nfs4acl_xattr-simple-41')
663 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/nfs4acl_xdr_40 -U$USERNAME%$PASSWORD', description
='nfs4acl_xattr-xdr-40')
664 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/nfs4acl_xdr_41 -U$USERNAME%$PASSWORD', description
='nfs4acl_xattr-xdr-41')
665 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/nfs4acl_nfs_40 -U$USERNAME%$PASSWORD', description
='nfs4acl_xattr-nfs-40')
666 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/nfs4acl_nfs_41 -U$USERNAME%$PASSWORD', description
='nfs4acl_xattr-nfs-41')
667 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER_IP/tmpcase -U$USERNAME%$PASSWORD')
668 elif t
== "smb2.ioctl":
669 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/fs_specific -U$USERNAME%$PASSWORD', 'fs_specific')
670 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
671 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
672 elif t
== "smb2.lock":
673 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/aio -U$USERNAME%$PASSWORD', 'aio')
674 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
675 elif t
== "raw.lock" or t
== "base.lock":
676 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
677 elif t
== "raw.read":
678 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
679 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/aio -U$USERNAME%$PASSWORD', 'aio')
680 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
681 elif t
== "raw.search":
682 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
683 # test the dirsort module.
684 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmpsort -U$USERNAME%$PASSWORD')
685 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
686 elif t
== "vfs.fruit":
687 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/vfs_fruit -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/nt4_dc/share --option=torture:share2=vfs_wo_fruit', 'metadata_netatalk')
688 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/vfs_fruit_metadata_stream -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/nt4_dc/share --option=torture:share2=vfs_wo_fruit', 'metadata_stream')
689 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/vfs_fruit_stream_depot -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/nt4_dc/share --option=torture:share2=vfs_wo_fruit_stream_depot', 'streams_depot')
690 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/vfs_fruit_delete_empty_adfiles -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/nt4_dc/share --option=torture:share2=vfs_wo_fruit', 'fruit_delete_empty_adfiles')
691 elif t
== "vfs.fruit_netatalk":
692 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/vfs_fruit_xattr -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/nt4_dc/share')
693 elif t
== "vfs.fruit_timemachine":
694 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/vfs_fruit_timemachine -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/nt4_dc/share')
695 elif t
== "vfs.fruit_file_id":
696 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/vfs_fruit_zero_fileid -U$USERNAME%$PASSWORD')
697 elif t
== "vfs.fruit_conversion":
698 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=torture:share2=vfs_fruit_wipe_intentionally_left_blank_rfork --option=torture:delete_empty_adfiles=false', 'wipe_intentionally_left_blank_rfork')
699 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=torture:share2=vfs_fruit_delete_empty_adfiles --option=torture:delete_empty_adfiles=true', 'delete_empty_adfiles')
700 elif t
== "vfs.unfruit":
701 creds
= '-U$USERNAME%$PASSWORD'
702 share2
= '--option=torture:share2=tmp'
703 netopt
= '--option=torture:net=%s' % net
704 shareopt
= '--option=torture:sharename'
706 plansmbtorture4testsuite(t
, "nt4_dc:local", '//$SERVER_IP/vfs_fruit %s %s %s %s=%s' % (creds
, share2
, netopt
, shareopt
, 'vfs_fruit'), 'metadata_netatalk')
707 plansmbtorture4testsuite(t
, "nt4_dc:local", '//$SERVER_IP/vfs_fruit_metadata_stream %s %s %s %s=%s' % (creds
, share2
, netopt
, shareopt
, 'vfs_fruit_metadata_stream'), 'metadata_stream')
708 plansmbtorture4testsuite(t
, "nt4_dc:local", '//$SERVER_IP/vfs_fruit_stream_depot %s %s %s %s=%s' % (creds
, share2
, netopt
, shareopt
, 'vfs_fruit_stream_depot'), 'streams_depot')
709 elif t
== "rpc.schannel_anon_setpw":
710 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$%', description
="anonymous password set")
711 plansmbtorture4testsuite(t
, "nt4_dc_schannel", '//$SERVER_IP/tmp -U$%', description
="anonymous password set (schannel enforced server-side)")
712 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -U$%', description
="anonymous password set")
713 elif t
== "local.nss":
714 for env
in ["nt4_dc:local", "ad_member:local", "nt4_member:local", "ad_dc:local"]:
715 plansmbtorture4testsuite(t
, env
, '//$SERVER/tmp -U$USERNAME%$PASSWORD')
716 elif t
== "smb2.change_notify_disabled":
717 plansmbtorture4testsuite(t
, "simpleserver", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
718 elif t
== "smb2.notify" or t
== "raw.notify" or t
== "smb2.oplock" or t
== "raw.oplock":
719 # These tests are a little slower so don't duplicate them with ad_dc
720 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --signing=required')
721 elif t
== "smb2.dosmode":
722 plansmbtorture4testsuite(t
, "simpleserver", '//$SERVER/dosmode -U$USERNAME%$PASSWORD')
723 elif t
== "smb2.kernel-oplocks":
724 if have_linux_kernel_oplocks
:
725 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER/kernel_oplocks -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/nt4_dc/share')
726 elif t
== "smb2.notify-inotify":
728 plansmbtorture4testsuite(t
, "fileserver", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
729 elif t
== "vfs.acl_xattr":
730 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
731 elif t
== "smb2.compound_find":
732 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER/compound_find -U$USERNAME%$PASSWORD')
733 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
734 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
735 elif t
== "rpc.samr.users.privileges":
736 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=torture:nt4_dc=true')
737 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
738 elif t
== "smb2.compound":
739 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
740 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/aio -U$USERNAME%$PASSWORD', 'aio')
741 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
742 elif t
== "rpc.samba3.netlogon" or t
== "rpc.samba3.sessionkey":
743 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=torture:wksname=samba3rpctest')
744 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD --option=torture:wksname=samba3rpctest')
745 elif t
== "smb2.streams":
746 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
747 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
748 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/streams_xattr -U$USERNAME%$PASSWORD', 'streams_xattr')
749 elif t
== "smb2.aio_delay":
750 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/aio_delay_inject -U$USERNAME%$PASSWORD')
751 elif t
== "smb2.delete-on-close-perms":
752 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
753 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/delete_readonly -U$USERNAME%$PASSWORD --option=torture:delete_readonly=true')
754 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
755 elif t
== "smb2.fileid":
756 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/vfs_fruit_xattr -U$USERNAME%$PASSWORD')
757 elif t
== "rpc.wkssvc":
758 plansmbtorture4testsuite(t
, "ad_member", '//$SERVER/tmp -U$DC_USERNAME%$DC_PASSWORD')
759 elif t
== "rpc.srvsvc":
760 plansmbtorture4testsuite(t
, "ad_member", '//$SERVER/tmp -U$DC_USERNAME%$DC_PASSWORD')
761 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -U$DC_USERNAME%$DC_PASSWORD')
763 plansmbtorture4testsuite(t
, "nt4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
764 plansmbtorture4testsuite(t
, "ad_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
767 test
= 'rpc.lsa.lookupsids'
768 auth_options
= ["", "ntlm", "spnego", "spnego,ntlm", "spnego,smb1", "spnego,smb2"]
769 signseal_options
= ["", ",connect", ",packet", ",sign", ",seal"]
770 endianness_options
= ["", ",bigendian"]
771 for s
in signseal_options
:
772 for e
in endianness_options
:
773 for a
in auth_options
:
774 binding_string
= "ncacn_np:$SERVER[%s%s%s]" % (a
, s
, e
)
775 options
= binding_string
+ " -U$USERNAME%$PASSWORD"
776 plansmbtorture4testsuite(test
, "nt4_dc", options
, 'over ncacn_np with [%s%s%s] ' % (a
, s
, e
))
777 plantestsuite("samba3.blackbox.rpcclient over ncacn_np with [%s%s%s] " % (a
, s
, e
), "nt4_dc:local", [os
.path
.join(samba3srcdir
, "script/tests/test_rpcclient.sh"),
778 "none", options
, configuration
])
780 # We should try more combinations in future, but this is all
781 # the pre-calculated credentials cache supports at the moment
783 # As the ktest env requires SMB3_00 we need to use "smb2" until
784 # dcerpc client code in smbtorture support autonegotiation
785 # of any smb dialect.
788 binding_string
= "ncacn_np:$SERVER[%s%s%s]" % (a
, s
, e
)
789 options
= binding_string
+ " -k yes --krb5-ccache=$PREFIX/ktest/krb5_ccache-2"
790 plansmbtorture4testsuite(test
, "ktest", options
, 'krb5 with old ccache ncacn_np with [%s%s%s] ' % (a
, s
, e
))
792 options
= binding_string
+ " -k yes --krb5-ccache=$PREFIX/ktest/krb5_ccache-3"
793 plansmbtorture4testsuite(test
, "ktest", options
, 'krb5 ncacn_np with [%s%s%s] ' % (a
, s
, e
))
795 auth_options2
= ["krb5", "spnego,krb5"]
796 for a
in auth_options2
:
797 binding_string
= "ncacn_np:$SERVER[%s%s%s]" % (a
, s
, e
)
799 plantestsuite("samba3.blackbox.rpcclient krb5 ncacn_np with [%s%s%s] " % (a
, s
, e
), "ktest:local", [os
.path
.join(samba3srcdir
, "script/tests/test_rpcclient.sh"),
800 "$PREFIX/ktest/krb5_ccache-3", binding_string
, "-k", configuration
])
802 plantestsuite("samba3.blackbox.rpcclient_samlogon", "ad_member:local", [os
.path
.join(samba3srcdir
, "script/tests/test_rpcclient_samlogon.sh"),
803 "$DC_USERNAME", "$DC_PASSWORD", "ncacn_np:$DC_SERVER", configuration
])
804 plantestsuite("samba3.blackbox.sharesec", "simpleserver:local",
805 [os
.path
.join(samba3srcdir
, "script/tests/test_sharesec.sh"),
806 configuration
, os
.path
.join(bindir(), "sharesec"),
807 os
.path
.join(bindir(), "net"), "tmp"])
809 plantestsuite("samba3.blackbox.close-denied-share", "simpleserver:local",
810 [os
.path
.join(samba3srcdir
,
811 "script/tests/test_close_denied_share.sh"),
813 os
.path
.join(bindir(), "sharesec"),
814 os
.path
.join(bindir(), "smbclient"),
815 os
.path
.join(bindir(), "smbcontrol"),
819 plantestsuite("samba3.blackbox.force-close-share", "simpleserver:local",
820 [os
.path
.join(samba3srcdir
,
821 "script/tests/test_force_close_share.sh"),
823 os
.path
.join(bindir(), "smbclient"),
824 os
.path
.join(bindir(), "smbcontrol"),
828 plantestsuite("samba3.blackbox.open-eintr", "simpleserver:local",
829 [os
.path
.join(samba3srcdir
,
830 "script/tests/test_open_eintr.sh"),
832 os
.path
.join(bindir(), "smbclient"),
833 os
.path
.join(bindir(), "smbcontrol"),
837 plantestsuite("samba3.blackbox.net_tdb", "simpleserver:local",
838 [os
.path
.join(samba3srcdir
, "script/tests/test_net_tdb.sh"),
839 smbclient3
, '$SERVER', 'tmp', '$USERNAME', '$PASSWORD',
840 configuration
, '$LOCAL_PATH', '$LOCK_DIR'])
842 plantestsuite("samba3.blackbox.smbd_error", "simpleserver:local",
843 [os
.path
.join(samba3srcdir
, "script/tests/test_smbd_error.sh")])
845 plantestsuite("samba3.blackbox.smbd_no_krb5", "ad_member:local",
846 [os
.path
.join(samba3srcdir
, "script/tests/test_smbd_no_krb5.sh"),
847 smbclient3
, '$SERVER', "$DC_USERNAME", "$DC_PASSWORD", "$PREFIX"])
849 plantestsuite("samba3.blackbox.durable_v2_delay", "simpleserver:local",
850 [os
.path
.join(samba3srcdir
, "script/tests/test_durable_handle_reconnect.sh")])
852 plantestsuite("samba3.blackbox.net_cache_samlogon", "ad_member:local",
853 [os
.path
.join(samba3srcdir
, "script/tests/test_net_cache_samlogon.sh"),
854 '$SERVER', 'tmp', '$DC_USERNAME', '$DC_PASSWORD'])
856 plantestsuite("samba3.blackbox.net_rpc_share_allowedusers", "nt4_dc",
857 [os
.path
.join(samba3srcdir
, "script/tests/test_net_rpc_share_allowedusers.sh"),
858 "$SERVER", "$USERNAME", "$PASSWORD", "$PREFIX/net_rpc_share_allowedusers",
861 plantestsuite("samba3.blackbox.net_dom_join_fail_dc", "nt4_dc",
862 [os
.path
.join(samba3srcdir
, "script/tests/test_net_dom_join_fail_dc.sh"),
863 "$USERNAME", "$PASSWORD", "$SERVER", "$PREFIX/net_dom_join_fail_dc",
865 plantestsuite("samba3.blackbox.net_rpc_join", "nt4_dc",
866 [os
.path
.join(samba3srcdir
, "script/tests/test_net_rpc_join.sh"),
867 "$USERNAME", "$PASSWORD", "$SERVER", "$PREFIX/net_rpc_join",
869 plantestsuite("samba3.blackbox.net_rpc_oldjoin", "nt4_dc:local",
870 [os
.path
.join(samba3srcdir
, "script/tests/test_net_rpc_oldjoin.sh"),
871 "$SERVER", "$PREFIX/net_rpc_oldjoin",
873 plantestsuite("samba3.blackbox.net_rpc_join_creds", "nt4_dc",
874 [os
.path
.join(samba3srcdir
, "script/tests/test_net_rpc_join_creds.sh"),
875 "$DOMAIN", "$USERNAME", "$PASSWORD", "$SERVER", "$PREFIX/net_rpc_join_creds",
878 plantestsuite("samba3.blackbox.rpcclient_srvsvc", "simpleserver",
879 [os
.path
.join(samba3srcdir
, "script/tests/test_rpcclientsrvsvc.sh"),
880 "$USERNAME", "$PASSWORD", "$SERVER",
881 os
.path
.join(bindir(), "rpcclient"), "tmp"])
883 plantestsuite("samba3.blackbox.rpcclient.pw-nt-hash", "simpleserver",
884 [os
.path
.join(samba3srcdir
, "script/tests/test_rpcclient_pw_nt_hash.sh"),
885 "$USERNAME", "$PASSWORD", "$SERVER",
886 os
.path
.join(bindir(), "rpcclient")])
888 plantestsuite("samba3.blackbox.smbclient.encryption_off", "simpleserver",
889 [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_encryption_off.sh"),
890 "$USERNAME", "$PASSWORD", "$SERVER",
893 plantestsuite("samba3.blackbox.rpcclient_netsessenum", "ad_member",
894 [os
.path
.join(samba3srcdir
,
895 "script/tests/test_rpcclient_netsessenum.sh"),
896 "$DOMAIN", "$DC_USERNAME", "$DC_PASSWORD", "$SERVER",
897 os
.path
.join(bindir(), "rpcclient"), smbtorture3
, "tmp"])
899 # The ktest environment uses:
900 # server min protocol = SMB3_00
901 # client max protocol = SMB3
902 options_list
= ["", "-e"]
903 for options
in options_list
:
904 plantestsuite("samba3.blackbox.smbclient_krb5 old ccache %s" % options
, "ktest:local",
905 [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_krb5.sh"),
906 "$PREFIX/ktest/krb5_ccache-2",
907 smbclient3
, "$SERVER", options
, configuration
])
909 plantestsuite("samba3.blackbox.smbclient_krb5 new ccache %s" % options
, "ktest:local",
910 [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_krb5.sh"),
911 "$PREFIX/ktest/krb5_ccache-3",
912 smbclient3
, "$SERVER", options
, configuration
])
914 plantestsuite("samba3.blackbox.smbclient_large_file %s krb5" % options
, "ktest:local",
915 [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_large_file.sh"),
916 "$PREFIX/ktest/krb5_ccache-3",
917 smbclient3
, "$SERVER", "$PREFIX", options
, "-k " + configuration
])
919 options_list
= ["-mNT1", "-mNT1 -e", "-mSMB3", "-mSMB3 -e"]
920 for options
in options_list
:
921 plantestsuite("samba3.blackbox.smbclient_large_file %s NTLM" % options
, "nt4_dc:local",
922 [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_large_file.sh"),
924 smbclient3
, "$SERVER", "$PREFIX", options
, "-U$USERNAME%$PASSWORD " + configuration
])
926 for alias
in ["foo", "bar"]:
927 plantestsuite("samba3.blackbox.smbclient_netbios_aliases [%s]" % alias
, "ad_member:local",
928 [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_netbios_aliases.sh"),
929 smbclient3
, alias
, "$DC_USERNAME", "$DC_PASSWORD", "$PREFIX", options
, configuration
])
931 for e
in endianness_options
:
932 for a
in auth_options
:
933 for s
in signseal_options
:
934 binding_string
= "ncacn_ip_tcp:$SERVER_IP[%s%s%s]" % (a
, s
, e
)
935 options
= binding_string
+ " -U$USERNAME%$PASSWORD"
936 plansmbtorture4testsuite(test
, "nt4_dc", options
, 'over ncacn_ip_tcp with [%s%s%s] ' % (a
, s
, e
))
938 plansmbtorture4testsuite('rpc.epmapper', 'nt4_dc:local', 'ncalrpc: -U$USERNAME%$PASSWORD', 'over ncalrpc')
939 plansmbtorture4testsuite('rpc.fsrvp', 'nt4_dc:local', 'ncacn_np:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_np')
941 for env
in ["ad_member_idmap_rid:local", "maptoguest:local"]:
942 plantestsuite("samba3.blackbox.guest", env
,
943 [os
.path
.join(samba3srcdir
, "script/tests/test_guest_auth.sh"),
944 '$SERVER', smbclient3
, smbcontrol
, net
, configuration
])
946 plantestsuite("samba3.blackbox.itime", "ad_dc", [os
.path
.join(samba3srcdir
, "script/tests/test_itime.sh"), '$SERVER', '$USERNAME', '$PASSWORD', '$LOCAL_PATH', smbclient3
, 'xattr'])
949 def planclusteredmembertestsuite(tname
, prefix
):
950 '''Define a clustered test for the clusteredmember environment'''
954 autharg
= '-U${DOMAIN}/${DC_USERNAME}%${DC_PASSWORD}'
955 namearg
= 'clustered.%s' % tname
956 modnamearg
= 'samba3.%s' % namearg
959 prefix
= os
.path
.join(prefix
, 'clusteredmember')
960 unclist
= os
.path
.join(prefix
, 'unclists/%s.txt' % tshare
)
962 unclistarg
= '--unclist=%s' % unclist
963 sharearg
= '//$SERVER_IP/%s' % tshare
965 return selftesthelpers
.plansmbtorture4testsuite(
968 [extraargs
, unclistarg
, sharearg
, autharg
, tname
],
973 CLUSTERED_TESTS
= [ 'base.ntdeny2' ]
975 for test
in CLUSTERED_TESTS
:
976 planclusteredmembertestsuite(test
, "$PREFIX")