mirror of
https://github.com/followmsi/android_kernel_google_msm.git
synced 2024-11-06 23:17:41 +00:00
autofs4: check dev ioctl size before allocating
commit e53d77eb8b
upstream.
There wasn't any check of the size passed from userspace before trying
to allocate the memory required.
This meant that userspace might request more space than allowed,
triggering an OOM.
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
Signed-off-by: Ian Kent <raven@themaw.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
[lizf: Backported to 3.4: adjust context]
Signed-off-by: Zefan Li <lizefan@huawei.com>
This commit is contained in:
parent
4dd86a6aea
commit
a5822a0847
1 changed files with 3 additions and 0 deletions
|
@ -103,6 +103,9 @@ static struct autofs_dev_ioctl *copy_dev_ioctl(struct autofs_dev_ioctl __user *i
|
|||
if (tmp.size < sizeof(tmp))
|
||||
return ERR_PTR(-EINVAL);
|
||||
|
||||
if (tmp.size > (PATH_MAX + sizeof(tmp)))
|
||||
return ERR_PTR(-ENAMETOOLONG);
|
||||
|
||||
res = memdup_user(in, tmp.size);
|
||||
if (!IS_ERR(res))
|
||||
res->size = tmp.size;
|
||||
|
|
Loading…
Reference in a new issue