diff options
Diffstat (limited to 'fs/cifs/smb2misc.c')
-rw-r--r-- | fs/cifs/smb2misc.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/cifs/smb2misc.c b/fs/cifs/smb2misc.c index b0c43345cd98..6103359fb598 100644 --- a/fs/cifs/smb2misc.c +++ b/fs/cifs/smb2misc.c | |||
@@ -171,6 +171,10 @@ smb2_check_message(char *buf, unsigned int length) | |||
171 | if (4 + len != clc_len) { | 171 | if (4 + len != clc_len) { |
172 | cifs_dbg(FYI, "Calculated size %u length %u mismatch mid %llu\n", | 172 | cifs_dbg(FYI, "Calculated size %u length %u mismatch mid %llu\n", |
173 | clc_len, 4 + len, mid); | 173 | clc_len, 4 + len, mid); |
174 | /* create failed on symlink */ | ||
175 | if (command == SMB2_CREATE_HE && | ||
176 | hdr->Status == STATUS_STOPPED_ON_SYMLINK) | ||
177 | return 0; | ||
174 | /* Windows 7 server returns 24 bytes more */ | 178 | /* Windows 7 server returns 24 bytes more */ |
175 | if (clc_len + 20 == len && command == SMB2_OPLOCK_BREAK_HE) | 179 | if (clc_len + 20 == len && command == SMB2_OPLOCK_BREAK_HE) |
176 | return 0; | 180 | return 0; |