2019-12-06 08:35:34 +00:00
|
|
|
From 61fcb9e5af82482d79c9e9edacb1a7f30686ee4a Mon Sep 17 00:00:00 2001
|
2019-03-22 16:35:38 +00:00
|
|
|
From: Petr Lautrbach <plautrba@redhat.com>
|
|
|
|
Date: Mon, 27 Feb 2017 17:12:39 +0100
|
|
|
|
Subject: [PATCH] sepolicy: Drop old interface file_type_is_executable(f) and
|
|
|
|
file_type_is_entrypoint(f)
|
|
|
|
|
|
|
|
- use direct queries
|
|
|
|
- load exec_types and entry_types only once
|
|
|
|
---
|
|
|
|
python/sepolicy/sepolicy/manpage.py | 22 ++++++++++++++++++++--
|
|
|
|
1 file changed, 20 insertions(+), 2 deletions(-)
|
|
|
|
|
|
|
|
diff --git a/python/sepolicy/sepolicy/manpage.py b/python/sepolicy/sepolicy/manpage.py
|
2019-10-16 09:36:01 +00:00
|
|
|
index 10e2c1745f8b..9a4b24743aca 100755
|
2019-03-22 16:35:38 +00:00
|
|
|
--- a/python/sepolicy/sepolicy/manpage.py
|
|
|
|
+++ b/python/sepolicy/sepolicy/manpage.py
|
|
|
|
@@ -125,8 +125,24 @@ def gen_domains():
|
|
|
|
domains.sort()
|
|
|
|
return domains
|
|
|
|
|
|
|
|
-types = None
|
|
|
|
|
|
|
|
+exec_types = None
|
|
|
|
+
|
|
|
|
+def _gen_exec_types():
|
|
|
|
+ global exec_types
|
|
|
|
+ if exec_types is None:
|
|
|
|
+ exec_types = next(sepolicy.info(sepolicy.ATTRIBUTE, "exec_type"))["types"]
|
|
|
|
+ return exec_types
|
|
|
|
+
|
|
|
|
+entry_types = None
|
|
|
|
+
|
|
|
|
+def _gen_entry_types():
|
|
|
|
+ global entry_types
|
|
|
|
+ if entry_types is None:
|
|
|
|
+ entry_types = next(sepolicy.info(sepolicy.ATTRIBUTE, "entry_type"))["types"]
|
|
|
|
+ return entry_types
|
|
|
|
+
|
|
|
|
+types = None
|
|
|
|
|
|
|
|
def _gen_types():
|
|
|
|
global types
|
|
|
|
@@ -372,6 +388,8 @@ class ManPage:
|
|
|
|
self.all_file_types = sepolicy.get_all_file_types()
|
|
|
|
self.role_allows = sepolicy.get_all_role_allows()
|
|
|
|
self.types = _gen_types()
|
|
|
|
+ self.exec_types = _gen_exec_types()
|
|
|
|
+ self.entry_types = _gen_entry_types()
|
|
|
|
|
|
|
|
if self.source_files:
|
|
|
|
self.fcpath = self.root + "file_contexts"
|
|
|
|
@@ -689,7 +707,7 @@ Default Defined Ports:""")
|
|
|
|
for f in self.all_file_types:
|
|
|
|
if f.startswith(self.domainname):
|
|
|
|
flist.append(f)
|
|
|
|
- if not file_type_is_executable(f) or not file_type_is_entrypoint(f):
|
|
|
|
+ if not f in self.exec_types or not f in self.entry_types:
|
|
|
|
flist_non_exec.append(f)
|
|
|
|
if f in self.fcdict:
|
|
|
|
mpaths = mpaths + self.fcdict[f]["regex"]
|
|
|
|
--
|
2019-10-16 09:36:01 +00:00
|
|
|
2.23.0
|
2019-03-22 16:35:38 +00:00
|
|
|
|