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

1526. [func] Implemented "additional section caching (or acache)",

an internal cache framework for additional section
			content to improve response performance.  Several
			configuration options were provided to control the
			behavior.
This commit is contained in:
Tatuya JINMEI 神明達哉
2004-12-21 10:45:20 +00:00
parent 0e93730a02
commit d0eb2cc33c
27 changed files with 3802 additions and 95 deletions

View File

@@ -15,7 +15,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: db.c,v 1.74 2004/03/05 05:09:18 marka Exp $ */
/* $Id: db.c,v 1.75 2004/12/21 10:45:16 jinmei Exp $ */
/***
*** Imports
@@ -791,3 +791,51 @@ dns_db_unregister(dns_dbimplementation_t **dbimp) {
isc_mem_detach(&mctx);
RWUNLOCK(&implock, isc_rwlocktype_write);
}
isc_result_t
dns_db_getsoanode(dns_db_t *db, dns_dbnode_t **nodep) {
REQUIRE(DNS_DB_VALID(db));
REQUIRE(dns_db_iszone(db) == ISC_TRUE);
REQUIRE(nodep != NULL && *nodep == NULL);
if (db->methods->getsoanode != NULL)
return ((db->methods->getsoanode)(db, nodep));
return (ISC_R_NOTFOUND);
}
isc_result_t
dns_db_setsoanode(dns_db_t *db, dns_dbnode_t *node) {
REQUIRE(DNS_DB_VALID(db));
REQUIRE(dns_db_iszone(db) == ISC_TRUE);
REQUIRE(node != NULL);
if (db->methods->setsoanode != NULL)
return ((db->methods->setsoanode)(db, node));
return (ISC_R_FAILURE);
}
isc_result_t
dns_db_getnsnode(dns_db_t *db, dns_dbnode_t **nodep) {
REQUIRE(DNS_DB_VALID(db));
REQUIRE(dns_db_iszone(db) == ISC_TRUE);
REQUIRE(nodep != NULL && *nodep == NULL);
if (db->methods->getnsnode != NULL)
return ((db->methods->getnsnode)(db, nodep));
return (ISC_R_NOTFOUND);
}
isc_result_t
dns_db_setnsnode(dns_db_t *db, dns_dbnode_t *node) {
REQUIRE(DNS_DB_VALID(db));
REQUIRE(dns_db_iszone(db) == ISC_TRUE);
REQUIRE(node != NULL);
if (db->methods->setnsnode != NULL)
return ((db->methods->setnsnode)(db, node));
return (ISC_R_FAILURE);
}