2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-29 13:38:26 +00:00

ADB entries could be unlinked too soon

due to a typo in the code, ADB entries were unlinked from their entry
buckets during shutdown if they had a nonzero reference count. they
were only supposed to be unlinked if the reference count was exactly
one (that being the reference held by the bucket itself).
This commit is contained in:
Evan Hunt 2022-04-11 17:29:03 -07:00
parent cab15392af
commit 73ff8850bf

View File

@ -1009,7 +1009,7 @@ shutdown_entries(dns_adb_t *adb) {
* entries not in use. * entries not in use.
*/ */
next_entry = ISC_LIST_NEXT(entry, plink); next_entry = ISC_LIST_NEXT(entry, plink);
if (isc_refcount_current(&entry->references) && if (isc_refcount_current(&entry->references) == 1 &&
entry->expires == 0) { entry->expires == 0) {
unlink_entry(entry); unlink_entry(entry);
} }