# \[PATCH v38 31/39\] LSM: Add a function to report multiple LSMs

- From: Casey Schaufler \<casey@schaufler-ca.com\>
- Date: 2022-09-27 20:12:01 
- List: linux-security-module
- Page: https://ratatoskr.run/linux-security-module/2022/09/1948780
- Thread: https://ratatoskr.run/linux-security-module/2022/09/1948737/t.md

```text
Add a new boolean function lsm_multiple_contexts() to
identify when multiple security modules provide security
context strings.

Signed-off-by: Casey Schaufler <casey@schaufler-ca.com>
Acked-by: Paul Moore <paul@paul-moore.com>
Reviewed-by: John Johansen <john.johansen@canonical.com>
---
 include/linux/security.h | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/include/linux/security.h b/include/linux/security.h
index 170b303e9122..c190b9189287 100644
--- a/include/linux/security.h
+++ b/include/linux/security.h
@@ -262,6 +262,15 @@ static inline const char *lsm_slot_to_name(int slot)
 }
 #endif
 
+static inline bool lsm_multiple_contexts(void)
+{
+#ifdef CONFIG_SECURITY
+	return lsm_slot_to_name(1) != NULL;
+#else
+	return false;
+#endif
+}
+
 /**
  * lsmblob_value - find the first non-zero value in an lsmblob structure.
  * @blob: Pointer to the data
-- 
2.37.3

```
