]> git.ipfire.org Git - ipfire-2.x.git/commitdiff
unbound-dhcp-leases-bridge: Reload on SIGHUP
authorMichael Tremer <michael.tremer@ipfire.org>
Fri, 10 May 2024 13:29:31 +0000 (14:29 +0100)
committerMichael Tremer <michael.tremer@ipfire.org>
Fri, 10 May 2024 13:29:31 +0000 (14:29 +0100)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
config/unbound/unbound-dhcp-leases-bridge

index 8a6a3d8f8f8af3d66623df0ec24ef6a3f15b5d0e..f8f64b654941665f5c7a72caeb50b6f716bdb671 100644 (file)
@@ -90,11 +90,8 @@ class UnboundDHCPLeasesBridge(object):
                self.unbound = UnboundConfigWriter(unbound_leases_file)
                self.running = False
 
-               # Read all static hosts
-               self.hosts = self.read_static_hosts()
-
-               # Unconditionally update all leases and reload Unbound
-               self.update_dhcp_leases()
+               # Load all required data
+               self.reload()
 
        def run(self):
                log.info("Unbound DHCP Leases Bridge started on %s" % self.leases_file)
@@ -214,6 +211,13 @@ class UnboundDHCPLeasesBridge(object):
 
                return hosts
 
+       def reload(self, *args, **kwargs):
+               # Read all static hosts
+               self.hosts = self.read_static_hosts()
+
+               # Unconditionally update all leases and reload Unbound
+               self.update_dhcp_leases()
+
        def terminate(self, *args, **kwargs):
                # Close the socket
                if self.socket:
@@ -610,7 +614,7 @@ if __name__ == "__main__":
                detach_process=args.daemon,
                stderr=None if args.daemon else sys.stderr,
                signal_map = {
-                       signal.SIGHUP  : bridge.update_dhcp_leases,
+                       signal.SIGHUP  : bridge.reload,
                        signal.SIGINT  : bridge.terminate,
                        signal.SIGTERM : bridge.terminate,
                },