From: W.C.A. Wijngaards Date: Fri, 15 Jul 2022 06:51:31 +0000 (+0200) Subject: - Merge PR 714: Avoid treat normal hosts as unresponsive servers. X-Git-Tag: release-1.16.2~7 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=33bd49af8140e6744064a74eaf1c369ebed86610;p=thirdparty%2Funbound.git - Merge PR 714: Avoid treat normal hosts as unresponsive servers. And fixup the lock code. --- 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 */