Blame SOURCES/firewalld-0.4.4.7-firewalld-also-reload-dbus-config-interface-for-glob.patch

64e4ee
From 8ec42cd1041ba342c9f87f51b62f80be278f682b Mon Sep 17 00:00:00 2001
64e4ee
From: Eric Garver <e@erig.me>
64e4ee
Date: Tue, 21 Nov 2017 16:04:23 -0500
64e4ee
Subject: [PATCH] firewalld: also reload dbus config interface for global
64e4ee
 options
64e4ee
64e4ee
These options require the firewall to be reloaded, but it was not also
64e4ee
reloading the dbus config interface. The interface objects would end up
64e4ee
pointing to stale cleanup()'d config objects (via firewall.core.fw
64e4ee
reload()). Therefore we also need to reload/refresh the config
64e4ee
interface.
64e4ee
64e4ee
Fixes: rhbz 1514043
64e4ee
---
64e4ee
 src/firewall/core/fw.py          | 6 ------
64e4ee
 src/firewall/server/firewalld.py | 8 ++++++++
64e4ee
 2 files changed, 8 insertions(+), 6 deletions(-)
64e4ee
64e4ee
diff --git a/src/firewall/core/fw.py b/src/firewall/core/fw.py
64e4ee
index 0dda11d49116..2a119b1dc4d4 100644
64e4ee
--- a/src/firewall/core/fw.py
64e4ee
+++ b/src/firewall/core/fw.py
64e4ee
@@ -1142,9 +1142,6 @@ class Firewall(object):
64e4ee
             self._log_denied = value
64e4ee
             self._firewalld_conf.set("LogDenied", value)
64e4ee
             self._firewalld_conf.write()
64e4ee
-
64e4ee
-            # now reload the firewall
64e4ee
-            self.reload()
64e4ee
         else:
64e4ee
             raise FirewallError(errors.ALREADY_SET, value)
64e4ee
 
64e4ee
@@ -1163,9 +1160,6 @@ class Firewall(object):
64e4ee
             self._automatic_helpers = value
64e4ee
             self._firewalld_conf.set("AutomaticHelpers", value)
64e4ee
             self._firewalld_conf.write()
64e4ee
-
64e4ee
-            # now reload the firewall
64e4ee
-            self.reload()
64e4ee
         else:
64e4ee
             raise FirewallError(errors.ALREADY_SET, value)
64e4ee
 
64e4ee
diff --git a/src/firewall/server/firewalld.py b/src/firewall/server/firewalld.py
64e4ee
index 9c5d463de793..fc7422f12261 100644
64e4ee
--- a/src/firewall/server/firewalld.py
64e4ee
+++ b/src/firewall/server/firewalld.py
64e4ee
@@ -939,6 +939,10 @@ class FirewallD(slip.dbus.service.Object):
64e4ee
         self.accessCheck(sender)
64e4ee
         self.fw.set_log_denied(value)
64e4ee
         self.LogDeniedChanged(value)
64e4ee
+        # must reload the firewall as well
64e4ee
+        self.fw.reload()
64e4ee
+        self.config.reload()
64e4ee
+        self.Reloaded()
64e4ee
 
64e4ee
     @dbus.service.signal(config.dbus.DBUS_INTERFACE, signature='s')
64e4ee
     @dbus_handle_exceptions
64e4ee
@@ -969,6 +973,10 @@ class FirewallD(slip.dbus.service.Object):
64e4ee
         self.accessCheck(sender)
64e4ee
         self.fw.set_automatic_helpers(value)
64e4ee
         self.AutomaticHelpersChanged(value)
64e4ee
+        # must reload the firewall as well
64e4ee
+        self.fw.reload()
64e4ee
+        self.config.reload()
64e4ee
+        self.Reloaded()
64e4ee
 
64e4ee
     @dbus.service.signal(config.dbus.DBUS_INTERFACE, signature='s')
64e4ee
     @dbus_handle_exceptions
64e4ee
-- 
64e4ee
2.12.0
64e4ee