bind9/bin
Michał Kępień 33350626f9 Track forwarder timeouts in fetch contexts
Since following a delegation resets most fetch context state, address
marks (FCTX_ADDRINFO_MARK) set inside lib/dns/resolver.c are not
preserved when a delegation is followed.  This is fine for full
recursive resolution but when named is configured with "forward first;"
and one of the specified forwarders times out, triggering a fallback to
full recursive resolution, that forwarder should no longer be consulted
at each delegation point subsequently reached within a given fetch
context.

Add a new badnstype_t enum value, badns_forwarder, and use it to mark a
forwarder as bad when it times out in a "forward first;" configuration.
Since the bad server list is not cleaned when a fetch context follows a
delegation, this prevents a forwarder from being queried again after
falling back to full recursive resolution.  Yet, as each fetch context
maintains its own list of bad servers, this change does not cause a
forwarder timeout to prevent that forwarder from being used by other
fetch contexts.
2019-01-08 08:29:54 +01:00
..
check update copyrights 2019-01-02 10:20:43 +11:00
confgen update copyrights 2019-01-02 10:20:43 +11:00
delv update copyrights 2019-01-02 10:20:43 +11:00
dig update copyrights 2019-01-02 10:20:43 +11:00
dnssec indenting 2019-01-02 10:56:59 +11:00
named update copyrights 2019-01-02 10:20:43 +11:00
nsupdate update copyrights 2019-01-02 10:20:43 +11:00
pkcs11 update copyrights 2019-01-02 10:20:43 +11:00
plugins update copyrights 2019-01-02 10:20:43 +11:00
python update copyrights 2019-01-02 10:20:43 +11:00
rndc update copyrights 2019-01-02 10:20:43 +11:00
tests Track forwarder timeouts in fetch contexts 2019-01-08 08:29:54 +01:00
tools update copyrights 2019-01-02 10:20:43 +11:00
win32/BINDInstall Bump the minimum required Windows version to Windows Vista and Windows Server 2008 2018-08-29 22:03:09 +02:00
Makefile.in name change from "hook modules" to "plugins" 2018-12-06 10:36:50 -08:00