diff options
| author | Haoxiang Li <haoxiang_li2024@163.com> | 2025-02-17 15:20:38 +0800 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-02-27 04:30:23 -0800 |
| commit | a9b0b4b29877cb4dc5d0842b59b5ccbacddb85bd (patch) | |
| tree | c6f76c5a13d2cf40f97eea8afb0e2e778d9c6365 /fs | |
| parent | ada54b2e81ebb780ad28687ef91af46d016a3fb7 (diff) | |
| download | linux-a9b0b4b29877cb4dc5d0842b59b5ccbacddb85bd.tar.gz linux-a9b0b4b29877cb4dc5d0842b59b5ccbacddb85bd.tar.bz2 linux-a9b0b4b29877cb4dc5d0842b59b5ccbacddb85bd.zip | |
smb: client: Add check for next_buffer in receive_encrypted_standard()
commit 860ca5e50f73c2a1cef7eefc9d39d04e275417f7 upstream.
Add check for the return value of cifs_buf_get() and cifs_small_buf_get()
in receive_encrypted_standard() to prevent null pointer dereference.
Fixes: eec04ea11969 ("smb: client: fix OOB in receive_encrypted_standard()")
Cc: stable@vger.kernel.org
Signed-off-by: Haoxiang Li <haoxiang_li2024@163.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'fs')
| -rw-r--r-- | fs/smb/client/smb2ops.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/smb/client/smb2ops.c b/fs/smb/client/smb2ops.c index 44952727fef9..e8da63d29a28 100644 --- a/fs/smb/client/smb2ops.c +++ b/fs/smb/client/smb2ops.c @@ -4991,6 +4991,10 @@ one_more: next_buffer = (char *)cifs_buf_get(); else next_buffer = (char *)cifs_small_buf_get(); + if (!next_buffer) { + cifs_server_dbg(VFS, "No memory for (large) SMB response\n"); + return -1; + } memcpy(next_buffer, buf + next_cmd, pdu_length - next_cmd); } |
