diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2016-08-20 16:33:10 -0400 |
---|---|---|
committer | Sasha Levin <alexander.levin@verizon.com> | 2016-10-02 21:13:45 -0400 |
commit | da879e36261ba8ed9e9b361d1ded01182ced0d16 (patch) | |
tree | 2aadbc300c9c05c0974597579bae4258d57256f1 | |
parent | c6f5ace3fab439067b0a7ec92d16e85f0d9b68a0 (diff) | |
download | lwn-da879e36261ba8ed9e9b361d1ded01182ced0d16.tar.gz lwn-da879e36261ba8ed9e9b361d1ded01182ced0d16.zip |
mn10300: copy_from_user() should zero on access_ok() failure...
[ Upstream commit ae7cc577ec2a4a6151c9e928fd1f595d953ecef1 ]
Cc: stable@vger.kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
-rw-r--r-- | arch/mn10300/lib/usercopy.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/mn10300/lib/usercopy.c b/arch/mn10300/lib/usercopy.c index 7826e6c364e7..ce8899e5e171 100644 --- a/arch/mn10300/lib/usercopy.c +++ b/arch/mn10300/lib/usercopy.c @@ -9,7 +9,7 @@ * as published by the Free Software Foundation; either version * 2 of the Licence, or (at your option) any later version. */ -#include <asm/uaccess.h> +#include <linux/uaccess.h> unsigned long __generic_copy_to_user(void *to, const void *from, unsigned long n) @@ -24,6 +24,8 @@ __generic_copy_from_user(void *to, const void *from, unsigned long n) { if (access_ok(VERIFY_READ, from, n)) __copy_user_zeroing(to, from, n); + else + memset(to, 0, n); return n; } |