diff --git a/CHANGES b/CHANGES index 7129a1f280..ac9529a04a 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +6395. [bug] Handle ISC_R_HOSTDOWN and ISC_R_NETDOWN in resolver.c. + [GL #4736] + 6394. [bug] Named's -4 and -6 options now apply to zone primaries, also-notify and parental-agents. Report when a zone has these options configured but does not have an IPv4 diff --git a/lib/dns/resolver.c b/lib/dns/resolver.c index 60cac293cb..3d4d194c31 100644 --- a/lib/dns/resolver.c +++ b/lib/dns/resolver.c @@ -1920,11 +1920,15 @@ resquery_senddone(isc_result_t eresult, isc_region_t *region, void *arg) { case ISC_R_SHUTTINGDOWN: break; + case ISC_R_HOSTDOWN: case ISC_R_HOSTUNREACH: + case ISC_R_NETDOWN: case ISC_R_NETUNREACH: case ISC_R_NOPERM: case ISC_R_ADDRNOTAVAIL: case ISC_R_CONNREFUSED: + case ISC_R_CONNECTIONRESET: + case ISC_R_TIMEDOUT: /* No route to remote. */ FCTXTRACE3("query canceled in resquery_senddone(): " "no route to host; no response", @@ -2994,8 +2998,10 @@ resquery_connected(isc_result_t eresult, isc_region_t *region, void *arg) { fctx_done_detach(&fctx, eresult); break; - case ISC_R_NETUNREACH: + case ISC_R_HOSTDOWN: case ISC_R_HOSTUNREACH: + case ISC_R_NETDOWN: + case ISC_R_NETUNREACH: case ISC_R_CONNREFUSED: case ISC_R_NOPERM: case ISC_R_ADDRNOTAVAIL: @@ -8175,7 +8181,9 @@ rctx_dispfail(respctx_t *rctx) { */ switch (rctx->result) { case ISC_R_EOF: + case ISC_R_HOSTDOWN: case ISC_R_HOSTUNREACH: + case ISC_R_NETDOWN: case ISC_R_NETUNREACH: case ISC_R_CONNREFUSED: case ISC_R_CONNECTIONRESET: