From bad7203b1431eb6d85ecb6a4839bbafc03fd9355 Mon Sep 17 00:00:00 2001
From: Chris PeBenito <pebenito@ieee.org>
Date: Thu, 19 Jul 2018 20:44:21 -0400
Subject: [PATCH] SELinuxPolicy: Fix null pointer dereference in policy load.

If selinux_current_policy_path() cannot find a policy, it returns NULL.
Found this running in a chroot on a SELinux system and proc but not
selinuxfs was mounted in it.

Closes #6
---
 setools/policyrep/selinuxpolicy.pxi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/setools/policyrep/selinuxpolicy.pxi b/setools/policyrep/selinuxpolicy.pxi
index d55a6e2..8a8b586 100644
--- a/setools/policyrep/selinuxpolicy.pxi
+++ b/setools/policyrep/selinuxpolicy.pxi
@@ -177,7 +177,7 @@ cdef class SELinuxPolicy:
         self.log.debug("Binary policy path: {}".format(selinux.selinux_binary_policy_path()))
 
         # try libselinux for current policy
-        if selinux.selinuxfs_exists():
+        if selinux.selinux_current_policy_path() != NULL:
             self.log.debug("Current policy path: {}".format(selinux.selinux_current_policy_path()))
             yield selinux.selinux_current_policy_path()