summaryrefslogtreecommitdiff
path: root/source3/torture
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2002-01-03 07:00:18 +0000
committerAndrew Bartlett <abartlet@samba.org>2002-01-03 07:00:18 +0000
commit2998af3746b1e31bddbc3c1718ba482fa53c616b (patch)
treef59595669d5f1a0c04e9c16b02234c7a31532d9a /source3/torture
parentf9866e88a682e101e0b5f15e63632f6858781842 (diff)
downloadsamba-2998af3746b1e31bddbc3c1718ba482fa53c616b.tar.gz
samba-2998af3746b1e31bddbc3c1718ba482fa53c616b.tar.bz2
samba-2998af3746b1e31bddbc3c1718ba482fa53c616b.zip
Workaround some 'smarts' in Win2k.
Win2k kills off connections that have issued a negprot but havn't yet issued a session setup when a second connection appears from the same host. (This used to be commit d47e61eb468218cae631e78edbd5d02982c78ab0)
Diffstat (limited to 'source3/torture')
-rw-r--r--source3/torture/torture.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/source3/torture/torture.c b/source3/torture/torture.c
index 53f3e11e43..256fb891b3 100644
--- a/source3/torture/torture.c
+++ b/source3/torture/torture.c
@@ -2869,27 +2869,47 @@ static BOOL run_error_map_extract(int dummy) {
fstring user;
+ /* NT-Error connection */
+
if (!open_nbt_connection(&c_nt)) {
return False;
}
+ c_nt.use_spnego = False;
+
if (!cli_negprot(&c_nt)) {
printf("%s rejected the NT-error negprot (%s)\n",host, cli_errstr(&c_nt));
cli_shutdown(&c_nt);
return False;
}
+ if (!cli_session_setup(&c_nt, "", "", 0, "", 0,
+ workgroup)) {
+ printf("%s rejected the NT-error initial session setup (%s)\n",host, cli_errstr(&c_nt));
+ return False;
+ }
+
+ /* DOS-Error connection */
+
if (!open_nbt_connection(&c_dos)) {
return False;
}
+ c_dos.use_spnego = False;
c_dos.force_dos_errors = True;
+
if (!cli_negprot(&c_dos)) {
printf("%s rejected the DOS-error negprot (%s)\n",host, cli_errstr(&c_dos));
cli_shutdown(&c_dos);
return False;
}
+ if (!cli_session_setup(&c_dos, "", "", 0, "", 0,
+ workgroup)) {
+ printf("%s rejected the DOS-error initial session setup (%s)\n",host, cli_errstr(&c_dos));
+ return False;
+ }
+
for (error=(0xc0000000 | 0x1); error < (0xc0000000| 0xFFF); error++) {
snprintf(user, sizeof(user), "%X", error);