diff options
Diffstat (limited to 'kernel/capability.c')
| -rw-r--r-- | kernel/capability.c | 29 |
1 files changed, 10 insertions, 19 deletions
diff --git a/kernel/capability.c b/kernel/capability.c index 34019c57888d..a8d63df0c322 100644 --- a/kernel/capability.c +++ b/kernel/capability.c | |||
| @@ -7,6 +7,8 @@ | |||
| 7 | * 30 May 2002: Cleanup, Robert M. Love <rml@tech9.net> | 7 | * 30 May 2002: Cleanup, Robert M. Love <rml@tech9.net> |
| 8 | */ | 8 | */ |
| 9 | 9 | ||
| 10 | #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt | ||
| 11 | |||
| 10 | #include <linux/audit.h> | 12 | #include <linux/audit.h> |
| 11 | #include <linux/capability.h> | 13 | #include <linux/capability.h> |
| 12 | #include <linux/mm.h> | 14 | #include <linux/mm.h> |
| @@ -42,15 +44,10 @@ __setup("no_file_caps", file_caps_disable); | |||
| 42 | 44 | ||
| 43 | static void warn_legacy_capability_use(void) | 45 | static void warn_legacy_capability_use(void) |
| 44 | { | 46 | { |
| 45 | static int warned; | 47 | char name[sizeof(current->comm)]; |
| 46 | if (!warned) { | 48 | |
| 47 | char name[sizeof(current->comm)]; | 49 | pr_info_once("warning: `%s' uses 32-bit capabilities (legacy support in use)\n", |
| 48 | 50 | get_task_comm(name, current)); | |
| 49 | printk(KERN_INFO "warning: `%s' uses 32-bit capabilities" | ||
| 50 | " (legacy support in use)\n", | ||
| 51 | get_task_comm(name, current)); | ||
| 52 | warned = 1; | ||
| 53 | } | ||
| 54 | } | 51 | } |
| 55 | 52 | ||
| 56 | /* | 53 | /* |
| @@ -71,16 +68,10 @@ static void warn_legacy_capability_use(void) | |||
| 71 | 68 | ||
| 72 | static void warn_deprecated_v2(void) | 69 | static void warn_deprecated_v2(void) |
| 73 | { | 70 | { |
| 74 | static int warned; | 71 | char name[sizeof(current->comm)]; |
| 75 | 72 | ||
| 76 | if (!warned) { | 73 | pr_info_once("warning: `%s' uses deprecated v2 capabilities in a way that may be insecure\n", |
| 77 | char name[sizeof(current->comm)]; | 74 | get_task_comm(name, current)); |
| 78 | |||
| 79 | printk(KERN_INFO "warning: `%s' uses deprecated v2" | ||
| 80 | " capabilities in a way that may be insecure.\n", | ||
| 81 | get_task_comm(name, current)); | ||
| 82 | warned = 1; | ||
| 83 | } | ||
| 84 | } | 75 | } |
| 85 | 76 | ||
| 86 | /* | 77 | /* |
| @@ -380,7 +371,7 @@ bool has_capability_noaudit(struct task_struct *t, int cap) | |||
| 380 | bool ns_capable(struct user_namespace *ns, int cap) | 371 | bool ns_capable(struct user_namespace *ns, int cap) |
| 381 | { | 372 | { |
| 382 | if (unlikely(!cap_valid(cap))) { | 373 | if (unlikely(!cap_valid(cap))) { |
| 383 | printk(KERN_CRIT "capable() called with invalid cap=%u\n", cap); | 374 | pr_crit("capable() called with invalid cap=%u\n", cap); |
| 384 | BUG(); | 375 | BUG(); |
| 385 | } | 376 | } |
| 386 | 377 | ||
