From: Colin Vidal Date: Mon, 8 Sep 2025 09:07:29 +0000 (+0200) Subject: apply_configuration: bump config map before exclusive mode X-Git-Tag: v9.21.14~29^2~5 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4523852ded5c3a263ab6fc40295007beda911786;p=thirdparty%2Fbind9.git apply_configuration: bump config map before exclusive mode Moving the config map building outside of the exclusive mode, and this is local data only and no runtime object uses it. --- diff --git a/bin/named/server.c b/bin/named/server.c index a7602e95faf..ea955267ac7 100644 --- a/bin/named/server.c +++ b/bin/named/server.c @@ -8141,6 +8141,18 @@ apply_configuration(cfg_parser_t *configparser, cfg_obj_t *config, ISC_LIST_INIT(cachelist); ISC_LIST_INIT(altsecrets); + /* + * Fill in the maps array, used for resolving defaults. + */ + i = 0; + options = NULL; + result = cfg_map_get(config, "options", &options); + if (result == ISC_R_SUCCESS) { + maps[i++] = options; + } + maps[i++] = named_g_defaultoptions; + maps[i] = NULL; + /* Ensure exclusive access to configuration data. */ isc_loopmgr_pause(); @@ -8187,18 +8199,6 @@ apply_configuration(cfg_parser_t *configparser, cfg_obj_t *config, dns_zonemgr_set_tlsctx_cache(server->zonemgr, server->tlsctx_client_cache); - /* - * Fill in the maps array, used for resolving defaults. - */ - i = 0; - options = NULL; - result = cfg_map_get(config, "options", &options); - if (result == ISC_R_SUCCESS) { - maps[i++] = options; - } - maps[i++] = named_g_defaultoptions; - maps[i] = NULL; - #if HAVE_LIBNGHTTP2 obj = NULL; result = named_config_get(maps, "http-port", &obj);