Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d6aed64b authored by Kees Cook's avatar Kees Cook
Browse files

Yama: Initialize as ordered LSM



This converts Yama from being a direct "minor" LSM into an ordered LSM.

Signed-off-by: default avatarKees Cook <keescook@chromium.org>
Reviewed-by: default avatarCasey Schaufler <casey@schaufler-ca.com>
parent 70b62c25
Loading
Loading
Loading
Loading
+0 −5
Original line number Diff line number Diff line
@@ -2090,10 +2090,5 @@ static inline void security_delete_hooks(struct security_hook_list *hooks,
#endif /* CONFIG_SECURITY_WRITABLE_HOOKS */

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 */
+1 −1
Original line number Diff line number Diff line
@@ -241,7 +241,7 @@ source "security/integrity/Kconfig"

config LSM
	string "Ordered list of enabled LSMs"
	default "loadpin,integrity,selinux,smack,tomoyo,apparmor"
	default "yama,loadpin,integrity,selinux,smack,tomoyo,apparmor"
	help
	  A comma-separated list of LSMs, in initialization order.
	  Any LSMs left off this list will be ignored. This can be
+0 −1
Original line number Diff line number Diff line
@@ -274,7 +274,6 @@ int __init security_init(void)
	 * Load minor LSMs, with the capability module always first.
	 */
	capability_add_hooks();
	yama_add_hooks();

	/* Load LSMs in specified order. */
	ordered_lsm_init();
+7 −1
Original line number Diff line number Diff line
@@ -477,9 +477,15 @@ static void __init yama_init_sysctl(void)
static inline void yama_init_sysctl(void) { }
#endif /* CONFIG_SYSCTL */

void __init yama_add_hooks(void)
static int __init yama_init(void)
{
	pr_info("Yama: becoming mindful.\n");
	security_add_hooks(yama_hooks, ARRAY_SIZE(yama_hooks), "yama");
	yama_init_sysctl();
	return 0;
}

DEFINE_LSM(yama) = {
	.name = "yama",
	.init = yama_init,
};