summaryrefslogtreecommitdiffstats
path: root/security/ipe/policy.h
diff options
context:
space:
mode:
authorDeven Bowers <deven.desai@linux.microsoft.com>2024-08-03 08:08:22 +0200
committerPaul Moore <paul@paul-moore.com>2024-08-20 20:02:15 +0200
commit2261306f4a3cea362fc40285e750a801dc0cfbe3 (patch)
tree2a8a5f55a2b0b03c274662dcabadfe98b634e690 /security/ipe/policy.h
parentlsm: add new securityfs delete function (diff)
downloadlinux-2261306f4a3cea362fc40285e750a801dc0cfbe3.tar.xz
linux-2261306f4a3cea362fc40285e750a801dc0cfbe3.zip
ipe: add userspace interface
As is typical with LSMs, IPE uses securityfs as its interface with userspace. for a complete list of the interfaces and the respective inputs/outputs, please see the documentation under admin-guide/LSM/ipe.rst Signed-off-by: Deven Bowers <deven.desai@linux.microsoft.com> Signed-off-by: Fan Wu <wufan@linux.microsoft.com> Signed-off-by: Paul Moore <paul@paul-moore.com>
Diffstat (limited to 'security/ipe/policy.h')
-rw-r--r--security/ipe/policy.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/security/ipe/policy.h b/security/ipe/policy.h
index 69ca8cdecd64..ffd60cc7fda6 100644
--- a/security/ipe/policy.h
+++ b/security/ipe/policy.h
@@ -7,6 +7,7 @@
#include <linux/list.h>
#include <linux/types.h>
+#include <linux/fs.h>
enum ipe_op_type {
IPE_OP_EXEC = 0,
@@ -76,10 +77,16 @@ struct ipe_policy {
size_t textlen;
struct ipe_parsed_policy *parsed;
+
+ struct dentry *policyfs;
};
struct ipe_policy *ipe_new_policy(const char *text, size_t textlen,
const char *pkcs7, size_t pkcs7len);
void ipe_free_policy(struct ipe_policy *pol);
+int ipe_update_policy(struct inode *root, const char *text, size_t textlen,
+ const char *pkcs7, size_t pkcs7len);
+int ipe_set_active_pol(const struct ipe_policy *p);
+extern struct mutex ipe_policy_lock;
#endif /* _IPE_POLICY_H */