summaryrefslogtreecommitdiff
path: root/src/anoninode
diff options
context:
space:
mode:
authorDominick Grift <dominick.grift@defensec.nl>2023-08-20 15:44:41 +0200
committerDominick Grift <dominick.grift@defensec.nl>2023-08-20 15:46:23 +0200
commit0c187b6ff97f91c41dab65a6426dc61f77305cdf (patch)
tree1e35f5851154500a8a39428a45a5671f9488e1da /src/anoninode
downloadselinux-policy-0c187b6ff97f91c41dab65a6426dc61f77305cdf.tar.gz
Import dssp5
Signed-off-by: Dominick Grift <dominick.grift@defensec.nl>
Diffstat (limited to 'src/anoninode')
-rw-r--r--src/anoninode/iouringanoninode.cil44
-rw-r--r--src/anoninode/perfeventanoninode.cil41
-rw-r--r--src/anoninode/secretmemanoninode.cil41
-rw-r--r--src/anoninode/uffdanoninode.cil41
4 files changed, 167 insertions, 0 deletions
diff --git a/src/anoninode/iouringanoninode.cil b/src/anoninode/iouringanoninode.cil
new file mode 100644
index 0000000..1477ff0
--- /dev/null
+++ b/src/anoninode/iouringanoninode.cil
@@ -0,0 +1,44 @@
+;; SPDX-FileCopyrightText: © 2023 Dominick Grift <dominick.grift@defensec.nl>
+;; SPDX-License-Identifier: Unlicense
+
+(block iouring
+
+ (blockinherit anon_inode.template)
+
+ (block anon_inode
+
+ (macro type ((type ARG1))
+ (typeattributeset typeattr ARG1))
+
+ (typeattribute typeattr)
+
+ (blockinherit .anon_inode.all_macro_template_anon_inodes)
+
+ (call .anon_inode.type (typeattr))
+
+ (block base_template
+
+ (blockabstract base_template)
+
+ (blockinherit .anon_inode.base_template)
+
+ (call .iouring.anon_inode.type (anon_inode)))
+
+ (block template
+
+ (macro map_anon_inode_anon_inodes ((type ARG1))
+ (allow ARG1 anon_inode (anon_inode (map))))
+
+ (macro self_type_transition_anon_inode ((type ARG1))
+ (call self_type_transition
+ (ARG1 anon_inode "[io_uring]")))
+
+ (blockabstract template)
+
+ (blockinherit .anon_inode.macro_template_anon_inodes)
+
+ (blockinherit .iouring.anon_inode.base_template))))
+
+(in anon_inode.unconfined
+
+ (call .iouring.self_type_transition_anon_inode (typeattr)))
diff --git a/src/anoninode/perfeventanoninode.cil b/src/anoninode/perfeventanoninode.cil
new file mode 100644
index 0000000..926d0dc
--- /dev/null
+++ b/src/anoninode/perfeventanoninode.cil
@@ -0,0 +1,41 @@
+;; SPDX-FileCopyrightText: © 2023 Dominick Grift <dominick.grift@defensec.nl>
+;; SPDX-License-Identifier: Unlicense
+
+(block perfevent
+
+ (blockinherit anon_inode.template)
+
+ (block anon_inode
+
+ (macro type ((type ARG1))
+ (typeattributeset typeattr ARG1))
+
+ (typeattribute typeattr)
+
+ (blockinherit .anon_inode.all_macro_template_anon_inodes)
+
+ (call .anon_inode.type (typeattr))
+
+ (block base_template
+
+ (blockabstract base_template)
+
+ (blockinherit .anon_inode.base_template)
+
+ (call .perfevent.anon_inode.type (anon_inode)))
+
+ (block template
+
+ (macro self_type_transition_anon_inode ((type ARG1))
+ (call self_type_transition
+ (ARG1 anon_inode "[perf_event]")))
+
+ (blockabstract template)
+
+ (blockinherit .anon_inode.macro_template_anon_inodes)
+
+ (blockinherit .perfevent.anon_inode.base_template))))
+
+(in anon_inode.unconfined
+
+ (call .perfevent.self_type_transition_anon_inode (typeattr)))
diff --git a/src/anoninode/secretmemanoninode.cil b/src/anoninode/secretmemanoninode.cil
new file mode 100644
index 0000000..57b45bf
--- /dev/null
+++ b/src/anoninode/secretmemanoninode.cil
@@ -0,0 +1,41 @@
+;; SPDX-FileCopyrightText: © 2023 Dominick Grift <dominick.grift@defensec.nl>
+;; SPDX-License-Identifier: Unlicense
+
+(block secretmem
+
+ (blockinherit anon_inode.template)
+
+ (block anon_inode
+
+ (macro type ((type ARG1))
+ (typeattributeset typeattr ARG1))
+
+ (typeattribute typeattr)
+
+ (blockinherit .anon_inode.all_macro_template_anon_inodes)
+
+ (call .anon_inode.type (typeattr))
+
+ (block base_template
+
+ (blockabstract base_template)
+
+ (blockinherit .anon_inode.base_template)
+
+ (call .secretmem.anon_inode.type (anon_inode)))
+
+ (block template
+
+ (macro self_type_transition_anon_inode ((type ARG1))
+ (call self_type_transition
+ (ARG1 anon_inode "[secretmem]")))
+
+ (blockabstract template)
+
+ (blockinherit .anon_inode.macro_template_anon_inodes)
+
+ (blockinherit .secretmem.anon_inode.base_template))))
+
+(in anon_inode.unconfined
+
+ (call .secretmem.self_type_transition_anon_inode (typeattr)))
diff --git a/src/anoninode/uffdanoninode.cil b/src/anoninode/uffdanoninode.cil
new file mode 100644
index 0000000..d4dffc6
--- /dev/null
+++ b/src/anoninode/uffdanoninode.cil
@@ -0,0 +1,41 @@
+;; SPDX-FileCopyrightText: © 2023 Dominick Grift <dominick.grift@defensec.nl>
+;; SPDX-License-Identifier: Unlicense
+
+(block uffd
+
+ (blockinherit anon_inode.template)
+
+ (block anon_inode
+
+ (macro type ((type ARG1))
+ (typeattributeset typeattr ARG1))
+
+ (typeattribute typeattr)
+
+ (blockinherit .anon_inode.all_macro_template_anon_inodes)
+
+ (call .anon_inode.type (typeattr))
+
+ (block base_template
+
+ (blockabstract base_template)
+
+ (blockinherit .anon_inode.base_template)
+
+ (call .uffd.anon_inode.type (anon_inode)))
+
+ (block template
+
+ (macro self_type_transition_anon_inode ((type ARG1))
+ (call self_type_transition
+ (ARG1 anon_inode "[userfaultfd]")))
+
+ (blockabstract template)
+
+ (blockinherit .anon_inode.macro_template_anon_inodes)
+
+ (blockinherit .uffd.anon_inode.base_template))))
+
+(in anon_inode.unconfined
+
+ (call .uffd.self_type_transition_anon_inode (typeattr)))