From e5bc209596221a32b2d4f161545f7f097798ff56 Mon Sep 17 00:00:00 2001 From: Eric Paris Date: Wed, 29 Oct 2008 15:42:12 +1100 Subject: [PATCH] --- yaml --- r: 120653 b: refs/heads/master c: 637d32dc720897616e8a1a4f9e9609e29d431800 h: refs/heads/master i: 120651: f19ddaa7f9cca1bdf5211eb490e408b41578f254 v: v3 --- [refs] | 2 +- trunk/kernel/capability.c | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index fd47caf933b0..b5f716a9372d 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e68b75a027bb94066576139ee33676264f867b87 +refs/heads/master: 637d32dc720897616e8a1a4f9e9609e29d431800 diff --git a/trunk/kernel/capability.c b/trunk/kernel/capability.c index 19f9eda89975..adb262f83de1 100644 --- a/trunk/kernel/capability.c +++ b/trunk/kernel/capability.c @@ -514,6 +514,11 @@ asmlinkage long sys_capset(cap_user_header_t header, const cap_user_data_t data) */ int capable(int cap) { + if (unlikely(!cap_valid(cap))) { + printk(KERN_CRIT "capable() called with invalid cap=%u\n", cap); + BUG(); + } + if (has_capability(current, cap)) { current->flags |= PF_SUPERPRIV; return 1;