capabilities/syslog: open code cap_syslog logic to fix build failure

The addition of CONFIG_SECURITY_DMESG_RESTRICT resulted in a build
failure when CONFIG_PRINTK=n.  This is because the capabilities code
which used the new option was built even though the variable in question
didn't exist.

The patch here fixes this by moving the capabilities checks out of the
LSM and into the caller.  All (known) LSMs should have been calling the
capabilities hook already so it actually makes the code organization
better to eliminate the hook altogether.

Signed-off-by: Eric Paris <eparis@redhat.com>
Acked-by: James Morris <jmorris@namei.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Eric Paris 2010-11-15 18:36:29 -05:00 committed by Linus Torvalds
parent 6800e4c0ea
commit 12b3052c3e
7 changed files with 28 additions and 40 deletions

View file

@ -17,6 +17,11 @@ static int cap_sysctl(ctl_table *table, int op)
return 0;
}
static int cap_syslog(int type)
{
return 0;
}
static int cap_quotactl(int cmds, int type, int id, struct super_block *sb)
{
return 0;