[PATCH 18/18] LSM: Don't ignore initialization failures

From: Kees Cook
Date: Sat Sep 15 2018 - 20:39:00 EST


LSM initialization failures have traditionally been ignored. We should
at least WARN when something goes wrong.

Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>
---
security/security.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/security/security.c b/security/security.c
index 3b84b7eeb08c..a7796e522f72 100644
--- a/security/security.c
+++ b/security/security.c
@@ -203,11 +203,15 @@ static void __init maybe_enable_lsm(struct lsm_info *lsm)

/* If selected, initialize the LSM. */
if (enabled) {
+ int ret;
+
if (lsm->type == LSM_TYPE_EXCLUSIVE) {
exclusive = lsm;
init_debug("exclusive: %s\n", exclusive->name);
}
- lsm->init();
+
+ ret = lsm->init();
+ WARN(ret, "%s failed to initialize: %d\n", lsm->name, ret);
}
}

--
2.17.1