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 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')
328 plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'over ncacn_np ')
329 plansmbtorturetestsuite(t, "s3dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ')
330 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'over ncacn_np ')
331 plansmbtorturetestsuite(t, "plugin_s4_dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ')
333 plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD')
334 plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD')
337 test = 'rpc.lsa.lookupsids'
338 auth_options = ["", "ntlm", "spnego", "spnego,ntlm" ]
339 signseal_options = ["", ",connect", ",sign", ",seal"]
340 endianness_options = ["", ",bigendian"]
341 for s in signseal_options:
342 for e in endianness_options:
343 for a in auth_options:
344 binding_string = "ncacn_np:$SERVER[%s%s%s]" % (a, s, e)
345 options = binding_string + " -U$USERNAME%$PASSWORD"
346 plansmbtorturetestsuite(test, "s3dc", options, 'over ncacn_np with [%s%s%s] ' % (a, s, e))
347 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"),
348 "none", options, configuration])
350 # We should try more combinations in future, but this is all
351 # the pre-calculated credentials cache supports at the moment
354 binding_string = "ncacn_np:$SERVER[%s%s%s]" % (a, s, e)
355 options = binding_string + " -k yes --krb5-ccache=$PREFIX/ktest/krb5_ccache-2"
356 plansmbtorturetestsuite(test, "ktest", options, 'krb5 with old ccache ncacn_np with [%s%s%s] ' % (a, s, e))
358 options = binding_string + " -k yes --krb5-ccache=$PREFIX/ktest/krb5_ccache-3"
359 plansmbtorturetestsuite(test, "ktest", options, 'krb5 ncacn_np with [%s%s%s] ' % (a, s, e))
361 auth_options2 = ["krb5", "spnego,krb5"]
362 for a in auth_options2:
363 binding_string = "ncacn_np:$SERVER[%s%s%s]" % (a, s, e)
365 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"),
366 "$PREFIX/ktest/krb5_ccache-3", binding_string, "-k", configuration])
369 options_list = ["", "-e"]
370 for options in options_list:
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_krb5 old ccache %s" % options, "ktest:local",
377 [os.path.join(samba3srcdir, "script/tests/test_smbclient_krb5.sh"),
378 "$PREFIX/ktest/krb5_ccache-2",
379 smbclient, "$SERVER", options, configuration])
381 plantestsuite("samba3.blackbox.smbclient_large_file %s" % 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 krb5" % options, "ktest:local",
387 [os.path.join(samba3srcdir, "script/tests/test_smbclient_posix_large.sh"),
388 "$PREFIX/ktest/krb5_ccache-3",
389 smbclient, "$SERVER", "$PREFIX", options, "-k " + configuration])
391 plantestsuite("samba3.blackbox.smbclient_posix_large %s NTLM" % options, "s3dc:local",
392 [os.path.join(samba3srcdir, "script/tests/test_smbclient_posix_large.sh"),
394 smbclient, "$SERVER", "$PREFIX", options, "-U$USERNAME%$PASSWORD " + configuration])
396 for e in endianness_options:
397 for a in auth_options:
398 for s in signseal_options:
399 binding_string = "ncacn_ip_tcp:$SERVER_IP[%s%s%s]" % (a, s, e)
400 options = binding_string + " -U$USERNAME%$PASSWORD"
401 plansmbtorturetestsuite(test, "s3dc", options, 'over ncacn_ip_tcp with [%s%s%s] ' % (a, s, e))
403 test = 'rpc.epmapper'
405 binding_string = 'ncalrpc:'
406 options = binding_string + " -U$USERNAME%$PASSWORD"
408 plansmbtorturetestsuite(test, env, options, 'over ncalrpc')