From a8ce497aacd6871c6056baf5a30e04f021956a5c Mon Sep 17 00:00:00 2001 From: Christopher Faulet Date: Thu, 24 Jun 2021 15:26:03 +0200 Subject: [PATCH] BUG/MINOR: resolvers: Reset server IP when no ip is found in the response For A/AAAA resolution, if no ip is found for a server in the response, the server is set to RMAINT status. However, its address must also be reset. Otherwise, it is still reported by the cli on "show servers state" commands. This may be confusing. This patch may be backported as far as 2.0. --- src/server.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/server.c b/src/server.c index d63c3f1e3..2271b10b4 100644 --- a/src/server.c +++ b/src/server.c @@ -3436,8 +3436,8 @@ int snr_resolution_cb(struct resolv_requester *requester, struct dns_counters *c srv_update_addr(s, firstip, firstip_sin_family, (char *) chk->area); update_status: - - snr_update_srv_status(s, has_no_ip); + if (!snr_update_srv_status(s, has_no_ip) && has_no_ip) + memset(&s->addr, 0, sizeof(s->addr)); return 1; invalid: