summaryrefslogtreecommitdiffstats
path: root/kernel/include/linux/integrity.h
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/include/linux/integrity.h')
-rw-r--r--kernel/include/linux/integrity.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/kernel/include/linux/integrity.h b/kernel/include/linux/integrity.h
new file mode 100644
index 000000000..c2d6082a1
--- /dev/null
+++ b/kernel/include/linux/integrity.h
@@ -0,0 +1,46 @@
+/*
+ * Copyright (C) 2009 IBM Corporation
+ * Author: Mimi Zohar <zohar@us.ibm.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, version 2 of the License.
+ */
+
+#ifndef _LINUX_INTEGRITY_H
+#define _LINUX_INTEGRITY_H
+
+#include <linux/fs.h>
+
+enum integrity_status {
+ INTEGRITY_PASS = 0,
+ INTEGRITY_FAIL,
+ INTEGRITY_NOLABEL,
+ INTEGRITY_NOXATTRS,
+ INTEGRITY_UNKNOWN,
+};
+
+/* List of EVM protected security xattrs */
+#ifdef CONFIG_INTEGRITY
+extern struct integrity_iint_cache *integrity_inode_get(struct inode *inode);
+extern void integrity_inode_free(struct inode *inode);
+extern void __init integrity_load_keys(void);
+
+#else
+static inline struct integrity_iint_cache *
+ integrity_inode_get(struct inode *inode)
+{
+ return NULL;
+}
+
+static inline void integrity_inode_free(struct inode *inode)
+{
+ return;
+}
+
+static inline void integrity_load_keys(void)
+{
+}
+#endif /* CONFIG_INTEGRITY */
+
+#endif /* _LINUX_INTEGRITY_H */