]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[5649] Ignore writes on exernal sockets.
authorMarcin Siodelski <marcin@isc.org>
Thu, 14 Jun 2018 01:53:08 +0000 (03:53 +0200)
committerMarcin Siodelski <marcin@isc.org>
Thu, 14 Jun 2018 01:53:08 +0000 (03:53 +0200)
src/lib/dhcp/iface_mgr.cc

index 15877c1cb29d1aa16e1a5c231dd04c2e8452ce85..1a7e5b0b5d236bf9a63b6cdfd81c47410a71f03b 100644 (file)
@@ -971,7 +971,8 @@ Pkt4Ptr IfaceMgr::receive4(uint32_t timeout_sec, uint32_t timeout_usec /* = 0 */
 
     // Let's find out which socket has the data
     BOOST_FOREACH(SocketCallbackInfo s, callbacks_) {
-        if (!FD_ISSET(s.socket_, &sockets)) {
+        if ((!FD_ISSET(s.socket_, &sockets) &&
+             (!FD_ISSET(s.socket_, &write_sockets)))) {
             continue;
         }
 
@@ -1094,7 +1095,8 @@ Pkt6Ptr IfaceMgr::receive6(uint32_t timeout_sec, uint32_t timeout_usec /* = 0 */
 
     // Let's find out which socket has the data
     BOOST_FOREACH(SocketCallbackInfo s, callbacks_) {
-        if (!FD_ISSET(s.socket_, &sockets)) {
+        if ((!FD_ISSET(s.socket_, &sockets) &&
+             (!FD_ISSET(s.socket_, &write_sockets)))) {
             continue;
         }