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 from selftesthelpers import *
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')
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)
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=''):
65 modname = "%s.%s" % (target, name)
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",
88 "GETADDRINFO", "UID-REGRESSION-TEST", "SHORTNAME-TEST",
89 "CASE-INSENSITIVE-CREATE", "SMB2-BASIC", "NTTRANS-FSCTL", "SMB2-NEGPROT",
90 "SMB2-SESSION-REAUTH", "SMB2-SESSION-RECONNECT",
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"])
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"])
120 "LOCAL-string_to_sid",
121 "LOCAL-binary_to_sid",
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",
138 "--domain-info=BUILTIN",
139 "--domain-info=$DOMAIN",
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",
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",
157 for options in ["--option=clientusespnego=no", " --option=clientntlmv2auth=no --option=clientlanmanauth=yes --max-protocol=LANMAN2", ""]:
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])
166 plantestsuite("samba3.wbinfo_s3.(%s:local).%s" % (env, t), "%s:local" % env, [os.path.join(samba3srcdir, "script/tests/test_wbinfo_s3.sh"), t])
169 "samba3.wbinfo_sids2xids.(%s:local)" % env, "%s:local" % env,
170 [os.path.join(samba3srcdir, "script/tests/test_wbinfo_sids2xids.sh")])
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])
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"])
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"])
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])
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"])
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"),
244 "samba3.pthreadpool", "s3dc",
245 [os.path.join(samba3srcdir, "script/tests/test_pthreadpool.sh")])
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",
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"]
296 libsmbclient = ["libsmbclient"]
298 tests= base + raw + smb2 + rpc + unix + local + winbind + rap + nbt + libsmbclient
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')
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 for env in ["s3dc", "member"]:
309 plansmbtorturetestsuite(t, env, '//$SERVER/tmp -U$DC_USERNAME%$DC_PASSWORD')
310 plansmbtorturetestsuite(t, env, '//$SERVER/tmpguest -U%', description='anonymous connection')
311 for env in ["plugin_s4_dc", "s3member"]:
312 plansmbtorturetestsuite(t, env, '//$SERVER/tmp -U$DC_USERNAME@$REALM%$DC_PASSWORD --option=torture:addc=$DC_SERVER')
313 plansmbtorturetestsuite(t, env, '//$SERVER/tmp -k yes -U$DC_USERNAME@$REALM%$DC_PASSWORD --option=torture:addc=$DC_SERVER', description='kerberos connection')
314 plansmbtorturetestsuite(t, env, '//$SERVER/tmpguest -U% --option=torture:addc=$DC_SERVER', description='anonymous connection')
315 elif t == "raw.samba3posixtimedlock":
316 plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmpguest -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/s3dc/share')
317 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmpguest -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/plugin_s4_dc/share')
318 elif t == "raw.chkpath":
319 plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmpcase -U$USERNAME%$PASSWORD')
320 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmpcase -U$USERNAME%$PASSWORD')
321 elif t == "raw.samba3hide" or t == "raw.samba3checkfsp" or t == "raw.samba3closeerr":
322 plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
323 plansmbtorturetestsuite(t, "secshare", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
324 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
325 elif t == "raw.session" or t == "smb2.session":
326 plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
327 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER/tmp -k no -U$USERNAME%$PASSWORD', 'ntlm')
328 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER/tmp -k yes -U$USERNAME%$PASSWORD', 'krb5')
330 plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'over ncacn_np ')
331 plansmbtorturetestsuite(t, "s3dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ')
332 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'over ncacn_np ')
333 plansmbtorturetestsuite(t, "plugin_s4_dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ')
335 plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
336 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
339 test = 'rpc.lsa.lookupsids'
340 auth_options = ["", "ntlm", "spnego", "spnego,ntlm" ]
341 signseal_options = ["", ",connect", ",sign", ",seal"]
342 endianness_options = ["", ",bigendian"]
343 for s in signseal_options:
344 for e in endianness_options:
345 for a in auth_options:
346 binding_string = "ncacn_np:$SERVER[%s%s%s]" % (a, s, e)
347 options = binding_string + " -U$USERNAME%$PASSWORD"
348 plansmbtorturetestsuite(test, "s3dc", options, 'over ncacn_np with [%s%s%s] ' % (a, s, e))
349 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"),
350 "none", options, configuration])
352 # We should try more combinations in future, but this is all
353 # the pre-calculated credentials cache supports at the moment
356 binding_string = "ncacn_np:$SERVER[%s%s%s]" % (a, s, e)
357 options = binding_string + " -k yes --krb5-ccache=$PREFIX/ktest/krb5_ccache-2"
358 plansmbtorturetestsuite(test, "ktest", options, 'krb5 with old ccache ncacn_np with [%s%s%s] ' % (a, s, e))
360 options = binding_string + " -k yes --krb5-ccache=$PREFIX/ktest/krb5_ccache-3"
361 plansmbtorturetestsuite(test, "ktest", options, 'krb5 ncacn_np with [%s%s%s] ' % (a, s, e))
363 auth_options2 = ["krb5", "spnego,krb5"]
364 for a in auth_options2:
365 binding_string = "ncacn_np:$SERVER[%s%s%s]" % (a, s, e)
367 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"),
368 "$PREFIX/ktest/krb5_ccache-3", binding_string, "-k", configuration])
371 options_list = ["", "-e"]
372 for options in options_list:
373 plantestsuite("samba3.blackbox.smbclient_krb5 old ccache %s" % options, "ktest:local",
374 [os.path.join(samba3srcdir, "script/tests/test_smbclient_krb5.sh"),
375 "$PREFIX/ktest/krb5_ccache-2",
376 smbclient, "$SERVER", options, configuration])
378 plantestsuite("samba3.blackbox.smbclient_krb5 old ccache %s" % options, "ktest:local",
379 [os.path.join(samba3srcdir, "script/tests/test_smbclient_krb5.sh"),
380 "$PREFIX/ktest/krb5_ccache-2",
381 smbclient, "$SERVER", options, configuration])
383 plantestsuite("samba3.blackbox.smbclient_large_file %s" % options, "ktest:local",
384 [os.path.join(samba3srcdir, "script/tests/test_smbclient_posix_large.sh"),
385 "$PREFIX/ktest/krb5_ccache-3",
386 smbclient, "$SERVER", "$PREFIX", options, "-k " + configuration])
388 plantestsuite("samba3.blackbox.smbclient_posix_large %s krb5" % options, "ktest:local",
389 [os.path.join(samba3srcdir, "script/tests/test_smbclient_posix_large.sh"),
390 "$PREFIX/ktest/krb5_ccache-3",
391 smbclient, "$SERVER", "$PREFIX", options, "-k " + configuration])
393 plantestsuite("samba3.blackbox.smbclient_posix_large %s NTLM" % options, "s3dc:local",
394 [os.path.join(samba3srcdir, "script/tests/test_smbclient_posix_large.sh"),
396 smbclient, "$SERVER", "$PREFIX", options, "-U$USERNAME%$PASSWORD " + configuration])
398 for e in endianness_options:
399 for a in auth_options:
400 for s in signseal_options:
401 binding_string = "ncacn_ip_tcp:$SERVER_IP[%s%s%s]" % (a, s, e)
402 options = binding_string + " -U$USERNAME%$PASSWORD"
403 plansmbtorturetestsuite(test, "s3dc", options, 'over ncacn_ip_tcp with [%s%s%s] ' % (a, s, e))
405 test = 'rpc.epmapper'
407 binding_string = 'ncalrpc:'
408 options = binding_string + " -U$USERNAME%$PASSWORD"
410 plansmbtorturetestsuite(test, env, options, 'over ncalrpc')