summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/file/ldfile.cil17
-rw-r--r--src/file/meson.build1
-rw-r--r--src/subj/common.cil12
3 files changed, 23 insertions, 7 deletions
diff --git a/src/file/ldfile.cil b/src/file/ldfile.cil
new file mode 100644
index 0000000..d706b58
--- /dev/null
+++ b/src/file/ldfile.cil
@@ -0,0 +1,17 @@
+(block loader
+ (block conf
+ (blockinherit file.conf.template)
+ (filecon "/etc/ld.so.conf" file file_context)
+ (filecon "/etc/ld.so.conf.d" dir file_context)
+ (filecon "/etc/ld.so.conf.d/.*" file file_context)
+ (filecon "/etc/ls.so.cache" file file_context)
+ (filecon "/etc/ld.so.d" dir file_context))
+
+ (block exec
+ (blockinherit file.exec.template)
+ (filecon "/usr/bin/ld.so" file file_context))
+
+ (block cache
+ (blockinherit file.cache.template)
+ (filecon "/var/cache/ldconfig" file file_context)
+ (filecon "/var/cache/ldconfig/.*" file file_context)))
diff --git a/src/file/meson.build b/src/file/meson.build
index 161f52a..c3d21ab 100644
--- a/src/file/meson.build
+++ b/src/file/meson.build
@@ -8,6 +8,7 @@ modules += files(
'devfile.cil',
'homefile.cil',
'hugetlbfsfile.cil',
+ 'ldfile.cil',
'mqueuefsfile.cil',
'runfile.cil',
'secfile.cil',
diff --git a/src/subj/common.cil b/src/subj/common.cil
index 70b2790..8f8da38 100644
--- a/src/subj/common.cil
+++ b/src/subj/common.cil
@@ -36,13 +36,11 @@
(call .proc.read_fs_lnk_files (typeattr))
(call .proc.search_fs_dirs (typeattr))
- ;; use dyn loader
- ;; todo: make a special dyn loader label/type
- ;; use dyn loader
- (call .conf.read_file_files (typeattr))
- (call .conf.search_file_dirs (typeattr))
- (call .conf.read_file_lnk_files (typeattr))
- (call .conf.map_file_files (typeattr))
+ ;; loader
+ (call .loader.conf.read_file_files (typeattr))
+ (call .loader.exec.mapexecute_file_files (typeattr))
+ (call .loader.cache.search_file_dirs (typeattr))
+ (call .loader.cache.read_file_files (typeattr))
;; use libraries
(call .lib.mapexecute_file_files (typeattr))