diff options
author | Dominick Grift <dominick.grift@defensec.nl> | 2023-08-20 15:44:41 +0200 |
---|---|---|
committer | Dominick Grift <dominick.grift@defensec.nl> | 2023-08-20 15:46:23 +0200 |
commit | 0c187b6ff97f91c41dab65a6426dc61f77305cdf (patch) | |
tree | 1e35f5851154500a8a39428a45a5671f9488e1da /src/file/datafile | |
download | selinux-policy-0c187b6ff97f91c41dab65a6426dc61f77305cdf.tar.gz |
Import dssp5
Signed-off-by: Dominick Grift <dominick.grift@defensec.nl>
Diffstat (limited to 'src/file/datafile')
-rw-r--r-- | src/file/datafile/execfile.cil | 59 | ||||
-rw-r--r-- | src/file/datafile/libfile.cil | 51 | ||||
-rw-r--r-- | src/file/datafile/modfile.cil | 56 | ||||
-rw-r--r-- | src/file/datafile/srcfile.cil | 8 |
4 files changed, 174 insertions, 0 deletions
diff --git a/src/file/datafile/execfile.cil b/src/file/datafile/execfile.cil new file mode 100644 index 0000000..e7926a2 --- /dev/null +++ b/src/file/datafile/execfile.cil @@ -0,0 +1,59 @@ +;; SPDX-FileCopyrightText: © 2023 Dominick Grift <dominick.grift@defensec.nl> +;; SPDX-License-Identifier: Unlicense + +(block exec + + (blockinherit .file.exec.template) + (blockinherit .file.macro_template_dirs) + (blockinherit .file.macro_template_lnk_files)) + +(in file + + (block exec + + (macro entrypoint_all_files ((type ARG1)) + (allow ARG1 typeattr (file (entrypoint)))) + + (macro getattr_all_files ((type ARG1)) + (allow ARG1 typeattr (file (getattr)))) + + (macro map_all_files ((type ARG1)) + (allow ARG1 typeattr (file (map)))) + + (macro type ((type ARG1)) + (typeattributeset typeattr ARG1)) + + (blockinherit file.all_macro_template_files) + + (typeattribute typeattr) + + (call data.type (typeattr)) + + (call .subj.entry.type (typeattr)) + + (block base_template + + (blockabstract base_template) + + (blockinherit .file.base_template) + + (call .file.exec.type (file))) + + (block template + + (blockabstract template) + + (macro entrypoint_file_files ((type ARG1)) + (allow ARG1 file (file (entrypoint)))) + + (macro getattr_file_files ((type ARG1)) + (allow ARG1 file (file (getattr)))) + + (macro map_file_files ((type ARG1)) + (allow ARG1 file (file (map)))) + + (macro subj_type_transition ((type ARG1)(type ARG2)) + (typetransition ARG1 file process ARG2)) + + (blockinherit .file.exec.base_template) + (blockinherit .file.macro_template_files)))) diff --git a/src/file/datafile/libfile.cil b/src/file/datafile/libfile.cil new file mode 100644 index 0000000..4730264 --- /dev/null +++ b/src/file/datafile/libfile.cil @@ -0,0 +1,51 @@ +;; SPDX-FileCopyrightText: © 2023 Dominick Grift <dominick.grift@defensec.nl> +;; SPDX-License-Identifier: Unlicense + +(block lib + + (blockinherit .file.lib.template) + (blockinherit .file.macro_template_dirs) + (blockinherit .file.macro_template_lnk_files)) + +(block textrel + + (block lib + + (macro execmod_file_files ((type ARG1)) + (allow ARG1 file (file (execmod)))) + + (blockinherit .file.lib.template))) + +(in file + + (block lib + + (macro map_all_files ((type ARG1)) + (allow ARG1 typeattr (file (map)))) + + (macro type ((type ARG1)) + (typeattributeset typeattr ARG1)) + + (blockinherit file.all_macro_template_files) + + (typeattribute typeattr) + + (call data.type (typeattr)) + + (block base_template + + (blockabstract base_template) + + (blockinherit .file.base_template) + + (call .file.lib.type (file))) + + (block template + + (blockabstract template) + + (macro map_file_files ((type ARG1)) + (allow ARG1 file (file (map)))) + + (blockinherit .file.lib.base_template) + (blockinherit .file.macro_template_files)))) diff --git a/src/file/datafile/modfile.cil b/src/file/datafile/modfile.cil new file mode 100644 index 0000000..76f4fd7 --- /dev/null +++ b/src/file/datafile/modfile.cil @@ -0,0 +1,56 @@ +;; SPDX-FileCopyrightText: © 2023 Dominick Grift <dominick.grift@defensec.nl> +;; SPDX-License-Identifier: Unlicense + +(block mod + + (blockinherit .file.macro_template_dirs) + (blockinherit .file.macro_template_lnk_files) + (blockinherit .file.mod.template)) + +(in file + + (block mod + + (macro load_all_files ((type ARG1)) + (allow ARG1 typeattr (system (module_load)))) + + (macro map_all_files ((type ARG1)) + (allow ARG1 typeattr (file (map)))) + + (macro type ((type ARG1)) + (typeattributeset typeattr ARG1)) + + (blockinherit file.all_macro_template_files) + + (typeattribute typeattr) + + (call data.type (typeattr)) + + (block base_template + + (blockabstract base_template) + + (blockinherit .file.base_template) + + (call .file.mod.type (file))) + + (block template + + (blockabstract template) + + (macro load_file_files ((type ARG1)) + (allow ARG1 file (system (module_load)))) + + (macro map_file_files ((type ARG1)) + (allow ARG1 file (file (map)))) + + (blockinherit .file.macro_template_files) + (blockinherit .file.mod.base_template)))) + +(in sys + + (call .file.mod.load_all_files (unconfined.typeattr))) + +(in sys.moduleload + + (neverallow not_typeattr .file.mod.typeattr (system (module_load)))) diff --git a/src/file/datafile/srcfile.cil b/src/file/datafile/srcfile.cil new file mode 100644 index 0000000..c18a4d5 --- /dev/null +++ b/src/file/datafile/srcfile.cil @@ -0,0 +1,8 @@ +;; SPDX-FileCopyrightText: © 2023 Dominick Grift <dominick.grift@defensec.nl> +;; SPDX-License-Identifier: Unlicense + +(block src + + (blockinherit .file.data.template) + + (call .xattr.associate_fs (file))) |