From 9b1033a1bcee77ad8967b0d01c240eb1dc4b7cc1 Mon Sep 17 00:00:00 2001 From: Steve French Date: Thu, 2 Mar 2006 00:07:08 +0000 Subject: [PATCH] --- yaml --- r: 24977 b: refs/heads/master c: 46c79a645a00e71dbbfd5f52abe0ea7cf2d5daa3 h: refs/heads/master i: 24975: 2d83faa7e115235ff88e3e6e6c0623334f77d7ee v: v3 --- [refs] | 2 +- trunk/fs/cifs/misc.c | 13 ++++++++----- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index c705e06f691a..f1871d6eb68e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f26282c9af43c1aff3f448af61429625174ddf06 +refs/heads/master: 46c79a645a00e71dbbfd5f52abe0ea7cf2d5daa3 diff --git a/trunk/fs/cifs/misc.c b/trunk/fs/cifs/misc.c index 988b8cec8568..5d2fd70b50f8 100644 --- a/trunk/fs/cifs/misc.c +++ b/trunk/fs/cifs/misc.c @@ -429,7 +429,8 @@ checkSMB(struct smb_hdr *smb, __u16 mid, int length) sizeof (struct smb_hdr) - 1) && (smb->Status.CifsError != 0)) { smb->WordCount = 0; - return 0; /* some error cases do not return wct and bcc */ + /* some error cases do not return wct and bcc */ + return 0; } else { cERROR(1, ("Length less than smb header size")); } @@ -456,9 +457,8 @@ checkSMB(struct smb_hdr *smb, __u16 mid, int length) if(((4 + len) & 0xFFFF) == (clc_len & 0xFFFF)) return 0; /* bcc wrapped */ } - cERROR(1, ("Calculated size 0x%x vs actual length 0x%x", - clc_len, 4 + len)); - cERROR(1, ("bad smb size detected for Mid=%d", smb->Mid)); + cFYI(1, ("Calculated size %d vs length %d mismatch for mid %d", + clc_len, 4 + len, smb->Mid)); /* Windows XP can return a few bytes too much, presumably an illegal pad, at the end of byte range lock responses so we allow for that three byte pad, as long as actual @@ -472,8 +472,11 @@ checkSMB(struct smb_hdr *smb, __u16 mid, int length) wct and bcc to minimum size and drop the t2 parms and data */ if((4+len > clc_len) && (len <= clc_len + 512)) return 0; - else + else { + cERROR(1, ("RFC1001 size %d bigger than SMB for Mid=%d", + len, smb->Mid)); return 1; + } } return 0; }