提交 eec11535 编写于 作者: D Dan Carpenter 提交者: Al Viro

hfs: fix hfs_readdir()

I was looking through static analysis warnings and there is a bug here
that goes all the way back to the start of git.  Basically we're copying
the pointer and nearby garbage instead of the data the fd.key pointer is
pointing to.
Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com>
Reviewed-by: NVyacheslav Dubeyko <slava@dubeyko.com>
Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
上级 b8826e50
...@@ -169,7 +169,7 @@ static int hfs_readdir(struct file *file, struct dir_context *ctx) ...@@ -169,7 +169,7 @@ static int hfs_readdir(struct file *file, struct dir_context *ctx)
* Can be done after the list insertion; exclusion with * Can be done after the list insertion; exclusion with
* hfs_delete_cat() is provided by directory lock. * hfs_delete_cat() is provided by directory lock.
*/ */
memcpy(&rd->key, &fd.key, sizeof(struct hfs_cat_key)); memcpy(&rd->key, &fd.key->cat, sizeof(struct hfs_cat_key));
out: out:
hfs_find_exit(&fd); hfs_find_exit(&fd);
return err; return err;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册