The configure_catz() function creates the catalog zones structure
for the view even when it is not needed, in which case it then
discards it (by detaching) later.
Instead, call dns_catz_new_zones() only when it is needed, i.e. when
there is no existing "previous" view with an existing 'catzs', that
is going to be reused.
return (ISC_R_SUCCESS);
}
- dns_catz_new_zones(view->mctx, named_g_loopmgr, &view->catzs,
- &ns_catz_zonemodmethods);
-
if (pview != NULL) {
old = pview->catzs;
} else {
}
if (old != NULL) {
- dns_catz_detach_catzs(&view->catzs);
dns_catz_attach_catzs(pview->catzs, &view->catzs);
dns_catz_detach_catzs(&pview->catzs);
dns_catz_prereconfig(view->catzs);
+ } else {
+ dns_catz_new_zones(view->mctx, named_g_loopmgr, &view->catzs,
+ &ns_catz_zonemodmethods);
}
while (zone_element != NULL) {