]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[5564] Changes after review:
authorTomek Mrugalski <tomasz@isc.org>
Wed, 16 May 2018 12:42:55 +0000 (14:42 +0200)
committerTomek Mrugalski <tomasz@isc.org>
Wed, 16 May 2018 12:42:55 +0000 (14:42 +0200)
 - dumpPackets renamed to discardPackets
 - added missing comments

src/bin/dhcp4/dhcp4_srv.cc
src/bin/dhcp4/dhcp4_srv.h
src/bin/dhcp4/json_config_parser.cc
src/bin/dhcp6/dhcp6_srv.cc
src/bin/dhcp6/dhcp6_srv.h
src/bin/dhcp6/json_config_parser.cc
src/lib/hooks/hooks_manager.h

index bfe50702f77156efc30003a42a50f8cf48574988..531b366c996714263fba5221bf18ce38a64cefcd 100644 (file)
@@ -460,7 +460,7 @@ Dhcpv4Srv::Dhcpv4Srv(uint16_t port, const bool use_bcast,
 
 Dhcpv4Srv::~Dhcpv4Srv() {
     // Discard any cached packets or parked packets
-    dumpPackets();
+    discardPackets();
 
     try {
         stopD2();
@@ -3589,7 +3589,7 @@ int Dhcpv4Srv::getHookIndexLease4Decline() {
     return (Hooks.hook_index_lease4_decline_);
 }
 
-void Dhcpv4Srv::dumpPackets() {
+void Dhcpv4Srv::discardPackets() {
     // Clear any packets held by the callhout handle store and
     // all parked packets
     isc::dhcp::Pkt4Ptr pkt4ptr_empty;
index a1ce6c7d8a171e3f626cda88c2cf7320a17b6d05..fd8c671f6ccff3f81e3155d4804ffefebb143ce1 100644 (file)
@@ -331,7 +331,7 @@ public:
                                       dhcp_ddns::NameChangeRequestPtr& ncr);
 
     /// @brief Discard all in-progress packets
-    void dumpPackets();
+    void discardPackets();
 
 protected:
 
index d9139d2025ab3ff86cdf8e43183ecdd484c8a184..6ee88509b0211974257abc44f86172a1d98d6c23 100644 (file)
@@ -291,7 +291,7 @@ configureDhcp4Server(Dhcpv4Srv& server, isc::data::ConstElementPtr config_set,
     // Remove any existing timers.
     if (!check_only) {
         TimerMgr::instance()->unregisterTimers();
-        server.dumpPackets();
+        server.discardPackets();
     }
 
     // Revert any runtime option definitions configured so far and not committed.
index 6204c7dda25f7dd60efa772e935e97555faacb56..3af19693d89ded0753eb5fbfbd1b92089ed4f237 100644 (file)
@@ -218,7 +218,7 @@ Dhcpv6Srv::Dhcpv6Srv(uint16_t port)
 }
 
 Dhcpv6Srv::~Dhcpv6Srv() {
-    dumpPackets();
+    discardPackets();
     try {
         stopD2();
     } catch(const std::exception& ex) {
@@ -3762,11 +3762,11 @@ Dhcpv6Srv::requestedInORO(const Pkt6Ptr& query, const uint16_t code) const {
     return (false);
 }
 
-void Dhcpv6Srv::dumpPackets() {
+void Dhcpv6Srv::discardPackets() {
     // Dump all of our current packets, anything that is mid-stream
     isc::dhcp::Pkt6Ptr pkt6ptr_empty;
     isc::dhcp::getCalloutHandle(pkt6ptr_empty);
-    ServerHooks::getServerHooks().getParkingLotsPtr()->clear();
+    HooksManager::clearParkingLots();
 }
 
 };
index db9ec846c77fedbbe3afc679f100dad82233e850..6debce96ac7e5a9f56335f8e5d5ef2995a1b06ad 100644 (file)
@@ -174,10 +174,10 @@ public:
                                       NameChangeSender::Result result,
                                       dhcp_ddns::NameChangeRequestPtr& ncr);
 
-    /// @brief Dumps cached and parked packets
+    /// @brief Discards cached and parked packets
     /// Clears the call_handle store and packet parking lots
     /// of all packets.  Called during reconfigure and shutdown.
-    void dumpPackets();
+    void discardPackets();
 
 protected:
 
index 35575fd1125cb3dedc9967b3590c7443f4a1c120..4d28b3781d69bd8d1afceaa31fc2ee505ed0d0f3 100644 (file)
@@ -389,7 +389,7 @@ configureDhcp6Server(Dhcpv6Srv& server, isc::data::ConstElementPtr config_set,
     // Remove any existing timers.
     if (!check_only) {
         TimerMgr::instance()->unregisterTimers();
-        server.dumpPackets();
+        server.discardPackets();
     }
 
     // Revert any runtime option definitions configured so far and not committed.
index b31bce34e895f09c64122bc57073a905a306c41f..903ad6aa6e091ac239a0dfb16c13d7a0a12e04ab 100644 (file)
@@ -310,6 +310,11 @@ public:
         getHooksManager().referenceInternal(hook_name, parked_object);
     }
 
+    /// @brief Clears any parking packets.
+    ///
+    /// This method should be called during reconfiguration to ensure there
+    /// are no dangling pointers that could possibly prevent the library
+    /// from being unloaded.
     static void clearParkingLots() {
         getHooksManager().clearParkingLotsInternal();
     }
@@ -371,6 +376,9 @@ private:
             getParkingLotPtr(hook_name)->reference(parked_object);
     }
 
+    /// @brief Clears all pointers stored in parking lots.
+    ///
+    /// See @ref clearParkingLots for explanation.
     void clearParkingLotsInternal() {
         ServerHooks::getServerHooks().getParkingLotsPtr()->clear();
     }