Re: [PATCH] dbus: Fix FileNotFoundError in org.selinux.relabel_on_boot

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/15/19 9:54 AM, Petr Lautrbach wrote:
When org.selinux.relabel_on_boot(0) was called twice, it failed with
FileNotFoundError.

Fixes:
     $ dbus-send --system --print-reply --dest=org.selinux /org/selinux/object org.selinux.relabel_on_boot int64:1
     method return sender=:1.53 -> dest=:1.54 reply_serial=2
     $ dbus-send --system --print-reply --dest=org.selinux /org/selinux/object org.selinux.relabel_on_boot int64:0
     method return sender=:1.53 -> dest=:1.55 reply_serial=2
     $ dbus-send --system --print-reply --dest=org.selinux /org/selinux/object org.selinux.relabel_on_boot int64:0
     Error org.freedesktop.DBus.Python.FileNotFoundError: FileNotFoundError: [Errno 2] No such file or directory: '/.autorelabel'

Signed-off-by: Petr Lautrbach <plautrba@xxxxxxxxxx>

Thanks, applied. I applied the travis patch first so that this one shouldn't break it.

---

Note: This is python 3 only code and it fails in travis with PYVER=python2.7 RUBYLIBVER=2.6:

$ PATH="$VIRTUAL_ENV/bin:$PATH" ./scripts/run-flake8

Analyzing 187 Python scripts

./dbus/selinux_server.py:90:20: F821 undefined name 'FileNotFoundError'

./installdir/usr/share/system-config-selinux/selinux_server.py:90:20: F821 undefined name 'FileNotFoundError'

The command "PATH="$VIRTUAL_ENV/bin:$PATH" ./scripts/run-flake8" exited with 1.



  dbus/selinux_server.py | 5 ++++-
  1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/dbus/selinux_server.py b/dbus/selinux_server.py
index b9debc071485..be4f4557a9fa 100644
--- a/dbus/selinux_server.py
+++ b/dbus/selinux_server.py
@@ -85,7 +85,10 @@ class selinux_server(slip.dbus.service.Object):
              fd = open("/.autorelabel", "w")
              fd.close()
          else:
-            os.unlink("/.autorelabel")
+            try:
+                os.unlink("/.autorelabel")
+            except FileNotFoundError:
+                pass
def write_selinux_config(self, enforcing=None, policy=None):
          path = selinux.selinux_path() + "config"





[Index of Archives]     [Selinux Refpolicy]     [Linux SGX]     [Fedora Users]     [Fedora Desktop]     [Yosemite Photos]     [Yosemite Camping]     [Yosemite Campsites]     [KDE Users]     [Gnome Users]

  Powered by Linux