diff options
author | Aurélien Aptel <aaptel@suse.com> | 2017-10-11 14:23:36 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-11-02 11:54:47 +0300 |
commit | 64cc7af317f0bbe38def90b6798d75b6f14293ff (patch) | |
tree | 0f10be05824f9f408d7e69d719568956c2e869fc /fs | |
parent | b232aad2d75146a6fa104b23475a0a16f8d72301 (diff) | |
download | linux-64cc7af317f0bbe38def90b6798d75b6f14293ff.tar.xz |
CIFS: Fix NULL pointer deref on SMB2_tcon() failure
commit db3b5474f462e77b82ca1e27627f03c47b622c99 upstream.
If SendReceive2() fails rsp is set to NULL but is dereferenced in the
error handling code.
Signed-off-by: Aurelien Aptel <aaptel@suse.com>
Reviewed-by: Pavel Shilovsky <pshilov@microsoft.com>
Signed-off-by: Steve French <smfrench@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/cifs/smb2pdu.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/cifs/smb2pdu.c b/fs/cifs/smb2pdu.c index ddc633ef6064..8c17020d44a9 100644 --- a/fs/cifs/smb2pdu.c +++ b/fs/cifs/smb2pdu.c @@ -1243,7 +1243,7 @@ SMB2_tcon(const unsigned int xid, struct cifs_ses *ses, const char *tree, struct smb2_tree_connect_req *req; struct smb2_tree_connect_rsp *rsp = NULL; struct kvec iov[2]; - struct kvec rsp_iov; + struct kvec rsp_iov = { NULL, 0 }; int rc = 0; int resp_buftype; int unc_path_len; @@ -1360,7 +1360,7 @@ tcon_exit: return rc; tcon_error_exit: - if (rsp->hdr.sync_hdr.Status == STATUS_BAD_NETWORK_NAME) { + if (rsp && rsp->hdr.sync_hdr.Status == STATUS_BAD_NETWORK_NAME) { cifs_dbg(VFS, "BAD_NETWORK_NAME: %s\n", tree); } goto tcon_exit; |