SMB3.1.1: update comments clarifying SPNEGO info in negprot response
Trivial changes to clarify confusing comment about SPNEGO blog (and also one length comparisons in negotiate context parsing). Suggested-by: Tom Talpey <tom@talpey.com> Suggested-by: Pavel Shilovsky <pshilov@microsoft.com> Signed-off-by: Steve French <stfrench@microsoft.com>zero-sugar-mainline-defconfig
parent
f2156d35c9
commit
145024e3e4
|
@ -109,8 +109,17 @@ static __u32 get_neg_ctxt_len(struct smb2_sync_hdr *hdr, __u32 len,
|
||||||
(pneg_rsp->DialectRevision != cpu_to_le16(SMB311_PROT_ID)))
|
(pneg_rsp->DialectRevision != cpu_to_le16(SMB311_PROT_ID)))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
/* Make sure that negotiate contexts start after gss security blob */
|
/*
|
||||||
|
* if SPNEGO blob present (ie the RFC2478 GSS info which indicates
|
||||||
|
* which security mechanisms the server supports) make sure that
|
||||||
|
* the negotiate contexts start after it
|
||||||
|
*/
|
||||||
nc_offset = le32_to_cpu(pneg_rsp->NegotiateContextOffset);
|
nc_offset = le32_to_cpu(pneg_rsp->NegotiateContextOffset);
|
||||||
|
/*
|
||||||
|
* non_ctxlen is at least shdr->StructureSize + pdu->StructureSize2
|
||||||
|
* and the latter is 1 byte bigger than the fix-sized area of the
|
||||||
|
* NEGOTIATE response
|
||||||
|
*/
|
||||||
if (nc_offset + 1 < non_ctxlen) {
|
if (nc_offset + 1 < non_ctxlen) {
|
||||||
pr_warn_once("Invalid negotiate context offset %d\n", nc_offset);
|
pr_warn_once("Invalid negotiate context offset %d\n", nc_offset);
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Loading…
Reference in New Issue