Yama: Initialize as ordered LSM
This converts Yama from being a direct "minor" LSM into an ordered LSM. Signed-off-by: Kees Cook <keescook@chromium.org> Reviewed-by: Casey Schaufler <casey@schaufler-ca.com>
This commit is contained in:
parent
70b62c2566
commit
d6aed64b74
|
@ -2090,10 +2090,5 @@ static inline void security_delete_hooks(struct security_hook_list *hooks,
|
||||||
#endif /* CONFIG_SECURITY_WRITABLE_HOOKS */
|
#endif /* CONFIG_SECURITY_WRITABLE_HOOKS */
|
||||||
|
|
||||||
extern void __init capability_add_hooks(void);
|
extern void __init capability_add_hooks(void);
|
||||||
#ifdef CONFIG_SECURITY_YAMA
|
|
||||||
extern void __init yama_add_hooks(void);
|
|
||||||
#else
|
|
||||||
static inline void __init yama_add_hooks(void) { }
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* ! __LINUX_LSM_HOOKS_H */
|
#endif /* ! __LINUX_LSM_HOOKS_H */
|
||||||
|
|
|
@ -241,7 +241,7 @@ source "security/integrity/Kconfig"
|
||||||
|
|
||||||
config LSM
|
config LSM
|
||||||
string "Ordered list of enabled LSMs"
|
string "Ordered list of enabled LSMs"
|
||||||
default "loadpin,integrity,selinux,smack,tomoyo,apparmor"
|
default "yama,loadpin,integrity,selinux,smack,tomoyo,apparmor"
|
||||||
help
|
help
|
||||||
A comma-separated list of LSMs, in initialization order.
|
A comma-separated list of LSMs, in initialization order.
|
||||||
Any LSMs left off this list will be ignored. This can be
|
Any LSMs left off this list will be ignored. This can be
|
||||||
|
|
|
@ -274,7 +274,6 @@ int __init security_init(void)
|
||||||
* Load minor LSMs, with the capability module always first.
|
* Load minor LSMs, with the capability module always first.
|
||||||
*/
|
*/
|
||||||
capability_add_hooks();
|
capability_add_hooks();
|
||||||
yama_add_hooks();
|
|
||||||
|
|
||||||
/* Load LSMs in specified order. */
|
/* Load LSMs in specified order. */
|
||||||
ordered_lsm_init();
|
ordered_lsm_init();
|
||||||
|
|
|
@ -477,9 +477,15 @@ static void __init yama_init_sysctl(void)
|
||||||
static inline void yama_init_sysctl(void) { }
|
static inline void yama_init_sysctl(void) { }
|
||||||
#endif /* CONFIG_SYSCTL */
|
#endif /* CONFIG_SYSCTL */
|
||||||
|
|
||||||
void __init yama_add_hooks(void)
|
static int __init yama_init(void)
|
||||||
{
|
{
|
||||||
pr_info("Yama: becoming mindful.\n");
|
pr_info("Yama: becoming mindful.\n");
|
||||||
security_add_hooks(yama_hooks, ARRAY_SIZE(yama_hooks), "yama");
|
security_add_hooks(yama_hooks, ARRAY_SIZE(yama_hooks), "yama");
|
||||||
yama_init_sysctl();
|
yama_init_sysctl();
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DEFINE_LSM(yama) = {
|
||||||
|
.name = "yama",
|
||||||
|
.init = yama_init,
|
||||||
|
};
|
||||||
|
|
Loading…
Reference in New Issue