static void
clearlistenon(ns_interfacemgr_t *mgr);
+#if defined(RTM_NEWADDR) && defined(RTM_DELADDR)
static bool
need_rescan(ns_interfacemgr_t *mgr, struct MSGHDR *rtm, size_t len) {
if (rtm->MSGTYPE != RTM_NEWADDR && rtm->MSGTYPE != RTM_DELADDR) {
return false;
}
+#endif /* if defined(RTM_NEWADDR) && defined(RTM_DELADDR) */
static void
route_recv(isc_nmhandle_t *handle, isc_result_t eresult, isc_region_t *region,
REQUIRE(mgr->route != NULL);
+#if defined(RTM_NEWADDR) && defined(RTM_DELADDR)
if (need_rescan(mgr, rtm, rtmlen) && mgr->sctx->interface_auto) {
ns_interfacemgr_scan(mgr, false, false);
}
+#endif /* if defined(RTM_NEWADDR) && defined(RTM_DELADDR) */
isc_nm_read(handle, route_recv, mgr);
return;