ksmbd: fix uninitialized symbol 'share' in smb2_tree_connect()
authorNamjae Jeon <linkinjeon@kernel.org>
Wed, 24 Apr 2024 07:57:01 +0000 (16:57 +0900)
committerSteve French <stfrench@microsoft.com>
Mon, 29 Apr 2024 00:36:03 +0000 (19:36 -0500)
Fix uninitialized symbol 'share' in smb2_tree_connect().

Fixes: e9d8c2f95ab8 ("ksmbd: add continuous availability share parameter")
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
Signed-off-by: Steve French <stfrench@microsoft.com>
fs/smb/server/smb2pdu.c

index 355824151c2d88194b7013c2ffeabc074fbe6b87..30229161b34680948f1cec493e63e81a121a8bab 100644 (file)
@@ -1926,7 +1926,7 @@ int smb2_tree_connect(struct ksmbd_work *work)
        struct ksmbd_session *sess = work->sess;
        char *treename = NULL, *name = NULL;
        struct ksmbd_tree_conn_status status;
-       struct ksmbd_share_config *share;
+       struct ksmbd_share_config *share = NULL;
        int rc = -EINVAL;
 
        WORK_BUFFERS(work, req, rsp);
@@ -1988,7 +1988,7 @@ int smb2_tree_connect(struct ksmbd_work *work)
        write_unlock(&sess->tree_conns_lock);
        rsp->StructureSize = cpu_to_le16(16);
 out_err1:
-       if (server_conf.flags & KSMBD_GLOBAL_FLAG_DURABLE_HANDLE &&
+       if (server_conf.flags & KSMBD_GLOBAL_FLAG_DURABLE_HANDLE && share &&
            test_share_config_flag(share,
                                   KSMBD_SHARE_FLAG_CONTINUOUS_AVAILABILITY))
                rsp->Capabilities = SMB2_SHARE_CAP_CONTINUOUS_AVAILABILITY;