4320f0
From 7b4c1e28b3e64f7cd075599472e349510f8d33da Mon Sep 17 00:00:00 2001
4320f0
From: =?UTF-8?q?Petr=20Men=C5=A1=C3=ADk?= <pemensik@redhat.com>
4320f0
Date: Wed, 14 Sep 2022 17:10:11 +0200
4320f0
Subject: [PATCH] Modify empty zone conflicts under exclusive mode
4320f0
4320f0
Does not accept new request when exclusive mode is active. Zone table
4320f0
can be modified even after main fwd entries have been added. Ensure
4320f0
empty zones handling keeps exclusive mode active.
4320f0
4320f0
Exclusive mode were mentioned as the only protection it had by bind
4320f0
maintainer:
4320f0
https://gitlab.isc.org/isc-projects/bind9/-/merge_requests/6637#note_308928
4320f0
---
4320f0
 src/fwd.c | 4 +++-
4320f0
 1 file changed, 3 insertions(+), 1 deletion(-)
4320f0
4320f0
diff --git a/src/fwd.c b/src/fwd.c
4320f0
index 24f6e53..0a3c673 100644
4320f0
--- a/src/fwd.c
4320f0
+++ b/src/fwd.c
4320f0
@@ -595,10 +595,12 @@ fwd_configure_zone(const settings_set_t *set, ldap_instance_t *inst,
4320f0
 		  dns_result_totext(result));
4320f0
 
4320f0
 	/* Handle collisions with automatic empty zones. */
4320f0
-	if (isconfigured == true)
4320f0
+	if (isconfigured == true) {
4320f0
+		run_exclusive_enter(inst, &lock_state);
4320f0
 		CHECK(empty_zone_handle_conflicts(name,
4320f0
 						  view->zonetable,
4320f0
 						  (fwdpolicy == dns_fwdpolicy_first)));
4320f0
+	}
4320f0
 
4320f0
 cleanup:
4320f0
 	run_exclusive_exit(inst, lock_state);
4320f0
-- 
4320f0
2.37.3
4320f0