Patch "CIFS: Fix a possible memory corruption in push locks" has been added to the 4.4-stable tree
From: <gregkh@linuxfoundation.org>
Date: 2017-01-04 13:58:43
This is a note to let you know that I've just added the patch titled
CIFS: Fix a possible memory corruption in push locks
to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
cifs-fix-a-possible-memory-corruption-in-push-locks.patch
and it can be found in the queue-4.4 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree,
please let [off-list ref] know about it.
From e3d240e9d505fc67f8f8735836df97a794bbd946 Mon Sep 17 00:00:00 2001
From: Pavel Shilovsky <redacted> Date: Tue, 29 Nov 2016 16:14:43 -0800 Subject: CIFS: Fix a possible memory corruption in push locks From: Pavel Shilovsky <redacted> commit e3d240e9d505fc67f8f8735836df97a794bbd946 upstream. If maxBuf is not 0 but less than a size of SMB2 lock structure we can end up with a memory corruption. Signed-off-by: Pavel Shilovsky <redacted> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> --- fs/cifs/smb2file.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
--- a/fs/cifs/smb2file.c
+++ b/fs/cifs/smb2file.c@@ -260,7 +260,7 @@ smb2_push_mandatory_locks(struct cifsFil * and check it for zero before using. */ max_buf = tlink_tcon(cfile->tlink)->ses->server->maxBuf; - if (!max_buf) { + if (max_buf < sizeof(struct smb2_lock_element)) { free_xid(xid); return -EINVAL; }
Patches currently in stable-queue which might be from pshilov@microsoft.com are queue-4.4/cifs-fix-missing-nls-unload-in-smb2_reconnect.patch queue-4.4/cifs-fix-a-possible-memory-corruption-in-push-locks.patch queue-4.4/cifs-fix-a-possible-memory-corruption-during-reconnect.patch