network_manager: Add reload hooking
This changes no functionality currently, but it makes it possible to
defer actions until just before the systemd reload would occur.
Change-Id: I434b83fe5ad8b2596de162b6a74eefcba4ecc71a
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/src/network_manager.cpp b/src/network_manager.cpp
index 8b4c5c2..b8fcaab 100644
--- a/src/network_manager.cpp
+++ b/src/network_manager.cpp
@@ -255,6 +255,19 @@
void Manager::reloadConfigs()
{
+ for (auto& hook : reloadPreHooks)
+ {
+ try
+ {
+ hook();
+ }
+ catch (const std::exception& ex)
+ {
+ log<level::ERR>("Failed executing reload hook, ignoring",
+ entry("ERR=%s", ex.what()));
+ }
+ }
+ reloadPreHooks.clear();
try
{
auto method = bus.new_method_call(NETWORKD_BUSNAME, NETWORKD_PATH,