selftest: Run smb2.lock tests also against AIO share
[Samba.git] / source3 / selftest / tests.py
blobb6425859af77c51dfcfe5a0d73ad4cec86fdf403
1 #!/usr/bin/python
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
19 # comments.
21 import os, sys
22 sys.path.insert(0, os.path.normpath(os.path.join(os.path.dirname(__file__), "../../selftest")))
23 import selftesthelpers
24 from selftesthelpers import *
25 smbtorture4_options.extend([
26 '--option="torture:winbindd_netbios_name=$SERVER"',
27 '--option="torture:winbindd_netbios_domain=$DOMAIN"',
28 '--option=torture:sharedelay=100000',
29 '--option=torture:writetimeupdatedelay=500000',
32 smbtorture4_possible = print_smbtorture4_version()
34 def plansmbtorture4testsuite(name, env, options, description=''):
35 if description == '':
36 modname = "samba3.%s" % (name, )
37 else:
38 modname = "samba3.%s %s" % (name, description)
40 if smbtorture4_possible:
41 selftesthelpers.plansmbtorture4testsuite(
42 name, env, options, target='samba3', modname=modname)
43 else:
44 skiptestsuite(name, "smbtorture4 is not available")
47 plantestsuite("samba3.blackbox.success", "s3dc:local", [os.path.join(samba3srcdir, "script/tests/test_success.sh")])
48 plantestsuite("samba3.blackbox.failure", "s3dc:local", [os.path.join(samba3srcdir, "script/tests/test_failure.sh")])
50 plantestsuite("samba3.local_s3", "s3dc:local", [os.path.join(samba3srcdir, "script/tests/test_local_s3.sh")])
52 plantestsuite("samba3.blackbox.registry.upgrade", "s3dc:local", [os.path.join(samba3srcdir, "script/tests/test_registry_upgrade.sh"), net, dbwrap_tool])
54 tests = ["FDPASS", "LOCK1", "LOCK2", "LOCK3", "LOCK4", "LOCK5", "LOCK6", "LOCK7", "LOCK9",
55 "UNLINK", "BROWSE", "ATTR", "TRANS2", "TORTURE",
56 "OPLOCK1", "OPLOCK2", "OPLOCK4", "STREAMERROR",
57 "DIR", "DIR1", "DIR-CREATETIME", "TCON", "TCONDEV", "RW1", "RW2", "RW3", "LARGE_READX", "RW-SIGNING",
58 "OPEN", "XCOPY", "RENAME", "DELETE", "DELETE-LN", "PROPERTIES", "W2K",
59 "TCON2", "IOCTL", "CHKPATH", "FDSESS", "CHAIN1", "CHAIN2",
60 "CHAIN3",
61 "GETADDRINFO", "UID-REGRESSION-TEST", "SHORTNAME-TEST",
62 "CASE-INSENSITIVE-CREATE", "SMB2-BASIC", "NTTRANS-FSCTL", "SMB2-NEGPROT",
63 "SMB2-SESSION-REAUTH", "SMB2-SESSION-RECONNECT",
64 "CLEANUP1",
65 "CLEANUP2",
66 "CLEANUP4",
67 "LOCAL-MSG2",
68 "BAD-NBT-SESSION"]
70 for t in tests:
71 plantestsuite("samba3.smbtorture_s3.plain(s3dc).%s" % t, "s3dc", [os.path.join(samba3srcdir, "script/tests/test_smbtorture_s3.sh"), t, '//$SERVER_IP/tmp', '$USERNAME', '$PASSWORD', smbtorture3, "", "-l $LOCAL_PATH"])
72 plantestsuite("samba3.smbtorture_s3.crypt_client(s3dc).%s" % t, "s3dc", [os.path.join(samba3srcdir, "script/tests/test_smbtorture_s3.sh"), t, '//$SERVER_IP/tmp', '$USERNAME', '$PASSWORD', smbtorture3, "-e", "-l $LOCAL_PATH"])
73 if t == "TORTURE":
74 # this is a negative test to verify that the server rejects
75 # access without encryption
76 plantestsuite("samba3.smbtorture_s3.crypt_server(s3dc).%s" % t, "s3dc", [os.path.join(samba3srcdir, "script/tests/test_smbtorture_s3.sh"), t, '//$SERVER_IP/tmpenc', '$USERNAME', '$PASSWORD', smbtorture3, "", "-l $LOCAL_PATH"])
77 plantestsuite("samba3.smbtorture_s3.plain(dc).%s" % t, "dc", [os.path.join(samba3srcdir, "script/tests/test_smbtorture_s3.sh"), t, '//$SERVER_IP/tmp', '$USERNAME', '$PASSWORD', smbtorture3, "", "-l $LOCAL_PATH"])
79 tests = ["RW1", "RW2", "RW3"]
80 for t in tests:
81 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"])
83 posix_tests = ["POSIX", "POSIX-APPEND"]
85 for t in posix_tests:
86 plantestsuite("samba3.smbtorture_s3.plain(s3dc).%s" % t, "s3dc", [os.path.join(samba3srcdir, "script/tests/test_smbtorture_s3.sh"), t, '//$SERVER_IP/posix_share', '$USERNAME', '$PASSWORD', smbtorture3, "", "-l $LOCAL_PATH"])
87 plantestsuite("samba3.smbtorture_s3.crypt(s3dc).%s" % t, "s3dc", [os.path.join(samba3srcdir, "script/tests/test_smbtorture_s3.sh"), t, '//$SERVER_IP/posix_share', '$USERNAME', '$PASSWORD', smbtorture3, "-e", "-l $LOCAL_PATH"])
88 plantestsuite("samba3.smbtorture_s3.plain(dc).%s" % t, "dc", [os.path.join(samba3srcdir, "script/tests/test_smbtorture_s3.sh"), t, '//$SERVER_IP/posix_share', '$USERNAME', '$PASSWORD', smbtorture3, "", "-l $LOCAL_PATH"])
90 env = "s3dc:local"
91 t = "CLEANUP3"
92 plantestsuite("samba3.smbtorture_s3.plain(%s).%s" % (env, t), env, [os.path.join(samba3srcdir, "script/tests/test_smbtorture_s3.sh"), t, '//$SERVER_IP/tmp', '$USERNAME', '$PASSWORD', binpath('smbtorture3'), "", "-l $LOCAL_PATH"])
94 local_tests = [
95 "LOCAL-SUBSTITUTE",
96 "LOCAL-GENCACHE",
97 "LOCAL-TALLOC-DICT",
98 "LOCAL-BASE64",
99 "LOCAL-RBTREE",
100 "LOCAL-MEMCACHE",
101 "LOCAL-STREAM-NAME",
102 "LOCAL-WBCLIENT",
103 "LOCAL-string_to_sid",
104 "LOCAL-sid_to_string",
105 "LOCAL-binary_to_sid",
106 "LOCAL-DBTRANS",
107 "LOCAL-TEVENT-SELECT",
108 "LOCAL-CONVERT-STRING",
109 "LOCAL-CONV-AUTH-INFO",
110 "LOCAL-IDMAP-TDB-COMMON",
111 "LOCAL-hex_encode_buf",
112 "LOCAL-sprintf_append",
113 "LOCAL-remove_duplicate_addrs2"]
115 for t in local_tests:
116 plantestsuite("samba3.smbtorture_s3.%s" % t, "s3dc", [os.path.join(samba3srcdir, "script/tests/test_smbtorture_s3.sh"), t, '//$SERVER_IP/tmp', '$USERNAME', '$PASSWORD', smbtorture3, "-e"])
118 tests = ["--ping", "--separator",
119 "--own-domain",
120 "--all-domains",
121 "--trusted-domains",
122 "--domain-info=BUILTIN",
123 "--domain-info=$DOMAIN",
124 "--online-status",
125 "--online-status --domain=BUILTIN",
126 "--online-status --domain=$DOMAIN",
127 "--check-secret --domain=$DOMAIN",
128 "--change-secret --domain=$DOMAIN",
129 "--check-secret --domain=$DOMAIN",
130 "--online-status --domain=$DOMAIN",
131 #Didn't pass yet# "--domain-users",
132 "--domain-groups",
133 "--name-to-sid=$DC_USERNAME",
134 "--name-to-sid=$DOMAIN\\\\$DC_USERNAME",
135 #Didn't pass yet# "--user-info=$USERNAME",
136 "--user-groups=$DOMAIN\\\\$DC_USERNAME",
137 "--authenticate=$DOMAIN\\\\$DC_USERNAME%$DC_PASSWORD",
138 "--allocate-uid",
139 "--allocate-gid"]
141 plantestsuite("samba.vfstest.stream_depot", "s3dc:local", [os.path.join(samba3srcdir, "script/tests/stream-depot/run.sh"), binpath("vfstest"), "$PREFIX", configuration])
142 plantestsuite("samba.vfstest.xattr-tdb-1", "s3dc:local", [os.path.join(samba3srcdir, "script/tests/xattr-tdb-1/run.sh"), binpath("vfstest"), "$PREFIX", configuration])
143 plantestsuite("samba.vfstest.acl", "s3dc:local", [os.path.join(samba3srcdir, "script/tests/vfstest-acl/run.sh"), binpath("vfstest"), "$PREFIX", configuration])
144 plantestsuite("samba.vfstest.catia", "s3dc:local", [os.path.join(samba3srcdir, "script/tests/vfstest-catia/run.sh"), binpath("vfstest"), "$PREFIX", configuration])
146 for options in ["--option=clientusespnego=no", " --option=clientntlmv2auth=no --option=clientlanmanauth=yes --max-protocol=LANMAN2", ""]:
147 env = "s3dc"
148 plantestsuite("samba3.blackbox.smbclient_auth.plain (%s) %s" % (env, options), env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$DC_USERNAME', '$DC_PASSWORD', smbclient3, configuration, options])
150 for env in ["s3dc", "member", "s3member", "dc", "s4member"]:
151 plantestsuite("samba3.blackbox.smbclient_machine_auth.plain (%s:local)" % env, "%s:local" % env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_machine_auth.sh"), '$SERVER', smbclient3, configuration])
153 for env in ["s3dc", "member", "s3member"]:
154 plantestsuite("samba3.blackbox.smbclient_auth.plain (%s)" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$DC_USERNAME', '$DC_PASSWORD', smbclient3, configuration])
155 plantestsuite("samba3.blackbox.smbclient_auth.plain (%s) member creds" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$SERVER\\\\$USERNAME', '$PASSWORD', smbclient3, configuration])
157 for t in tests:
158 plantestsuite("samba3.wbinfo_s3.(%s:local).%s" % (env, t), "%s:local" % env, [os.path.join(samba3srcdir, "script/tests/test_wbinfo_s3.sh"), t])
160 plantestsuite(
161 "samba3.wbinfo_sids2xids.(%s:local)" % env, "%s:local" % env,
162 [os.path.join(samba3srcdir, "script/tests/test_wbinfo_sids2xids.sh")])
164 plantestsuite(
165 "samba3.ntlm_auth.diagnostics(%s:local)" % env, "%s:local" % env,
166 [os.path.join(samba3srcdir, "script/tests/test_ntlm_auth_diagnostics.sh"), ntlm_auth3, '$DOMAIN', '$DC_USERNAME', '$DC_PASSWORD', configuration])
168 plantestsuite("samba3.ntlm_auth.(%s:local)" % env, "%s:local" % env, [os.path.join(samba3srcdir, "script/tests/test_ntlm_auth_s3.sh"), valgrindify(python), samba3srcdir, ntlm_auth3, '$DOMAIN', '$DC_USERNAME', '$DC_PASSWORD', configuration])
170 env = "s3member"
171 t = "--krb5auth=$DOMAIN\\\\$DC_USERNAME%$DC_PASSWORD"
172 plantestsuite("samba3.wbinfo_s3.(%s:local).%s" % (env, t), "%s:local" % env, [os.path.join(samba3srcdir, "script/tests/test_wbinfo_s3.sh"), t])
174 plantestsuite("samba3.ntlm_auth.krb5(ktest:local) old ccache", "ktest:local", [os.path.join(samba3srcdir, "script/tests/test_ntlm_auth_krb5.sh"), valgrindify(python), samba3srcdir, ntlm_auth3, '$PREFIX/ktest/krb5_ccache-2', '$SERVER', configuration])
176 plantestsuite("samba3.ntlm_auth.krb5(ktest:local)", "ktest:local", [os.path.join(samba3srcdir, "script/tests/test_ntlm_auth_krb5.sh"), valgrindify(python), samba3srcdir, ntlm_auth3, '$PREFIX/ktest/krb5_ccache-3', '$SERVER', configuration])
179 for env in ["maptoguest", "simpleserver"]:
180 plantestsuite("samba3.blackbox.smbclient_auth.plain (%s) local creds" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$USERNAME', '$PASSWORD', smbclient3, configuration + " --option=clientntlmv2auth=no --option=clientlanmanauth=yes"])
182 env = "maptoguest"
183 plantestsuite("samba3.blackbox.smbclient_auth.plain (%s) bad username" % env, 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"])
185 # plain
186 for env in ["s3dc"]:
187 plantestsuite("samba3.blackbox.smbclient_s3.plain (%s)" % env, 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])
189 for env in ["member", "s3member"]:
190 plantestsuite("samba3.blackbox.smbclient_s3.plain (%s) member creds" % env, 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])
192 for env in ["s3dc"]:
193 plantestsuite("samba3.blackbox.smbclient_s3.sign (%s)" % env, 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, "--signing=required"])
195 for env in ["member", "s3member"]:
196 plantestsuite("samba3.blackbox.smbclient_s3.sign (%s) member creds" % env, 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, "--signing=required"])
198 for env in ["s3dc"]:
199 # encrypted
200 plantestsuite("samba3.blackbox.smbclient_s3.crypt (%s)" % env, 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, "-e"])
202 # Test smbclient/tarmode
203 plantestsuite("samba3.blackbox.smbclient_tarmode (%s)" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_tarmode.sh"), '$SERVER', '$SERVER_IP', '$USERNAME', '$PASSWORD', '$LOCAL_PATH', '$PREFIX', smbclient3, configuration])
205 #TODO encrypted against member, with member creds, and with DC creds
206 plantestsuite("samba3.blackbox.net.misc", "s3dc:local",
207 [os.path.join(samba3srcdir, "script/tests/test_net_misc.sh"),
208 scriptdir, "$SMB_CONF_PATH", net, configuration])
209 plantestsuite("samba3.blackbox.net.local.registry", "s3dc:local",
210 [os.path.join(samba3srcdir, "script/tests/test_net_registry.sh"),
211 scriptdir, "$SMB_CONF_PATH", net, configuration])
212 plantestsuite("samba3.blackbox.net.registry.check", "s3dc:local",
213 [os.path.join(samba3srcdir, "script/tests/test_net_registry_check.sh"),
214 scriptdir, "$SMB_CONF_PATH", net, configuration, dbwrap_tool])
215 plantestsuite("samba3.blackbox.net.rpc.registry", "s3dc",
216 [os.path.join(samba3srcdir, "script/tests/test_net_registry.sh"),
217 scriptdir, "$SMB_CONF_PATH", net, configuration, 'rpc'])
219 plantestsuite("samba3.blackbox.net.local.registry.roundtrip", "s3dc:local",
220 [os.path.join(samba3srcdir, "script/tests/test_net_registry_roundtrip.sh"),
221 scriptdir, "$SMB_CONF_PATH", net, configuration])
222 plantestsuite("samba3.blackbox.net.rpc.registry.roundtrip", "s3dc",
223 [os.path.join(samba3srcdir, "script/tests/test_net_registry_roundtrip.sh"),
224 scriptdir, "$SMB_CONF_PATH", net, configuration, 'rpc'])
226 plantestsuite("samba3.blackbox.net.local.conf", "s3dc:local",
227 [os.path.join(samba3srcdir, "script/tests/test_net_conf.sh"),
228 scriptdir, "$SMB_CONF_PATH", net, configuration])
229 plantestsuite("samba3.blackbox.net.rpc.conf", "s3dc",
230 [os.path.join(samba3srcdir, "script/tests/test_net_conf.sh"),
231 scriptdir, "$SMB_CONF_PATH", net, configuration, 'rpc'])
234 plantestsuite("samba3.blackbox.testparm", "s3dc:local",
235 [os.path.join(samba3srcdir, "script/tests/test_testparm_s3.sh"),
236 "$LOCAL_PATH"])
238 plantestsuite(
239 "samba3.pthreadpool", "s3dc",
240 [os.path.join(samba3srcdir, "script/tests/test_pthreadpool.sh")])
242 #smbtorture4 tests
244 base = ["base.attr", "base.charset", "base.chkpath", "base.defer_open", "base.delaywrite", "base.delete",
245 "base.deny1", "base.deny2", "base.deny3", "base.denydos", "base.dir1", "base.dir2",
246 "base.disconnect", "base.fdpass", "base.lock",
247 "base.mangle", "base.negnowait", "base.ntdeny1",
248 "base.ntdeny2", "base.open", "base.openattr", "base.properties", "base.rename", "base.rw1",
249 "base.secleak", "base.tcon", "base.tcondev", "base.trans2", "base.unlink", "base.vuid",
250 "base.xcopy", "base.samba3error"]
252 raw = ["raw.acls", "raw.chkpath", "raw.close", "raw.composite", "raw.context", "raw.eas",
253 "raw.ioctl", "raw.lock", "raw.mkdir", "raw.mux", "raw.notify", "raw.open", "raw.oplock",
254 "raw.qfileinfo", "raw.qfsinfo", "raw.read", "raw.rename", "raw.search", "raw.seek",
255 "raw.sfileinfo.base", "raw.sfileinfo.bug", "raw.streams", "raw.unlink", "raw.write",
256 "raw.samba3hide", "raw.samba3badpath", "raw.sfileinfo.rename", "raw.session",
257 "raw.samba3caseinsensitive", "raw.samba3posixtimedlock",
258 "raw.samba3rootdirfid", "raw.sfileinfo.end-of-file",
259 "raw.bench-oplock", "raw.bench-lock", "raw.bench-open", "raw.bench-tcon",
260 "raw.samba3checkfsp", "raw.samba3closeerr", "raw.samba3oplocklogoff", "raw.samba3badnameblob"]
262 smb2 = smbtorture4_testsuites("smb2.")
264 rpc = ["rpc.authcontext", "rpc.samba3.bind", "rpc.samba3.srvsvc", "rpc.samba3.sharesec",
265 "rpc.samba3.spoolss", "rpc.samba3.wkssvc", "rpc.samba3.winreg",
266 "rpc.samba3.getaliasmembership-0",
267 "rpc.samba3.netlogon", "rpc.samba3.sessionkey", "rpc.samba3.getusername",
268 "rpc.samba3.smb1-pipe-name", "rpc.samba3.smb2-pipe-name",
269 "rpc.samba3.smb-reauth1", "rpc.samba3.smb-reauth2",
270 "rpc.svcctl", "rpc.ntsvcs", "rpc.winreg", "rpc.eventlog",
271 "rpc.spoolss.printserver", "rpc.spoolss.win", "rpc.spoolss.notify", "rpc.spoolss.printer",
272 "rpc.spoolss.driver",
273 "rpc.lsa", "rpc.lsa-getuser", "rpc.lsa.lookupsids", "rpc.lsa.lookupnames",
274 "rpc.lsa.privileges", "rpc.lsa.secrets",
275 "rpc.samr", "rpc.samr.users", "rpc.samr.users.privileges", "rpc.samr.passwords",
276 "rpc.samr.passwords.pwdlastset", "rpc.samr.large-dc", "rpc.samr.machine.auth",
277 "rpc.samr.priv", "rpc.samr.passwords.validate",
278 "rpc.netlogon.admin",
279 "rpc.schannel", "rpc.schannel2", "rpc.bench-schannel1", "rpc.join", "rpc.bind"]
281 local = ["local.nss-wrapper", "local.ndr"]
283 winbind = ["winbind.struct", "winbind.wbclient", "winbind.pac"]
285 idmap = [ "idmap.rfc2307" ]
287 rap = ["rap.basic", "rap.rpc", "rap.printing", "rap.sam"]
289 unix = ["unix.info2", "unix.whoami"]
291 nbt = ["nbt.dgram" ]
293 libsmbclient = ["libsmbclient"]
295 tests= base + raw + smb2 + rpc + unix + local + winbind + rap + nbt + libsmbclient + idmap
297 for t in tests:
298 if t == "base.delaywrite":
299 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --maximum-runtime=900')
300 plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --maximum-runtime=900')
301 elif t == "rap.sam":
302 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=doscharset=ISO-8859-1')
303 plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=doscharset=ISO-8859-1')
304 elif t == "winbind.pac":
305 plansmbtorture4testsuite(t, "s3member:local", '//$SERVER/tmp --realm=$REALM --machine-pass --option=torture:addc=$DC_SERVER', description="machine account")
306 elif t == "unix.whoami":
307 plansmbtorture4testsuite(t, "member:local", '//$SERVER/tmp --machine-pass', description="machine account")
308 plansmbtorture4testsuite(t, "s3member:local", '//$SERVER/tmp --machine-pass --option=torture:addc=$DC_SERVER', description="machine account")
309 for env in ["s3dc", "member"]:
310 plansmbtorture4testsuite(t, env, '//$SERVER/tmp -U$DC_USERNAME%$DC_PASSWORD')
311 plansmbtorture4testsuite(t, env, '//$SERVER/tmpguest -U%', description='anonymous connection')
312 for env in ["plugin_s4_dc", "s3member"]:
313 plansmbtorture4testsuite(t, env, '//$SERVER/tmp -U$DC_USERNAME@$REALM%$DC_PASSWORD --option=torture:addc=$DC_SERVER')
314 plansmbtorture4testsuite(t, env, '//$SERVER/tmp -k yes -U$DC_USERNAME@$REALM%$DC_PASSWORD --option=torture:addc=$DC_SERVER', description='kerberos connection')
315 plansmbtorture4testsuite(t, env, '//$SERVER/tmpguest -U% --option=torture:addc=$DC_SERVER', description='anonymous connection')
316 elif t == "raw.samba3posixtimedlock":
317 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmpguest -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/s3dc/share')
318 plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmpguest -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/plugin_s4_dc/share')
319 elif t == "raw.chkpath":
320 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmpcase -U$USERNAME%$PASSWORD')
321 plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmpcase -U$USERNAME%$PASSWORD')
322 elif t == "raw.samba3hide" or t == "raw.samba3checkfsp" or t == "raw.samba3closeerr":
323 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
324 plansmbtorture4testsuite(t, "simpleserver", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
325 plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
326 elif t == "raw.session" or t == "smb2.session":
327 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'plain')
328 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmpenc -U$USERNAME%$PASSWORD', 'enc')
329 plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER/tmp -k no -U$USERNAME%$PASSWORD', 'ntlm')
330 plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER/tmp -k yes -U$USERNAME%$PASSWORD', 'krb5')
331 elif t == "rpc.lsa":
332 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'over ncacn_np ')
333 plansmbtorture4testsuite(t, "s3dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ')
334 plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'over ncacn_np ')
335 plansmbtorture4testsuite(t, "plugin_s4_dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ')
336 elif t == "rpc.samr.passwords.validate":
337 plansmbtorture4testsuite(t, "s3dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ')
338 plansmbtorture4testsuite(t, "plugin_s4_dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ')
339 elif t == "smb2.durable-open" or t == "smb2.durable-v2-open":
340 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/durable -U$USERNAME%$PASSWORD')
341 plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER_IP/durable -U$USERNAME%$PASSWORD')
342 elif t == "base.rw1":
343 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
344 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/valid-users-tmp -U$USERNAME%$PASSWORD')
345 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/write-list-tmp -U$USERNAME%$PASSWORD')
346 plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
347 elif t == "idmap.rfc2307":
348 plantestsuite(t, "s3member_rfc2307", [os.path.join(samba3srcdir, "../nsswitch/tests/test_idmap_rfc2307.sh"), '$DOMAIN', 'Administrator', '2000000', '"Domain Users"', '2000001', 'ou=idmap,dc=samba,dc=example,dc=com', '$DC_SERVER', '$DC_USERNAME', '$DC_PASSWORD'])
349 elif t == "raw.acls":
350 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
351 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/nfs4acl_simple -U$USERNAME%$PASSWORD', description='nfs4acl_xattr-simple')
352 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/nfs4acl_special -U$USERNAME%$PASSWORD', description='nfs4acl_xattr-special')
353 plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmpcase -U$USERNAME%$PASSWORD')
354 elif t == "smb2.ioctl":
355 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/fs_specific -U$USERNAME%$PASSWORD', 'fs_specific')
356 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
357 plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
358 elif t == "smb2.lock":
359 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/aio -U$USERNAME%$PASSWORD', 'aio')
360 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
361 plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
362 else:
363 plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
364 plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
367 test = 'rpc.lsa.lookupsids'
368 auth_options = ["", "ntlm", "spnego", "spnego,ntlm" ]
369 signseal_options = ["", ",connect", ",sign", ",seal"]
370 endianness_options = ["", ",bigendian"]
371 for s in signseal_options:
372 for e in endianness_options:
373 for a in auth_options:
374 binding_string = "ncacn_np:$SERVER[%s%s%s]" % (a, s, e)
375 options = binding_string + " -U$USERNAME%$PASSWORD"
376 plansmbtorture4testsuite(test, "s3dc", options, 'over ncacn_np with [%s%s%s] ' % (a, s, e))
377 plantestsuite("samba3.blackbox.rpcclient over ncacn_np with [%s%s%s] " % (a, s, e), "s3dc:local", [os.path.join(samba3srcdir, "script/tests/test_rpcclient.sh"),
378 "none", options, configuration])
380 # We should try more combinations in future, but this is all
381 # the pre-calculated credentials cache supports at the moment
382 e = ""
383 a = ""
384 binding_string = "ncacn_np:$SERVER[%s%s%s]" % (a, s, e)
385 options = binding_string + " -k yes --krb5-ccache=$PREFIX/ktest/krb5_ccache-2"
386 plansmbtorture4testsuite(test, "ktest", options, 'krb5 with old ccache ncacn_np with [%s%s%s] ' % (a, s, e))
388 options = binding_string + " -k yes --krb5-ccache=$PREFIX/ktest/krb5_ccache-3"
389 plansmbtorture4testsuite(test, "ktest", options, 'krb5 ncacn_np with [%s%s%s] ' % (a, s, e))
391 auth_options2 = ["krb5", "spnego,krb5"]
392 for a in auth_options2:
393 binding_string = "ncacn_np:$SERVER[%s%s%s]" % (a, s, e)
395 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"),
396 "$PREFIX/ktest/krb5_ccache-3", binding_string, "-k", configuration])
399 options_list = ["", "-e"]
400 for options in options_list:
401 plantestsuite("samba3.blackbox.smbclient_krb5 old ccache %s" % options, "ktest:local",
402 [os.path.join(samba3srcdir, "script/tests/test_smbclient_krb5.sh"),
403 "$PREFIX/ktest/krb5_ccache-2",
404 smbclient3, "$SERVER", options, configuration])
406 plantestsuite("samba3.blackbox.smbclient_krb5 old ccache %s" % options, "ktest:local",
407 [os.path.join(samba3srcdir, "script/tests/test_smbclient_krb5.sh"),
408 "$PREFIX/ktest/krb5_ccache-2",
409 smbclient3, "$SERVER", options, configuration])
411 plantestsuite("samba3.blackbox.smbclient_large_file %s" % options, "ktest:local",
412 [os.path.join(samba3srcdir, "script/tests/test_smbclient_posix_large.sh"),
413 "$PREFIX/ktest/krb5_ccache-3",
414 smbclient3, "$SERVER", "$PREFIX", options, "-k " + configuration])
416 plantestsuite("samba3.blackbox.smbclient_posix_large %s krb5" % options, "ktest:local",
417 [os.path.join(samba3srcdir, "script/tests/test_smbclient_posix_large.sh"),
418 "$PREFIX/ktest/krb5_ccache-3",
419 smbclient3, "$SERVER", "$PREFIX", options, "-k " + configuration])
421 plantestsuite("samba3.blackbox.smbclient_posix_large %s NTLM" % options, "s3dc:local",
422 [os.path.join(samba3srcdir, "script/tests/test_smbclient_posix_large.sh"),
423 "none",
424 smbclient3, "$SERVER", "$PREFIX", options, "-U$USERNAME%$PASSWORD " + configuration])
426 for e in endianness_options:
427 for a in auth_options:
428 for s in signseal_options:
429 binding_string = "ncacn_ip_tcp:$SERVER_IP[%s%s%s]" % (a, s, e)
430 options = binding_string + " -U$USERNAME%$PASSWORD"
431 plansmbtorture4testsuite(test, "s3dc", options, 'over ncacn_ip_tcp with [%s%s%s] ' % (a, s, e))
433 plansmbtorture4testsuite('rpc.epmapper', 's3dc:local', 'ncalrpc: -U$USERNAME%$PASSWORD', 'over ncalrpc')