r14733: SMBtdis needs a TCON and doesn't need a SESSION,
authorStefan Metzmacher <metze@samba.org>
Sat, 25 Mar 2006 22:29:45 +0000 (22:29 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:59:17 +0000 (13:59 -0500)
on an invalid tcon it gives NT_STATUS_DOS(ERRSRV, ERRinvnid)

metze
(This used to be commit fca74f2a4ba7d4a18801294a6b2be548864a5252)

source4/smb_server/smb/receive.c

index 73c2ccb5b48ae248f0869ec6a0befffea68fe201..d049475dd2eed336b58977e2f5341f1f276cb4d3 100644 (file)
@@ -287,7 +287,7 @@ static const struct smb_message_struct
 /* 0x6e */ { NULL, NULL, 0 },
 /* 0x6f */ { NULL, NULL, 0 },
 /* 0x70 */ { "SMBtcon",                smbsrv_reply_tcon,              NEED_SESS },
-/* 0x71 */ { "SMBtdis",                smbsrv_reply_tdis,              NEED_SESS },
+/* 0x71 */ { "SMBtdis",                smbsrv_reply_tdis,              NEED_TCON },
 /* 0x72 */ { "SMBnegprot",     smbsrv_reply_negprot,           0 },
 /* 0x73 */ { "SMBsesssetupX",  smbsrv_reply_sesssetup,         0 },
 /* 0x74 */ { "SMBulogoffX",    smbsrv_reply_ulogoffX,          NEED_SESS }, /* ulogoff doesn't give a valid TID */
@@ -530,6 +530,7 @@ static void switch_message(int type, struct smbsrv_request *req)
                switch (type) {
                        case SMBntcreateX:
                        case SMBntcancel:
+                       case SMBtdis:
                                status = NT_STATUS_DOS(ERRSRV, ERRinvnid);
                                break;
                        default: