diff options
author | Sanchit Garg <sancgarg@linux.vnet.ibm.com> | 2010-10-27 09:41:01 +0530 |
---|---|---|
committer | Eric Van Hensbergen <ericvh@gmail.com> | 2010-10-28 09:08:49 -0500 |
commit | f6ac55b6c156cebf750376dc08e06ffdade82717 (patch) | |
tree | fd173ac547ec84f90b56cf6d8a90f737b4b2748f /net/9p/client.c | |
parent | b165d60145b717261a0234f989c442c2b68b6ec0 (diff) | |
download | linux-f6ac55b6c156cebf750376dc08e06ffdade82717.tar.bz2 |
net/9p: Return error on read with NULL buffer
This patch ensures that a read(fd, NULL, 10) returns EFAULT on a 9p file.
Signed-off-by: Sanchit Garg <sancgarg@linux.vnet.ibm.com>
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
Diffstat (limited to 'net/9p/client.c')
-rw-r--r-- | net/9p/client.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/net/9p/client.c b/net/9p/client.c index 8df80fb86f23..a848bca9fbff 100644 --- a/net/9p/client.c +++ b/net/9p/client.c @@ -1286,16 +1286,13 @@ p9_client_read(struct p9_fid *fid, char *data, char __user *udata, u64 offset, if (data) { memmove(data, dataptr, count); - } - - if (udata) { + } else { err = copy_to_user(udata, dataptr, count); if (err) { err = -EFAULT; goto free_and_error; } } - p9_free_req(clnt, req); return count; |