sys_prctl(): arg2 is unsigned long which is never < 0

arg2 will never < 0, for its type is 'unsigned long'

Also, use the provided macros.

Signed-off-by: Chen Gang <gang.chen@asianux.com>
Reported-by: Cyrill Gorcunov <gorcunov@openvz.org>
Acked-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Chen Gang 2013-02-21 16:43:06 -08:00 committed by Linus Torvalds
parent 242260fb85
commit 7fe5e04292
1 changed files with 3 additions and 1 deletions

View File

@ -47,6 +47,7 @@
#include <linux/syscalls.h> #include <linux/syscalls.h>
#include <linux/kprobes.h> #include <linux/kprobes.h>
#include <linux/user_namespace.h> #include <linux/user_namespace.h>
#include <linux/binfmts.h>
#include <linux/kmsg_dump.h> #include <linux/kmsg_dump.h>
/* Move somewhere else to avoid recompiling? */ /* Move somewhere else to avoid recompiling? */
@ -2026,7 +2027,8 @@ SYSCALL_DEFINE5(prctl, int, option, unsigned long, arg2, unsigned long, arg3,
error = get_dumpable(me->mm); error = get_dumpable(me->mm);
break; break;
case PR_SET_DUMPABLE: case PR_SET_DUMPABLE:
if (arg2 < 0 || arg2 > 1) { if (arg2 != SUID_DUMP_DISABLE &&
arg2 != SUID_DUMP_USER) {
error = -EINVAL; error = -EINVAL;
break; break;
} }