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
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:sharedelay=100000',
27 '--option=torture:writetimeupdatedelay=500000',
30 def plansmbtorture4testsuite(name
, env
, options
, description
=''):
32 modname
= "samba3.%s" % (name
, )
34 modname
= "samba3.%s %s" % (name
, description
)
36 selftesthelpers
.plansmbtorture4testsuite(
37 name
, env
, options
, target
='samba3', modname
=modname
)
40 plantestsuite("samba3.blackbox.success", "s3dc:local", [os
.path
.join(samba3srcdir
, "script/tests/test_success.sh")])
41 plantestsuite("samba3.blackbox.failure", "s3dc:local", [os
.path
.join(samba3srcdir
, "script/tests/test_failure.sh")])
43 plantestsuite("samba3.local_s3", "s3dc:local", [os
.path
.join(samba3srcdir
, "script/tests/test_local_s3.sh")])
45 plantestsuite("samba3.blackbox.registry.upgrade", "s3dc:local", [os
.path
.join(samba3srcdir
, "script/tests/test_registry_upgrade.sh"), net
, dbwrap_tool
])
47 tests
= ["FDPASS", "LOCK1", "LOCK2", "LOCK3", "LOCK4", "LOCK5", "LOCK6", "LOCK7", "LOCK9",
48 "UNLINK", "BROWSE", "ATTR", "TRANS2", "TORTURE",
49 "OPLOCK1", "OPLOCK2", "OPLOCK4", "STREAMERROR",
50 "DIR", "DIR1", "DIR-CREATETIME", "TCON", "TCONDEV", "RW1", "RW2", "RW3", "LARGE_READX", "RW-SIGNING",
51 "OPEN", "XCOPY", "RENAME", "DELETE", "DELETE-LN", "PROPERTIES", "W2K",
52 "TCON2", "IOCTL", "CHKPATH", "FDSESS", "CHAIN1", "CHAIN2",
54 "GETADDRINFO", "UID-REGRESSION-TEST", "SHORTNAME-TEST",
55 "CASE-INSENSITIVE-CREATE", "SMB2-BASIC", "NTTRANS-FSCTL", "SMB2-NEGPROT",
56 "SMB2-SESSION-REAUTH", "SMB2-SESSION-RECONNECT",
63 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"])
64 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"])
66 # this is a negative test to verify that the server rejects
67 # access without encryption
68 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"])
69 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"])
73 tests
= ["OPLOCK-CANCEL"]
75 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"])
77 tests
= ["RW1", "RW2", "RW3"]
79 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"])
81 posix_tests
= ["POSIX", "POSIX-APPEND"]
84 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"])
85 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"])
86 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 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"])
101 "LOCAL-string_to_sid",
102 "LOCAL-sid_to_string",
103 "LOCAL-binary_to_sid",
105 "LOCAL-TEVENT-SELECT",
106 "LOCAL-CONVERT-STRING",
107 "LOCAL-CONV-AUTH-INFO",
108 "LOCAL-IDMAP-TDB-COMMON",
109 "LOCAL-MESSAGING-READ1",
110 "LOCAL-MESSAGING-READ2",
111 "LOCAL-MESSAGING-READ3",
112 "LOCAL-hex_encode_buf",
113 "LOCAL-sprintf_append",
114 "LOCAL-remove_duplicate_addrs2"]
116 for t
in local_tests
:
117 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"])
119 plantestsuite("samba.vfstest.stream_depot", "s3dc:local", [os
.path
.join(samba3srcdir
, "script/tests/stream-depot/run.sh"), binpath("vfstest"), "$PREFIX", configuration
])
120 plantestsuite("samba.vfstest.xattr-tdb-1", "s3dc:local", [os
.path
.join(samba3srcdir
, "script/tests/xattr-tdb-1/run.sh"), binpath("vfstest"), "$PREFIX", configuration
])
121 plantestsuite("samba.vfstest.acl", "s3dc:local", [os
.path
.join(samba3srcdir
, "script/tests/vfstest-acl/run.sh"), binpath("vfstest"), "$PREFIX", configuration
])
122 plantestsuite("samba.vfstest.catia", "s3dc:local", [os
.path
.join(samba3srcdir
, "script/tests/vfstest-catia/run.sh"), binpath("vfstest"), "$PREFIX", configuration
])
124 for options
in ["--option=clientusespnego=no", " --option=clientntlmv2auth=no --option=clientlanmanauth=yes --max-protocol=LANMAN2", ""]:
126 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
])
128 for env
in ["s3dc", "member", "s3member", "dc", "s4member"]:
129 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
])
131 for env
in ["s3dc", "member", "s3member"]:
132 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
])
133 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
])
135 for env
in ["member", "s3member"]:
136 plantestsuite("samba3.blackbox.net_cred_change.(%s:local)" % env
, "%s:local" % env
, [os
.path
.join(samba3srcdir
, "script/tests/test_net_cred_change.sh"), configuration
])
139 t
= "--krb5auth=$DOMAIN/$DC_USERNAME%$DC_PASSWORD"
140 plantestsuite("samba3.wbinfo_simple.(%s:local).%s" % (env
, t
), "%s:local" % env
, [os
.path
.join(srcdir(), "nsswitch/tests/test_wbinfo_simple.sh"), t
])
142 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
])
144 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
])
147 for env
in ["maptoguest", "simpleserver"]:
148 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"])
151 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"])
155 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
])
157 for env
in ["member", "s3member"]:
158 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
])
161 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"])
163 for env
in ["member", "s3member"]:
164 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"])
168 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"])
177 config_h
= os
.environ
["CONFIG_H"]
179 config_h
= os
.path
.join(samba4bindir
, "default/include/config.h")
181 # see if libarchive is supported
182 f
= open(config_h
, 'r')
184 have_libarchive
= ("HAVE_LIBARCHIVE 1" in f
.read())
188 # tar command enabled only if built with libarchive
190 # Test smbclient/tarmode
191 plantestsuite("samba3.blackbox.smbclient_tarmode (%s)" % env
, env
,
192 [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_tarmode.sh"),
193 '$SERVER', '$SERVER_IP', '$USERNAME', '$PASSWORD',
194 '$LOCAL_PATH', '$PREFIX', smbclient3
, configuration
])
196 # Test suite for new smbclient/tar with libarchive (GSoC 13)
197 plantestsuite("samba3.blackbox.smbclient_tar (%s)" % env
, env
,
198 [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_tarmode.pl"),
199 '-n', '$SERVER', '-i', '$SERVER_IP', '-s', 'tmp',
200 '-u', '$USERNAME', '-p', '$PASSWORD', '-l', '$LOCAL_PATH',
201 '-d', '$PREFIX', '-b', smbclient3
,
202 '--subunit', '--', configuration
])
204 #TODO encrypted against member, with member creds, and with DC creds
205 plantestsuite("samba3.blackbox.net.misc", "s3dc:local",
206 [os
.path
.join(samba3srcdir
, "script/tests/test_net_misc.sh"),
207 scriptdir
, "$SMB_CONF_PATH", net
, configuration
])
208 plantestsuite("samba3.blackbox.net.local.registry", "s3dc:local",
209 [os
.path
.join(samba3srcdir
, "script/tests/test_net_registry.sh"),
210 scriptdir
, "$SMB_CONF_PATH", net
, configuration
])
211 plantestsuite("samba3.blackbox.net.registry.check", "s3dc:local",
212 [os
.path
.join(samba3srcdir
, "script/tests/test_net_registry_check.sh"),
213 scriptdir
, "$SMB_CONF_PATH", net
, configuration
, dbwrap_tool
])
214 plantestsuite("samba3.blackbox.net.rpc.registry", "s3dc",
215 [os
.path
.join(samba3srcdir
, "script/tests/test_net_registry.sh"),
216 scriptdir
, "$SMB_CONF_PATH", net
, configuration
, 'rpc'])
218 plantestsuite("samba3.blackbox.net.local.registry.roundtrip", "s3dc:local",
219 [os
.path
.join(samba3srcdir
, "script/tests/test_net_registry_roundtrip.sh"),
220 scriptdir
, "$SMB_CONF_PATH", net
, configuration
])
221 plantestsuite("samba3.blackbox.net.rpc.registry.roundtrip", "s3dc",
222 [os
.path
.join(samba3srcdir
, "script/tests/test_net_registry_roundtrip.sh"),
223 scriptdir
, "$SMB_CONF_PATH", net
, configuration
, 'rpc'])
225 plantestsuite("samba3.blackbox.net.local.conf", "s3dc:local",
226 [os
.path
.join(samba3srcdir
, "script/tests/test_net_conf.sh"),
227 scriptdir
, "$SMB_CONF_PATH", net
, configuration
])
228 plantestsuite("samba3.blackbox.net.rpc.conf", "s3dc",
229 [os
.path
.join(samba3srcdir
, "script/tests/test_net_conf.sh"),
230 scriptdir
, "$SMB_CONF_PATH", net
, configuration
, 'rpc'])
233 plantestsuite("samba3.blackbox.testparm", "s3dc:local",
234 [os
.path
.join(samba3srcdir
, "script/tests/test_testparm_s3.sh"),
238 "samba3.pthreadpool", "s3dc",
239 [os
.path
.join(samba3srcdir
, "script/tests/test_pthreadpool.sh")])
243 base
= ["base.attr", "base.charset", "base.chkpath", "base.defer_open", "base.delaywrite", "base.delete",
244 "base.deny1", "base.deny2", "base.deny3", "base.denydos", "base.dir1", "base.dir2",
245 "base.disconnect", "base.fdpass", "base.lock",
246 "base.mangle", "base.negnowait", "base.ntdeny1",
247 "base.ntdeny2", "base.open", "base.openattr", "base.properties", "base.rename", "base.rw1",
248 "base.secleak", "base.tcon", "base.tcondev", "base.trans2", "base.unlink", "base.vuid",
249 "base.xcopy", "base.samba3error"]
251 raw
= ["raw.acls", "raw.chkpath", "raw.close", "raw.composite", "raw.context", "raw.eas",
252 "raw.ioctl", "raw.lock", "raw.mkdir", "raw.mux", "raw.notify", "raw.open", "raw.oplock",
253 "raw.qfileinfo", "raw.qfsinfo", "raw.read", "raw.rename", "raw.search", "raw.seek",
254 "raw.sfileinfo.base", "raw.sfileinfo.bug", "raw.streams", "raw.unlink", "raw.write",
255 "raw.samba3hide", "raw.samba3badpath", "raw.sfileinfo.rename", "raw.session",
256 "raw.samba3caseinsensitive", "raw.samba3posixtimedlock",
257 "raw.samba3rootdirfid", "raw.sfileinfo.end-of-file",
258 "raw.bench-oplock", "raw.bench-lock", "raw.bench-open", "raw.bench-tcon",
259 "raw.samba3checkfsp", "raw.samba3closeerr", "raw.samba3oplocklogoff", "raw.samba3badnameblob"]
261 smb2
= smbtorture4_testsuites("smb2.")
263 rpc
= ["rpc.authcontext", "rpc.samba3.bind", "rpc.samba3.srvsvc", "rpc.samba3.sharesec",
264 "rpc.samba3.spoolss", "rpc.samba3.wkssvc", "rpc.samba3.winreg",
265 "rpc.samba3.getaliasmembership-0",
266 "rpc.samba3.netlogon", "rpc.samba3.sessionkey", "rpc.samba3.getusername",
267 "rpc.samba3.smb1-pipe-name", "rpc.samba3.smb2-pipe-name",
268 "rpc.samba3.smb-reauth1", "rpc.samba3.smb-reauth2",
269 "rpc.svcctl", "rpc.ntsvcs", "rpc.winreg", "rpc.eventlog",
270 "rpc.spoolss.printserver", "rpc.spoolss.win", "rpc.spoolss.notify", "rpc.spoolss.printer",
271 "rpc.spoolss.driver",
272 "rpc.lsa", "rpc.lsa-getuser", "rpc.lsa.lookupsids", "rpc.lsa.lookupnames",
273 "rpc.lsa.privileges", "rpc.lsa.secrets",
274 "rpc.samr", "rpc.samr.users", "rpc.samr.users.privileges", "rpc.samr.passwords",
275 "rpc.samr.passwords.pwdlastset", "rpc.samr.passwords.lockout", "rpc.samr.passwords.badpwdcount", "rpc.samr.large-dc", "rpc.samr.machine.auth",
276 "rpc.samr.priv", "rpc.samr.passwords.validate",
277 "rpc.netlogon.admin",
278 "rpc.schannel", "rpc.schannel2", "rpc.bench-schannel1", "rpc.join", "rpc.bind"]
280 local
= ["local.ndr"]
282 idmap
= [ "idmap.rfc2307" ]
284 rap
= ["rap.basic", "rap.rpc", "rap.printing", "rap.sam"]
286 unix
= ["unix.info2", "unix.whoami"]
290 libsmbclient
= ["libsmbclient"]
292 tests
= base
+ raw
+ smb2
+ rpc
+ unix
+ local
+ rap
+ nbt
+ libsmbclient
+ idmap
295 if t
== "base.delaywrite":
296 plansmbtorture4testsuite(t
, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD -k yes --maximum-runtime=900')
298 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=doscharset=ISO-8859-1')
299 plansmbtorture4testsuite(t
, "plugin_s4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=doscharset=ISO-8859-1')
300 elif t
== "winbind.pac":
301 plansmbtorture4testsuite(t
, "s3member:local", '//$SERVER/tmp --realm=$REALM --machine-pass --option=torture:addc=$DC_SERVER', description
="machine account")
302 elif t
== "unix.whoami":
303 plansmbtorture4testsuite(t
, "member:local", '//$SERVER/tmp --machine-pass', description
="machine account")
304 plansmbtorture4testsuite(t
, "s3member:local", '//$SERVER/tmp --machine-pass --option=torture:addc=$DC_SERVER', description
="machine account")
305 for env
in ["s3dc", "member"]:
306 plansmbtorture4testsuite(t
, env
, '//$SERVER/tmp -U$DC_USERNAME%$DC_PASSWORD')
307 plansmbtorture4testsuite(t
, env
, '//$SERVER/tmpguest -U%', description
='anonymous connection')
308 for env
in ["plugin_s4_dc", "s3member"]:
309 plansmbtorture4testsuite(t
, env
, '//$SERVER/tmp -U$DC_USERNAME@$REALM%$DC_PASSWORD --option=torture:addc=$DC_SERVER')
310 plansmbtorture4testsuite(t
, env
, '//$SERVER/tmp -k yes -U$DC_USERNAME@$REALM%$DC_PASSWORD --option=torture:addc=$DC_SERVER', description
='kerberos connection')
311 plansmbtorture4testsuite(t
, env
, '//$SERVER/tmpguest -U% --option=torture:addc=$DC_SERVER', description
='anonymous connection')
312 elif t
== "raw.samba3posixtimedlock":
313 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/tmpguest -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/s3dc/share')
314 plansmbtorture4testsuite(t
, "plugin_s4_dc", '//$SERVER_IP/tmpguest -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/plugin_s4_dc/share')
315 elif t
== "raw.chkpath":
316 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/tmpcase -U$USERNAME%$PASSWORD')
317 plansmbtorture4testsuite(t
, "plugin_s4_dc", '//$SERVER_IP/tmpcase -U$USERNAME%$PASSWORD')
318 elif t
== "raw.samba3hide" or t
== "raw.samba3checkfsp" or t
== "raw.samba3closeerr":
319 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
320 plansmbtorture4testsuite(t
, "simpleserver", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
321 plansmbtorture4testsuite(t
, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
322 elif t
== "raw.session" or t
== "smb2.session":
323 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'plain')
324 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/tmpenc -U$USERNAME%$PASSWORD', 'enc')
325 plansmbtorture4testsuite(t
, "plugin_s4_dc", '//$SERVER/tmp -k no -U$USERNAME%$PASSWORD', 'ntlm')
326 plansmbtorture4testsuite(t
, "plugin_s4_dc", '//$SERVER/tmp -k yes -U$USERNAME%$PASSWORD', 'krb5')
328 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'over ncacn_np ')
329 plansmbtorture4testsuite(t
, "s3dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ')
330 plansmbtorture4testsuite(t
, "plugin_s4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'over ncacn_np ')
331 plansmbtorture4testsuite(t
, "plugin_s4_dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ')
332 elif t
== "rpc.samr.passwords.validate":
333 plansmbtorture4testsuite(t
, "s3dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ')
334 plansmbtorture4testsuite(t
, "plugin_s4_dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ')
335 elif t
== "smb2.durable-open" or t
== "smb2.durable-v2-open":
336 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/durable -U$USERNAME%$PASSWORD')
337 plansmbtorture4testsuite(t
, "plugin_s4_dc", '//$SERVER_IP/durable -U$USERNAME%$PASSWORD')
338 elif t
== "base.rw1":
339 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
340 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/valid-users-tmp -U$USERNAME%$PASSWORD')
341 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/write-list-tmp -U$USERNAME%$PASSWORD')
342 plansmbtorture4testsuite(t
, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
343 elif t
== "idmap.rfc2307":
344 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'])
345 elif t
== "raw.acls":
346 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
347 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/nfs4acl_simple -U$USERNAME%$PASSWORD', description
='nfs4acl_xattr-simple')
348 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/nfs4acl_special -U$USERNAME%$PASSWORD', description
='nfs4acl_xattr-special')
349 plansmbtorture4testsuite(t
, "plugin_s4_dc", '//$SERVER_IP/tmpcase -U$USERNAME%$PASSWORD')
350 elif t
== "smb2.ioctl":
351 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/fs_specific -U$USERNAME%$PASSWORD', 'fs_specific')
352 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
353 plansmbtorture4testsuite(t
, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
354 elif t
== "smb2.lock":
355 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/aio -U$USERNAME%$PASSWORD', 'aio')
356 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
357 plansmbtorture4testsuite(t
, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
358 elif t
== "raw.search":
359 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
360 # test the dirsort module.
361 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/tmpsort -U$USERNAME%$PASSWORD')
362 plansmbtorture4testsuite(t
, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
364 plansmbtorture4testsuite(t
, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
365 plansmbtorture4testsuite(t
, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
368 test
= 'rpc.lsa.lookupsids'
369 auth_options
= ["", "ntlm", "spnego", "spnego,ntlm" ]
370 signseal_options
= ["", ",connect", ",sign", ",seal"]
371 endianness_options
= ["", ",bigendian"]
372 for s
in signseal_options
:
373 for e
in endianness_options
:
374 for a
in auth_options
:
375 binding_string
= "ncacn_np:$SERVER[%s%s%s]" % (a
, s
, e
)
376 options
= binding_string
+ " -U$USERNAME%$PASSWORD"
377 plansmbtorture4testsuite(test
, "s3dc", options
, 'over ncacn_np with [%s%s%s] ' % (a
, s
, e
))
378 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"),
379 "none", options
, configuration
])
381 # We should try more combinations in future, but this is all
382 # the pre-calculated credentials cache supports at the moment
385 binding_string
= "ncacn_np:$SERVER[%s%s%s]" % (a
, s
, e
)
386 options
= binding_string
+ " -k yes --krb5-ccache=$PREFIX/ktest/krb5_ccache-2"
387 plansmbtorture4testsuite(test
, "ktest", options
, 'krb5 with old ccache ncacn_np with [%s%s%s] ' % (a
, s
, e
))
389 options
= binding_string
+ " -k yes --krb5-ccache=$PREFIX/ktest/krb5_ccache-3"
390 plansmbtorture4testsuite(test
, "ktest", options
, 'krb5 ncacn_np with [%s%s%s] ' % (a
, s
, e
))
392 auth_options2
= ["krb5", "spnego,krb5"]
393 for a
in auth_options2
:
394 binding_string
= "ncacn_np:$SERVER[%s%s%s]" % (a
, s
, e
)
396 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"),
397 "$PREFIX/ktest/krb5_ccache-3", binding_string
, "-k", configuration
])
399 plantestsuite("samba3.blackbox.rpcclient_samlogon", "s3member:local", [os
.path
.join(samba3srcdir
, "script/tests/test_rpcclient_samlogon.sh"),
400 "$DC_USERNAME", "$DC_PASSWORD", "ncacn_np:$DC_SERVER", configuration
])
402 options_list
= ["", "-e"]
403 for options
in options_list
:
404 plantestsuite("samba3.blackbox.smbclient_krb5 old ccache %s" % options
, "ktest:local",
405 [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_krb5.sh"),
406 "$PREFIX/ktest/krb5_ccache-2",
407 smbclient3
, "$SERVER", options
, configuration
])
409 plantestsuite("samba3.blackbox.smbclient_krb5 old ccache %s" % options
, "ktest:local",
410 [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_krb5.sh"),
411 "$PREFIX/ktest/krb5_ccache-2",
412 smbclient3
, "$SERVER", options
, configuration
])
414 plantestsuite("samba3.blackbox.smbclient_large_file %s" % options
, "ktest:local",
415 [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_posix_large.sh"),
416 "$PREFIX/ktest/krb5_ccache-3",
417 smbclient3
, "$SERVER", "$PREFIX", options
, "-k " + configuration
])
419 plantestsuite("samba3.blackbox.smbclient_posix_large %s krb5" % options
, "ktest:local",
420 [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_posix_large.sh"),
421 "$PREFIX/ktest/krb5_ccache-3",
422 smbclient3
, "$SERVER", "$PREFIX", options
, "-k " + configuration
])
424 plantestsuite("samba3.blackbox.smbclient_posix_large %s NTLM" % options
, "s3dc:local",
425 [os
.path
.join(samba3srcdir
, "script/tests/test_smbclient_posix_large.sh"),
427 smbclient3
, "$SERVER", "$PREFIX", options
, "-U$USERNAME%$PASSWORD " + configuration
])
429 for e
in endianness_options
:
430 for a
in auth_options
:
431 for s
in signseal_options
:
432 binding_string
= "ncacn_ip_tcp:$SERVER_IP[%s%s%s]" % (a
, s
, e
)
433 options
= binding_string
+ " -U$USERNAME%$PASSWORD"
434 plansmbtorture4testsuite(test
, "s3dc", options
, 'over ncacn_ip_tcp with [%s%s%s] ' % (a
, s
, e
))
436 plansmbtorture4testsuite('rpc.epmapper', 's3dc:local', 'ncalrpc: -U$USERNAME%$PASSWORD', 'over ncalrpc')