s3:smbd:smb2: change smbXsrv_session0 to smbXsrv_session in struct user_struct.
[Samba/gebeck_regimport.git] / source3 / selftest / tests.py
blob264f93a5c574a36183bb1edf493ec5be11555117
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 from selftesthelpers import *
24 import subprocess
25 smb4torture = binpath("smbtorture4")
26 samba3srcdir = srcdir() + "/source3"
27 configuration = "--configfile=$SMB_CONF_PATH"
28 scriptdir=os.path.join(samba3srcdir, "../script/tests")
30 smbclient = binpath('smbclient3')
31 wbinfo = binpath('wbinfo')
32 net = binpath('net')
33 smbtorture3 = binpath('smbtorture3')
34 ntlm_auth = binpath('ntlm_auth3')
35 dbwrap_tool = binpath('dbwrap_tool')
37 torture_options = [configuration, "--maximum-runtime=$SELFTEST_MAXTIME",
38 "--basedir=$SELFTEST_TMPDIR",
39 '--option="torture:winbindd_netbios_name=$SERVER"',
40 '--option="torture:winbindd_netbios_domain=$DOMAIN"',
41 '--option=torture:sharedelay=100000',
42 '--option=torture:writetimeupdatedelay=500000' ]
44 if not os.getenv("SELFTEST_VERBOSE"):
45 torture_options.append("--option=torture:progress=no")
46 torture_options.append("--format=subunit")
47 if os.getenv("SELFTEST_QUICK"):
48 torture_options.append("--option=torture:quick=yes")
50 smb4torture_testsuite_list = subprocess.Popen([smb4torture, "--list-suites"], stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate("")[0].splitlines()
52 smb4torture += " " + " ".join(torture_options)
54 sub = subprocess.Popen("%s --version 2> /dev/null" % smb4torture, stdout=subprocess.PIPE, stdin=subprocess.PIPE, shell=True)
55 sub.communicate("")
56 smb4torture_possible = (sub.returncode == 0)
59 def smb4torture_testsuites(prefix):
60 return filter(lambda x: x.startswith(prefix), smb4torture_testsuite_list)
62 def plansmbtorturetestsuite(name, env, options, description=''):
63 target = "samba3"
64 if description == '':
65 modname = "%s.%s" % (target, name)
66 else:
67 modname = "%s.%s %s" % (target, name, description)
69 cmdline = "%s $LISTOPT %s --target=%s %s" % (valgrindify(smb4torture), options, target, name)
70 if smb4torture_possible:
71 plantestsuite_loadlist(modname, env, cmdline)
74 plantestsuite("samba3.blackbox.success", "s3dc:local", [os.path.join(samba3srcdir, "script/tests/test_success.sh")])
75 plantestsuite("samba3.blackbox.failure", "s3dc:local", [os.path.join(samba3srcdir, "script/tests/test_failure.sh")])
77 plantestsuite("samba3.local_s3", "s3dc:local", [os.path.join(samba3srcdir, "script/tests/test_local_s3.sh")])
79 plantestsuite("samba3.blackbox.registry.upgrade", "s3dc:local", [os.path.join(samba3srcdir, "script/tests/test_registry_upgrade.sh"), net, dbwrap_tool])
81 tests=[ "FDPASS", "LOCK1", "LOCK2", "LOCK3", "LOCK4", "LOCK5", "LOCK6", "LOCK7", "LOCK9",
82 "UNLINK", "BROWSE", "ATTR", "TRANS2", "TORTURE",
83 "OPLOCK1", "OPLOCK2", "OPLOCK4", "STREAMERROR",
84 "DIR", "DIR1", "DIR-CREATETIME", "TCON", "TCONDEV", "RW1", "RW2", "RW3", "RW-SIGNING",
85 "OPEN", "XCOPY", "RENAME", "DELETE", "DELETE-LN", "PROPERTIES", "W2K",
86 "TCON2", "IOCTL", "CHKPATH", "FDSESS", "CHAIN1", "CHAIN2",
87 "CHAIN3",
88 "GETADDRINFO", "UID-REGRESSION-TEST", "SHORTNAME-TEST",
89 "CASE-INSENSITIVE-CREATE", "SMB2-BASIC", "NTTRANS-FSCTL", "SMB2-NEGPROT",
90 "SMB2-SESSION-REAUTH", "SMB2-SESSION-RECONNECT",
91 "CLEANUP1",
92 "CLEANUP2",
93 "BAD-NBT-SESSION"]
95 for t in tests:
96 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"])
97 plantestsuite("samba3.smbtorture_s3.crypt(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"])
98 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"])
100 posix_tests=[ "POSIX", "POSIX-APPEND"]
102 for t in posix_tests:
103 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"])
104 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"])
105 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"])
107 env = "s3dc:local"
108 t = "CLEANUP3"
109 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"])
111 local_tests=[
112 "LOCAL-SUBSTITUTE",
113 "LOCAL-GENCACHE",
114 "LOCAL-TALLOC-DICT",
115 "LOCAL-BASE64",
116 "LOCAL-RBTREE",
117 "LOCAL-MEMCACHE",
118 "LOCAL-STREAM-NAME",
119 "LOCAL-WBCLIENT",
120 "LOCAL-string_to_sid",
121 "LOCAL-binary_to_sid",
122 "LOCAL-DBTRANS",
123 "LOCAL-TEVENT-SELECT",
124 "LOCAL-CONVERT-STRING",
125 "LOCAL-CONV-AUTH-INFO",
126 "LOCAL-IDMAP-TDB-COMMON",
127 "LOCAL-hex_encode_buf",
128 "LOCAL-sprintf_append",
129 "LOCAL-remove_duplicate_addrs2"]
131 for t in local_tests:
132 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"])
134 tests=["--ping", "--separator",
135 "--own-domain",
136 "--all-domains",
137 "--trusted-domains",
138 "--domain-info=BUILTIN",
139 "--domain-info=$DOMAIN",
140 "--online-status",
141 "--online-status --domain=BUILTIN",
142 "--online-status --domain=$DOMAIN",
143 "--check-secret --domain=$DOMAIN",
144 "--change-secret --domain=$DOMAIN",
145 "--check-secret --domain=$DOMAIN",
146 "--online-status --domain=$DOMAIN",
147 #Didn't pass yet# "--domain-users",
148 "--domain-groups",
149 "--name-to-sid=$DC_USERNAME",
150 "--name-to-sid=$DOMAIN\\\\$DC_USERNAME",
151 #Didn't pass yet# "--user-info=$USERNAME",
152 "--user-groups=$DOMAIN\\\\$DC_USERNAME",
153 "--authenticate=$DOMAIN\\\\$DC_USERNAME%$DC_PASSWORD",
154 "--allocate-uid",
155 "--allocate-gid"]
157 for options in ["--option=clientusespnego=no", " --option=clientntlmv2auth=no --option=clientlanmanauth=yes --max-protocol=LANMAN2", ""]:
158 env = "s3dc"
159 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', smbclient, configuration, options])
161 for env in ["s3dc", "member", "s3member"]:
162 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', smbclient, configuration])
163 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', smbclient, configuration])
165 for t in tests:
166 plantestsuite("samba3.wbinfo_s3.(%s:local).%s" % (env, t), "%s:local" % env, [os.path.join(samba3srcdir, "script/tests/test_wbinfo_s3.sh"), t])
168 plantestsuite(
169 "samba3.wbinfo_sids2xids.(%s:local)" % env, "%s:local" % env,
170 [os.path.join(samba3srcdir, "script/tests/test_wbinfo_sids2xids.sh")])
172 plantestsuite(
173 "samba3.ntlm_auth.diagnostics(%s:local)" % env, "%s:local" % env,
174 [os.path.join(samba3srcdir, "script/tests/test_ntlm_auth_diagnostics.sh"), ntlm_auth, '$DOMAIN', '$DC_USERNAME', '$DC_PASSWORD', configuration])
176 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_auth, '$DOMAIN', '$DC_USERNAME', '$DC_PASSWORD', configuration])
178 env = "s3member"
179 t = "--krb5auth=$DOMAIN\\\\$DC_USERNAME%$DC_PASSWORD"
180 plantestsuite("samba3.wbinfo_s3.(%s:local).%s" % (env, t), "%s:local" % env, [os.path.join(samba3srcdir, "script/tests/test_wbinfo_s3.sh"), t])
182 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_auth, '$PREFIX/ktest/krb5_ccache-2', '$SERVER', configuration])
184 plantestsuite("samba3.ntlm_auth.krb5(ktest:local)", "ktest:local", [os.path.join(samba3srcdir, "script/tests/test_ntlm_auth_krb5.sh"), valgrindify(python), samba3srcdir, ntlm_auth, '$PREFIX/ktest/krb5_ccache-3', '$SERVER', configuration])
187 for env in ["maptoguest", "secshare"]:
188 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', smbclient, configuration + " --option=clientntlmv2auth=no --option=clientlanmanauth=yes"])
190 env = "maptoguest"
191 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', smbclient, configuration + " --option=clientntlmv2auth=no --option=clientlanmanauth=yes"])
193 # plain
194 for env in ["s3dc"]:
195 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', smbclient, wbinfo, configuration])
197 for env in ["member", "s3member"]:
198 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', smbclient, wbinfo, configuration])
200 for env in ["s3dc"]:
201 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', smbclient, wbinfo, configuration, "--signing=required"])
203 for env in ["member", "s3member"]:
204 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', smbclient, wbinfo, configuration, "--signing=required"])
206 # encrypted
207 for env in ["s3dc"]:
208 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', smbclient, wbinfo, configuration, "-e"])
210 #TODO encrypted against member, with member creds, and with DC creds
211 plantestsuite("samba3.blackbox.net.misc", "s3dc:local",
212 [os.path.join(samba3srcdir, "script/tests/test_net_misc.sh"),
213 scriptdir, "$SMB_CONF_PATH", net, configuration])
214 plantestsuite("samba3.blackbox.net.local.registry", "s3dc:local",
215 [os.path.join(samba3srcdir, "script/tests/test_net_registry.sh"),
216 scriptdir, "$SMB_CONF_PATH", net, configuration])
217 plantestsuite("samba3.blackbox.net.registry.check", "s3dc:local",
218 [os.path.join(samba3srcdir, "script/tests/test_net_registry_check.sh"),
219 scriptdir, "$SMB_CONF_PATH", net, configuration,dbwrap_tool])
220 plantestsuite("samba3.blackbox.net.rpc.registry", "s3dc",
221 [os.path.join(samba3srcdir, "script/tests/test_net_registry.sh"),
222 scriptdir, "$SMB_CONF_PATH", net, configuration, 'rpc'])
224 plantestsuite("samba3.blackbox.net.local.registry.roundtrip", "s3dc:local",
225 [os.path.join(samba3srcdir, "script/tests/test_net_registry_roundtrip.sh"),
226 scriptdir, "$SMB_CONF_PATH", net, configuration])
227 plantestsuite("samba3.blackbox.net.rpc.registry.roundtrip", "s3dc",
228 [os.path.join(samba3srcdir, "script/tests/test_net_registry_roundtrip.sh"),
229 scriptdir, "$SMB_CONF_PATH", net, configuration, 'rpc'])
231 plantestsuite("samba3.blackbox.net.local.conf", "s3dc:local",
232 [os.path.join(samba3srcdir, "script/tests/test_net_conf.sh"),
233 scriptdir, "$SMB_CONF_PATH", net, configuration])
234 plantestsuite("samba3.blackbox.net.rpc.conf", "s3dc",
235 [os.path.join(samba3srcdir, "script/tests/test_net_conf.sh"),
236 scriptdir, "$SMB_CONF_PATH", net, configuration, 'rpc'])
239 plantestsuite("samba3.blackbox.testparm", "s3dc:local",
240 [os.path.join(samba3srcdir, "script/tests/test_testparm_s3.sh"),
241 "$LOCAL_PATH"])
243 plantestsuite(
244 "samba3.pthreadpool", "s3dc",
245 [os.path.join(samba3srcdir, "script/tests/test_pthreadpool.sh")])
247 #smbtorture4 tests
249 base = ["base.attr", "base.charset", "base.chkpath", "base.defer_open", "base.delaywrite", "base.delete",
250 "base.deny1", "base.deny2", "base.deny3", "base.denydos", "base.dir1", "base.dir2",
251 "base.disconnect", "base.fdpass", "base.lock",
252 "base.mangle", "base.negnowait", "base.ntdeny1",
253 "base.ntdeny2", "base.open", "base.openattr", "base.properties", "base.rename", "base.rw1",
254 "base.secleak", "base.tcon", "base.tcondev", "base.trans2", "base.unlink", "base.vuid",
255 "base.xcopy", "base.samba3error"]
257 raw = ["raw.acls", "raw.chkpath", "raw.close", "raw.composite", "raw.context", "raw.eas",
258 "raw.ioctl", "raw.lock", "raw.mkdir", "raw.mux", "raw.notify", "raw.open", "raw.oplock"
259 "raw.qfileinfo", "raw.qfsinfo", "raw.read", "raw.rename", "raw.search", "raw.seek",
260 "raw.sfileinfo.base", "raw.sfileinfo.bug", "raw.streams", "raw.unlink", "raw.write",
261 "raw.samba3hide", "raw.samba3badpath", "raw.sfileinfo.rename", "raw.session",
262 "raw.samba3caseinsensitive", "raw.samba3posixtimedlock",
263 "raw.samba3rootdirfid", "raw.sfileinfo.end-of-file",
264 "raw.bench-oplock", "raw.bench-lock", "raw.bench-open", "raw.bench-tcon",
265 "raw.samba3checkfsp", "raw.samba3closeerr", "raw.samba3oplocklogoff"]
267 smb2 = smb4torture_testsuites("smb2.")
269 rpc = ["rpc.authcontext", "rpc.samba3.bind", "rpc.samba3.srvsvc", "rpc.samba3.sharesec",
270 "rpc.samba3.spoolss", "rpc.samba3.wkssvc", "rpc.samba3.winreg",
271 "rpc.samba3.getaliasmembership-0",
272 "rpc.samba3.netlogon", "rpc.samba3.sessionkey", "rpc.samba3.getusername",
273 "rpc.samba3.smb1-pipe-name", "rpc.samba3.smb2-pipe-name",
274 "rpc.samba3.smb-reauth1", "rpc.samba3.smb-reauth2",
275 "rpc.svcctl", "rpc.ntsvcs", "rpc.winreg", "rpc.eventlog",
276 "rpc.spoolss.printserver", "rpc.spoolss.win", "rpc.spoolss.notify", "rpc.spoolss.printer",
277 "rpc.spoolss.driver",
278 "rpc.lsa", "rpc.lsa-getuser", "rpc.lsa.lookupsids", "rpc.lsa.lookupnames",
279 "rpc.lsa.privileges", "rpc.lsa.secrets",
280 "rpc.samr", "rpc.samr.users", "rpc.samr.users.privileges", "rpc.samr.passwords",
281 "rpc.samr.passwords.pwdlastset", "rpc.samr.large-dc", "rpc.samr.machine.auth",
282 "rpc.samr.priv",
283 "rpc.netlogon.admin",
284 "rpc.schannel", "rpc.schannel2", "rpc.bench-schannel1", "rpc.join", "rpc.bind"]
286 local = ["local.nss-wrapper", "local.ndr"]
288 winbind = ["winbind.struct", "winbind.wbclient"]
290 rap = ["rap.basic", "rap.rpc", "rap.printing", "rap.sam"]
292 unix = ["unix.info2", "unix.whoami"]
294 nbt = ["nbt.dgram" ]
296 libsmbclient = ["libsmbclient"]
298 tests= base + raw + smb2 + rpc + unix + local + winbind + rap + nbt + libsmbclient
300 for t in tests:
301 if t == "base.delaywrite":
302 plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --maximum-runtime=900')
303 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --maximum-runtime=900')
304 elif t == "rap.sam":
305 plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=doscharset=ISO-8859-1')
306 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=doscharset=ISO-8859-1')
307 elif t == "unix.whoami":
308 plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
309 plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmpguest -U%', description='anonymous connection')
310 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=torture:addc=true')
311 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER/tmp -k yes -U$USERNAME%$PASSWORD --option=torture:addc=true', description='kerberos connection')
312 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmpguest -U% --option=torture:addc=true', description='anonymous connection')
313 elif t == "raw.samba3posixtimedlock":
314 plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmpguest -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/s3dc/share')
315 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmpguest -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/plugin_s4_dc/share')
316 elif t == "raw.chkpath":
317 plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmpcase -U$USERNAME%$PASSWORD')
318 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmpcase -U$USERNAME%$PASSWORD')
319 elif t == "raw.samba3hide" or t == "raw.samba3checkfsp" or t == "raw.samba3closeerr":
320 plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
321 plansmbtorturetestsuite(t, "secshare", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
322 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
323 elif t == "raw.session" or t == "smb2.session":
324 plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
325 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER/tmp -k no -U$USERNAME%$PASSWORD', 'ntlm')
326 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER/tmp -k yes -U$USERNAME%$PASSWORD', 'krb5')
327 else:
328 plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
329 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
332 test = 'rpc.lsa.lookupsids'
333 auth_options = ["", "ntlm", "spnego", "spnego,ntlm" ]
334 signseal_options = ["", ",connect", ",sign", ",seal"]
335 endianness_options = ["", ",bigendian"]
336 for s in signseal_options:
337 for e in endianness_options:
338 for a in auth_options:
339 binding_string = "ncacn_np:$SERVER[%s%s%s]" % (a, s, e)
340 options = binding_string + " -U$USERNAME%$PASSWORD"
341 plansmbtorturetestsuite(test, "s3dc", options, 'over ncacn_np with [%s%s%s] ' % (a, s, e))
342 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"),
343 "none", options, configuration])
345 # We should try more combinations in future, but this is all
346 # the pre-calculated credentials cache supports at the moment
347 e = ""
348 a = ""
349 binding_string = "ncacn_np:$SERVER[%s%s%s]" % (a, s, e)
350 options = binding_string + " -k yes --krb5-ccache=$PREFIX/ktest/krb5_ccache-2"
351 plansmbtorturetestsuite(test, "ktest", options, 'krb5 with old ccache ncacn_np with [%s%s%s] ' % (a, s, e))
353 options = binding_string + " -k yes --krb5-ccache=$PREFIX/ktest/krb5_ccache-3"
354 plansmbtorturetestsuite(test, "ktest", options, 'krb5 ncacn_np with [%s%s%s] ' % (a, s, e))
356 auth_options2 = ["krb5", "spnego,krb5"]
357 for a in auth_options2:
358 binding_string = "ncacn_np:$SERVER[%s%s%s]" % (a, s, e)
360 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"),
361 "$PREFIX/ktest/krb5_ccache-3", binding_string, "-k", configuration])
364 options_list = ["", "-e"]
365 for options in options_list:
366 plantestsuite("samba3.blackbox.smbclient_krb5 old ccache %s" % options, "ktest:local",
367 [os.path.join(samba3srcdir, "script/tests/test_smbclient_krb5.sh"),
368 "$PREFIX/ktest/krb5_ccache-2",
369 smbclient, "$SERVER", options, configuration])
371 plantestsuite("samba3.blackbox.smbclient_krb5 old ccache %s" % options, "ktest:local",
372 [os.path.join(samba3srcdir, "script/tests/test_smbclient_krb5.sh"),
373 "$PREFIX/ktest/krb5_ccache-2",
374 smbclient, "$SERVER", options, configuration])
376 plantestsuite("samba3.blackbox.smbclient_large_file %s" % options, "ktest:local",
377 [os.path.join(samba3srcdir, "script/tests/test_smbclient_posix_large.sh"),
378 "$PREFIX/ktest/krb5_ccache-3",
379 smbclient, "$SERVER", "$PREFIX", options, "-k " + configuration])
381 plantestsuite("samba3.blackbox.smbclient_posix_large %s krb5" % options, "ktest:local",
382 [os.path.join(samba3srcdir, "script/tests/test_smbclient_posix_large.sh"),
383 "$PREFIX/ktest/krb5_ccache-3",
384 smbclient, "$SERVER", "$PREFIX", options, "-k " + configuration])
386 plantestsuite("samba3.blackbox.smbclient_posix_large %s NTLM" % options, "s3dc:local",
387 [os.path.join(samba3srcdir, "script/tests/test_smbclient_posix_large.sh"),
388 "none",
389 smbclient, "$SERVER", "$PREFIX", options, "-U$USERNAME%$PASSWORD " + configuration])
391 for e in endianness_options:
392 for a in auth_options:
393 for s in signseal_options:
394 binding_string = "ncacn_ip_tcp:$SERVER_IP[%s%s%s]" % (a, s, e)
395 options = binding_string + " -U$USERNAME%$PASSWORD"
396 plansmbtorturetestsuite(test, "s3dc", options, 'over ncacn_ip_tcp with [%s%s%s] ' % (a, s, e))
398 test = 'rpc.epmapper'
399 env = 's3dc:local'
400 binding_string = 'ncalrpc:'
401 options = binding_string + " -U$USERNAME%$PASSWORD"
403 plansmbtorturetestsuite(test, env, options, 'over ncalrpc')