From 33bd49af8140e6744064a74eaf1c369ebed86610 Mon Sep 17 00:00:00 2001 From: "W.C.A. Wijngaards" Date: Fri, 15 Jul 2022 08:51:31 +0200 Subject: [PATCH] - Merge PR 714: Avoid treat normal hosts as unresponsive servers. And fixup the lock code. --- doc/Changelog | 4 ++++ services/cache/infra.c | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/doc/Changelog b/doc/Changelog index ddefbde29..5ab369c68 100644 --- a/doc/Changelog +++ b/doc/Changelog @@ -1,3 +1,7 @@ +15 July 2022: Wouter + - Merge PR 714: Avoid treat normal hosts as unresponsive servers. + And fixup the lock code. + 12 July 2022: George - For windows crosscompile, fix setting the IPV6_MTU socket option equivalent (IPV6_USER_MTU); allows cross compiling with latest diff --git a/services/cache/infra.c b/services/cache/infra.c index 45fc7708f..0461c815b 100644 --- a/services/cache/infra.c +++ b/services/cache/infra.c @@ -723,18 +723,19 @@ infra_get_lame_rtt(struct infra_cache* infra, } /* expired entry */ if(timenow > host->ttl) { - lock_rw_unlock(&e->lock); /* see if this can be a re-probe of an unresponsive server */ /* minus 1000 because that is outside of the RTTBAND, so * blacklisted servers stay blacklisted if this is chosen */ if(host->rtt.rto >= USEFUL_SERVER_TOP_TIMEOUT) { + lock_rw_unlock(&e->lock); *rtt = USEFUL_SERVER_TOP_TIMEOUT-1000; *lame = 0; *dnsseclame = 0; *reclame = 0; return 1; } + lock_rw_unlock(&e->lock); return 0; } /* check lameness first */