From ca12ca7bb7fc1958ee725fb8c53c1fbafdeef515 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. (cherry picked from commit a8ce497aacd6871c6056baf5a30e04f021956a5c) Signed-off-by: Christopher Faulet (cherry picked from commit 7c129bba960aebec175b3fcf2d0ffa52d584552f) Signed-off-by: Christopher Faulet --- src/server.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/server.c b/src/server.c index 15dd73b..6a7ffe2 100644 --- a/src/server.c +++ b/src/server.c @@ -3950,8 +3950,8 @@ int snr_resolution_cb(struct dns_requester *requester, struct dns_nameserver *na update_server_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: -- 1.7.10.4