2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-31 14:35:26 +00:00

Reintroduced separate internal/external reference counts for zones,

reversing part of the changes made on 2000/05/17.  Doing an explicit
zone shutdown on destruction of the zone table caused the zone to
be shut down prematurely on server reload when the zone table was
destroyed but the zone had already been attached to a new zone table.
An external reference count is needed to correctly handle this situation.
This commit is contained in:
Andreas Gustafsson
2000-05-22 17:23:15 +00:00
parent cb726f24e7
commit cd01c9716f
5 changed files with 151 additions and 136 deletions

View File

@@ -224,7 +224,6 @@ destroy(dns_view_t *view) {
dns_acl_detach(&view->queryacl);
if (view->recursionacl != NULL)
dns_acl_detach(&view->recursionacl);
dns_zt_detach(&view->zonetable);
dns_keytable_detach(&view->trustedkeys);
dns_keytable_detach(&view->secroots);
isc_mutex_destroy(&view->lock);
@@ -282,7 +281,7 @@ dns_view_detach(dns_view_t **viewp) {
dns_adb_shutdown(view->adb);
if (!REQSHUTDOWN(view))
dns_requestmgr_shutdown(view->requestmgr);
dns_zt_shutdown(view->zonetable);
dns_zt_detach(&view->zonetable);
done = all_done(view);
}
UNLOCK(&view->lock);