Browse Source

[4492] Explicitly unload hook libraries prior during shutdown

A call to HooksManager::getHooksManager().unloadLibraries() was added to
the destructors Dhcpv4Srv::~Dhcpv4Srv() and Dhcpv6Srv::~Dhcpv6Srv(). This
ensures hook libraries are unloaded prior to static objects.
Thomas Markwalder 9 years ago
parent
commit
98141971d3
2 changed files with 6 additions and 0 deletions
  1. 3 0
      src/bin/dhcp4/dhcp4_srv.cc
  2. 3 0
      src/bin/dhcp6/dhcp6_srv.cc

+ 3 - 0
src/bin/dhcp4/dhcp4_srv.cc

@@ -354,6 +354,9 @@ Dhcpv4Srv::~Dhcpv4Srv() {
     // The lease manager was instantiated during DHCPv4Srv configuration,
     // The lease manager was instantiated during DHCPv4Srv configuration,
     // so we should clean up after ourselves.
     // so we should clean up after ourselves.
     LeaseMgrFactory::destroy();
     LeaseMgrFactory::destroy();
+
+    // Explicitly unload hooks
+    HooksManager::getHooksManager().unloadLibraries();
 }
 }
 
 
 void
 void

+ 3 - 0
src/bin/dhcp6/dhcp6_srv.cc

@@ -214,6 +214,9 @@ Dhcpv6Srv::~Dhcpv6Srv() {
     IfaceMgr::instance().closeSockets();
     IfaceMgr::instance().closeSockets();
 
 
     LeaseMgrFactory::destroy();
     LeaseMgrFactory::destroy();
+
+    // Explicitly unload hooks
+    HooksManager::getHooksManager().unloadLibraries();
 }
 }
 
 
 void Dhcpv6Srv::shutdown() {
 void Dhcpv6Srv::shutdown() {