On Mon, Sep 18, 2017 at 3:59 PM, William Roberts
<bill.c.robe...@gmail.com> wrote:
> On Mon, Sep 18, 2017 at 2:32 PM, Nicolas Iooss <nicolas.io...@m4x.org> wrote:
>>
>> On a system without any file context customizations, "sepolicy gui"
>> fails to load because it tries to read a non-existent file:
>>
>>     FileNotFoundError: [Errno 2] No such file or directory:
>>     '/etc/selinux/refpolicy-git/contexts/files/file_contexts.local'
>>
>> Once this issue is fixed, another one is triggered:
>>
>>     FileNotFoundError: [Errno 2] No such file or directory:
>>     '/etc/selinux/refpolicy-git/contexts/files/file_contexts.subs
>>
>> Use os.path.exists() to prevent trying to open non-existent files.
>>
>> Signed-off-by: Nicolas Iooss <nicolas.io...@m4x.org>
>> ---
>>  python/sepolicy/sepolicy/__init__.py | 4 ++++
>>  1 file changed, 4 insertions(+)
>>
>> diff --git a/python/sepolicy/sepolicy/__init__.py 
>> b/python/sepolicy/sepolicy/__init__.py
>> index 03742346caf0..14d2ad634d7d 100644
>> --- a/python/sepolicy/sepolicy/__init__.py
>> +++ b/python/sepolicy/sepolicy/__init__.py
>> @@ -523,6 +523,8 @@ def find_entrypoint_path(exe, exclude_list=[]):
>>
>>
>>  def read_file_equiv(edict, fc_path, modify):
>> +    if not os.path.exists(fc_path):
>> +        return edict
>>      fd = open(fc_path, "r")
>>      fc = fd.readlines()
>>      fd.close()
>> @@ -555,6 +557,8 @@ def 
>> get_local_file_paths(fc_path=selinux.selinux_file_context_path()):
>>      if local_files:
>>          return local_files
>>      local_files = []
>> +    if not os.path.exists(fc_path + ".local"):
>> +        return []
>>      fd = open(fc_path + ".local", "r")
>
> Why not use Try/Except here with a pass here?

Wouldn't be a pass... but you get the idea.

> While you're at it, maybe update this to use a with
> statement. instead of an explicit close call.
>>      fc = fd.readlines()
>>      fd.close()
>> --
>> 2.14.1
>>

Reply via email to