diff options
author | Alan Cox <alan@lxorguk.ukuu.org.uk> | 2008-02-08 07:18:45 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2008-02-08 12:22:25 -0500 |
commit | 4129a6454dd925560bf3f46a12eb9f01cf8d5e7e (patch) | |
tree | 1bbd53a877bdfda744697c09ab44ec8db0420edf | |
parent | 6df3526b6649e57a414ba6b4179655341affcf46 (diff) |
rocket: don't let random users reset the controller
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | drivers/char/rocket.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/char/rocket.c b/drivers/char/rocket.c index cbee71bab017..72f289279d8f 100644 --- a/drivers/char/rocket.c +++ b/drivers/char/rocket.c | |||
@@ -1399,6 +1399,9 @@ static int reset_rm2(struct r_port *info, void __user *arg) | |||
1399 | { | 1399 | { |
1400 | int reset; | 1400 | int reset; |
1401 | 1401 | ||
1402 | if (!capable(CAP_SYS_ADMIN)) | ||
1403 | return -EPERM; | ||
1404 | |||
1402 | if (copy_from_user(&reset, arg, sizeof (int))) | 1405 | if (copy_from_user(&reset, arg, sizeof (int))) |
1403 | return -EFAULT; | 1406 | return -EFAULT; |
1404 | if (reset) | 1407 | if (reset) |