Make sure the raw socket is removed from the uloop file descriptor
list before the socket is closed as introduced in
https://github.com/openwrt/odhcpd/commit/
000182fe4f94a5a6ec139456a2b74f0cdea13b9c
Related to https://github.com/openwrt/odhcpd/issues/135
Signed-off-by: Koen Aerts <aertskoen5@gmail.com>
case NETEV_IFINDEX_CHANGE:
iface = info->iface;
if (iface && iface->router_event.uloop.fd >= 0) {
+ if (iface->router_event.uloop.registered)
+ uloop_fd_delete(&iface->router_event.uloop);
+
close(iface->router_event.uloop.fd);
iface->router_event.uloop.fd = -1;
}