bind9/lib
Ondřej Surý 09762bdc44
Fix datarace between unlocking fctx lock and shuttingdown fctx
There was a data race where new fetch response could be added to the
fetch context after we unlock the fetch context and before we shut it
down.  This could cause assertion failure when fctx__done() was called
with ISC_R_SUCCESS because there was originally no fetch response, but
new fetch response without associated dataset was added before we had a
chance to shutdown the fetch context.  This manifested in the
validated() callback, where cache_rrset() now returns ISC_R_SUCCESS
instead of DNS_R_UNCHANGED when cache was not changed.  However the data
race was wrong on a general level.

When the fctx__done() is called with ISC_R_SUCCESS as result is expects
the fctx->lock to be already acquired to prevent these data races.
2025-09-23 10:29:27 +02:00
..
dns Fix datarace between unlocking fctx lock and shuttingdown fctx 2025-09-23 10:29:27 +02:00
isc simplify nchildren count in isc_nm_listenudp 2025-09-16 14:22:15 +02:00
isccc replace the build system with meson 2025-06-11 10:30:12 +03:00
isccfg add namedconf support for plugin inside a zone 2025-09-09 09:42:34 +02:00
ns rename NS_QUERY_RESET to NS_QUERY_CLEANUP 2025-09-10 17:46:53 -07:00
.gitignore The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
meson.build replace the build system with meson 2025-06-11 10:30:12 +03:00