48 lines
2.0 KiB
Diff
48 lines
2.0 KiB
Diff
|
|
From 33d7a761e53c7828ab89821fd7f7b5c6ada81635 Mon Sep 17 00:00:00 2001
|
||
|
|
From: Nicolas Iooss <nicolas.iooss@m4x.org>
|
||
|
|
Date: Fri, 21 Dec 2018 21:43:30 +0100
|
||
|
|
Subject: [PATCH 111/170] python/sepolgen: close /etc/selinux/sepolgen.conf
|
||
|
|
after parsing it
|
||
|
|
|
||
|
|
sepolgen testsuite reports the following warning on a system with
|
||
|
|
/etc/selinux/sepolgen.conf:
|
||
|
|
|
||
|
|
.../src/./sepolgen/defaults.py:35: ResourceWarning: unclosed file
|
||
|
|
<_io.TextIOWrapper name='/etc/selinux/sepolgen.conf' mode='r'
|
||
|
|
encoding='UTF-8'>
|
||
|
|
|
||
|
|
Fix this by properly closing the file in PathChooser.__init__().
|
||
|
|
|
||
|
|
Signed-off-by: Nicolas Iooss <nicolas.iooss@m4x.org>
|
||
|
|
---
|
||
|
|
python/sepolgen/src/sepolgen/defaults.py | 13 +++++++------
|
||
|
|
1 file changed, 7 insertions(+), 6 deletions(-)
|
||
|
|
|
||
|
|
diff --git a/selinux-python-2.8/sepolgen/src/sepolgen/defaults.py b/selinux-python-2.8/sepolgen/src/sepolgen/defaults.py
|
||
|
|
index 199acfaf..533a9041 100644
|
||
|
|
--- a/selinux-python-2.8/sepolgen/src/sepolgen/defaults.py
|
||
|
|
+++ b/selinux-python-2.8/sepolgen/src/sepolgen/defaults.py
|
||
|
|
@@ -32,12 +32,13 @@ class PathChooser(object):
|
||
|
|
self.config_pathname = pathname
|
||
|
|
ignore = re.compile(r"^\s*(?:#.+)?$")
|
||
|
|
consider = re.compile(r"^\s*(\w+)\s*=\s*(.+?)\s*$")
|
||
|
|
- for lineno, line in enumerate(open(pathname)):
|
||
|
|
- if ignore.match(line): continue
|
||
|
|
- mo = consider.match(line)
|
||
|
|
- if not mo:
|
||
|
|
- raise ValueError("%s:%d: line is not in key = value format" % (pathname, lineno+1))
|
||
|
|
- self.config[mo.group(1)] = mo.group(2)
|
||
|
|
+ with open(pathname, "r") as fd:
|
||
|
|
+ for lineno, line in enumerate(fd):
|
||
|
|
+ if ignore.match(line): continue
|
||
|
|
+ mo = consider.match(line)
|
||
|
|
+ if not mo:
|
||
|
|
+ raise ValueError("%s:%d: line is not in key = value format" % (pathname, lineno+1))
|
||
|
|
+ self.config[mo.group(1)] = mo.group(2)
|
||
|
|
|
||
|
|
# We're only exporting one useful function, so why not be a function
|
||
|
|
def __call__(self, testfilename, pathset="SELINUX_DEVEL_PATH"):
|
||
|
|
--
|
||
|
|
2.19.1
|
||
|
|
|