Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 169167
b: refs/heads/master
c: 6e65f92
h: refs/heads/master
i:
  169165: 08c5ed9
  169163: 9f28bc5
  169159: 7a839e3
  169151: 45e5d50
v: v3
  • Loading branch information
John Johansen authored and James Morris committed Nov 8, 2009
1 parent fb10d36 commit 41e53aa
Show file tree
Hide file tree
Showing 3 changed files with 39 additions and 4 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 0e1a6ef2dea88101b056b6d9984f3325c5efced3
refs/heads/master: 6e65f92ff0d6f18580737321718d09035085a3fb
32 changes: 32 additions & 0 deletions trunk/security/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -152,5 +152,37 @@ source security/tomoyo/Kconfig

source security/integrity/ima/Kconfig

choice
prompt "Default security module"
default DEFAULT_SECURITY_SELINUX if SECURITY_SELINUX
default DEFAULT_SECURITY_SMACK if SECURITY_SMACK
default DEFAULT_SECURITY_TOMOYO if SECURITY_TOMOYO
default DEFAULT_SECURITY_DAC

help
Select the security module that will be used by default if the
kernel parameter security= is not specified.

config DEFAULT_SECURITY_SELINUX
bool "SELinux" if SECURITY_SELINUX=y

config DEFAULT_SECURITY_SMACK
bool "Simplified Mandatory Access Control" if SECURITY_SMACK=y

config DEFAULT_SECURITY_TOMOYO
bool "TOMOYO" if SECURITY_TOMOYO=y

config DEFAULT_SECURITY_DAC
bool "Unix Discretionary Access Controls"

endchoice

config DEFAULT_SECURITY
string
default "selinux" if DEFAULT_SECURITY_SELINUX
default "smack" if DEFAULT_SECURITY_SMACK
default "tomoyo" if DEFAULT_SECURITY_TOMOYO
default "" if DEFAULT_SECURITY_DAC

endmenu

9 changes: 6 additions & 3 deletions trunk/security/security.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,8 @@
#include <linux/ima.h>

/* Boot-time LSM user choice */
static __initdata char chosen_lsm[SECURITY_NAME_MAX + 1];
static __initdata char chosen_lsm[SECURITY_NAME_MAX + 1] =
CONFIG_DEFAULT_SECURITY;

/* things that live in capability.c */
extern struct security_operations default_security_ops;
Expand Down Expand Up @@ -80,8 +81,10 @@ __setup("security=", choose_lsm);
*
* Return true if:
* -The passed LSM is the one chosen by user at boot time,
* -or user didn't specify a specific LSM and we're the first to ask
* for registration permission,
* -or the passed LSM is configured as the default and the user did not
* choose an alternate LSM at boot time,
* -or there is no default LSM set and the user didn't specify a
* specific LSM and we're the first to ask for registration permission,
* -or the passed LSM is currently loaded.
* Otherwise, return false.
*/
Expand Down

0 comments on commit 41e53aa

Please sign in to comment.