Commit 0710d36a authored by Florin Malita's avatar Florin Malita Committed by Linus Torvalds

[PATCH] 9pfs: missing result check in v9fs_vfs_readlink() and v9fs_vfs_link()

__getname() may fail and return NULL (as pointed out by Coverity 437 &
1220).
Signed-off-by: default avatarFlorin Malita <fmalita@gmail.com>
Acked-by: default avatarEric Van Hensbergen <ericvh@gmail.com>
Cc: <rminnich@lanl.gov>
Cc: Latchesar Ionkov <lucho@ionkov.net>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent eab03ac7
...@@ -1054,6 +1054,9 @@ static int v9fs_vfs_readlink(struct dentry *dentry, char __user * buffer, ...@@ -1054,6 +1054,9 @@ static int v9fs_vfs_readlink(struct dentry *dentry, char __user * buffer,
int ret; int ret;
char *link = __getname(); char *link = __getname();
if (unlikely(!link))
return -ENOMEM;
if (buflen > PATH_MAX) if (buflen > PATH_MAX)
buflen = PATH_MAX; buflen = PATH_MAX;
...@@ -1227,6 +1230,9 @@ v9fs_vfs_link(struct dentry *old_dentry, struct inode *dir, ...@@ -1227,6 +1230,9 @@ v9fs_vfs_link(struct dentry *old_dentry, struct inode *dir,
} }
name = __getname(); name = __getname();
if (unlikely(!name))
return -ENOMEM;
sprintf(name, "%d\n", oldfid->fid); sprintf(name, "%d\n", oldfid->fid);
retval = v9fs_vfs_mkspecial(dir, dentry, V9FS_DMLINK, name); retval = v9fs_vfs_mkspecial(dir, dentry, V9FS_DMLINK, name);
__putname(name); __putname(name);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment