summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNamjae Jeon <linkinjeon@kernel.org>2023-05-12 17:05:41 +0900
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-06-28 11:14:24 +0200
commitc526418bc005193fd96d94fba12b0f892f0318f3 (patch)
tree15b71d301962332de7ee916f5c6d604e22e8f6ee
parent20cb9d47f0bc13fe9b9ba4e711305c1978bb1c2b (diff)
ksmbd: fix uninitialized pointer read in ksmbd_vfs_rename()
commit 48b47f0caaa8a9f05ed803cb4f335fa3a7bfc622 upstream. Uninitialized rd.delegated_inode can be used in vfs_rename(). Fix this by setting rd.delegated_inode to NULL to avoid the uninitialized read. Fixes: 74d7970febf7 ("ksmbd: fix racy issue from using ->d_parent and ->d_name") Reported-by: Coverity Scan <scan-admin@coverity.com> Signed-off-by: Namjae Jeon <linkinjeon@kernel.org> Signed-off-by: Steve French <stfrench@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--fs/ksmbd/vfs.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/ksmbd/vfs.c b/fs/ksmbd/vfs.c
index fb19deba58cd..79ca55dc9ba0 100644
--- a/fs/ksmbd/vfs.c
+++ b/fs/ksmbd/vfs.c
@@ -769,6 +769,7 @@ retry:
rd.new_dir = new_path.dentry->d_inode,
rd.new_dentry = new_dentry,
rd.flags = flags,
+ rd.delegated_inode = NULL,
err = vfs_rename(&rd);
if (err)
ksmbd_debug(VFS, "vfs_rename failed err %d\n", err);