From 85453d393d1b591ae1108603308c79dd63acca85 Mon Sep 17 00:00:00 2001 From: Matthijs Mekking Date: Tue, 17 Mar 2026 09:29:10 +0100 Subject: [PATCH] Store zone config also on modzone 'rndc modzone' deletes the old configuration. If we don't store the new zone config, when we do a 'rndc showzone' it will be a failure. This is not an issue in the 9.21 version, because of the effective config behavior. --- bin/named/server.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/bin/named/server.c b/bin/named/server.c index 09cf436627..37d4ba92e8 100644 --- a/bin/named/server.c +++ b/bin/named/server.c @@ -14298,6 +14298,18 @@ do_modzone(named_server_t *server, ns_cfgctx_t *cfg, dns_view_t *view, TCHECK(putstr(text, zname)); TCHECK(putstr(text, "' reconfigured.")); } else { +#ifdef HAVE_LMDB + CHECK(nzd_open(view, 0, &txn, &dbi)); + CHECK(nzd_save(&txn, dbi, zone, zoneobj)); +#else /* ifdef HAVE_LMDB */ + result = nzf_append(view, zoneobj); + if (result != ISC_R_SUCCESS) { + TCHECK(putstr(text, "\nNew zone config not saved: ")); + TCHECK(putstr(text, isc_result_totext(result))); + goto cleanup; + } +#endif /* HAVE_LMDB */ + TCHECK(putstr(text, "zone '")); TCHECK(putstr(text, zname)); TCHECK(putstr(text, "' must also be reconfigured in\n"));