^samba4.smb2.acls.*.ACCESSBASED
^samba4.ldap.dirsync.python.ad_dc_ntvfs..__main__.ExtendedDirsyncTests.test_dirsync_deleted_items
#^samba4.ldap.dirsync.python.ad_dc_ntvfs..__main__.ExtendedDirsyncTests.*
-^samba4.libsmbclient.opendir.opendir # This requires netbios browsing
+^samba4.libsmbclient.opendir.(NT1|SMB3).opendir # This requires netbios browsing
^samba4.rpc.drsuapi.*.drsuapi.DsGetDomainControllerInfo\(.*\)$
^samba4.smb2.oplock.exclusive2\(.*\)$ # samba 4 oplocks are a mess
^samba4.smb2.oplock.exclusive5\(.*\)$ # samba 4 oplocks are a mess
plansmbtorture4testsuite(t, "ad_dc_ntvfs", ['//$SERVER/tmp', '-U$USERNAME%$PASSWORD'] + ntvfsargs)
libsmbclient = smbtorture4_testsuites("libsmbclient.")
+protocols = [ 'NT1', 'SMB3' ]
for t in libsmbclient:
url = "smb://$USERNAME:$PASSWORD@$SERVER/tmp"
if t == "libsmbclient.list_shares":
url = "smb://$USERNAME:$PASSWORD@$SERVER"
- libsmbclient_testargs = ["--option=torture:smburl=" + url,
- "--option=torture:replace_smbconf=%s/testdata/samba3/smb_new.conf" % srcdir()]
- plansmbtorture4testsuite(t, "ad_dc", ['//$SERVER/tmp', '-U$USERNAME%$PASSWORD'] + libsmbclient_testargs)
+ for proto in protocols:
+ libsmbclient_testargs = ["--option=torture:smburl=" + url,
+ "--option=torture:replace_smbconf=%s/testdata/samba3/smb_new.conf" % srcdir(),
+ "--option=torture:clientprotocol=%s" % proto]
+ plansmbtorture4testsuite(t, "ad_dc", ['//$SERVER/tmp', '-U$USERNAME%$PASSWORD'] + libsmbclient_testargs, "samba4.%s.%s" % (t, proto))
plansmbtorture4testsuite("raw.qfileinfo.ipc", "ad_dc_ntvfs", '//$SERVER/ipc\$ -U$USERNAME%$PASSWORD')
cli_credentials_get_domain(popt_get_cmdline_credentials());
const char *username =
cli_credentials_get_username(popt_get_cmdline_credentials());
+ const char *client_proto =
+ torture_setting_string(tctx, "clientprotocol", NULL);
SMBCCTX *ctx = NULL;
SMBCCTX *p = NULL;
bool ok = true;
smbc_setFunctionAuthData(ctx, auth_callback);
+ if (client_proto != NULL) {
+ smbc_setOptionProtocols(ctx, client_proto, client_proto);
+ }
+
*ctx_p = ctx;
out: