]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Fix a bug in zone_loaddone()
authorAram Sargsyan <aram@isc.org>
Mon, 26 Jan 2026 15:34:00 +0000 (15:34 +0000)
committerArаm Sаrgsyаn <aram@isc.org>
Tue, 27 Jan 2026 11:31:15 +0000 (11:31 +0000)
The zone_loaddone() function disables database notifications for
a catalog zones and response policy zones (RPZ) when loading had
failed. Howerer, the 'result != ISC_R_SUCCESS' check is insufficient,
because the DNS_R_SEENINCLUDE result also indicates success.

Add a second condition for the "if" block.

lib/dns/zone.c

index 8a6b5519c30b2446ec961a3d73b183d35b9088c8..855ac052ce196c2bbd83a8a8a034ecc71cd88cbb 100644 (file)
@@ -17559,7 +17559,7 @@ zone_loaddone(void *arg, isc_result_t result) {
         * If zone loading failed, remove the update db callbacks prior
         * to calling the list of callbacks in the zone load structure.
         */
-       if (result != ISC_R_SUCCESS) {
+       if (result != ISC_R_SUCCESS && result != DNS_R_SEENINCLUDE) {
                dns_zone_rpz_disable_db(zone, load->db);
                dns_zone_catz_disable_db(zone, load->db);
        }