summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAurélien Aptel <aaptel@suse.com>2017-10-11 14:23:36 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-11-02 11:54:47 +0300
commit64cc7af317f0bbe38def90b6798d75b6f14293ff (patch)
tree0f10be05824f9f408d7e69d719568956c2e869fc
parentb232aad2d75146a6fa104b23475a0a16f8d72301 (diff)
downloadlinux-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>
-rw-r--r--fs/cifs/smb2pdu.c4
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;