add dns_db_allrdatasets

This commit is contained in:
Bob Halley 1999-03-11 06:00:22 +00:00
parent b70e90d44f
commit efe6d8f066
2 changed files with 50 additions and 4 deletions

View file

@ -327,6 +327,21 @@ dns_db_findrdataset(dns_db_t *db, dns_dbnode_t *node, dns_dbversion_t *version,
rdataset));
}
dns_result_t
dns_db_allrdatasets(dns_db_t *db, dns_dbnode_t *node, dns_dbversion_t *version,
dns_rdatasetiter_t **iteratorp)
{
/*
* Make '*iteratorp' an rdataset iteratator for all rdatasets at
* 'node' in version 'version' of 'db'.
*/
REQUIRE(DNS_DB_VALID(db));
REQUIRE(iteratorp != NULL && *iteratorp == NULL);
return ((db->methods->allrdatasets)(db, node, version, iteratorp));
}
dns_result_t
dns_db_addrdataset(dns_db_t *db, dns_dbnode_t *node, dns_dbversion_t *version,
dns_rdataset_t *rdataset)

View file

@ -98,6 +98,9 @@ typedef struct dns_dbmethods {
dns_dbversion_t *version,
dns_rdatatype_t type,
dns_rdataset_t *rdataset);
dns_result_t (*allrdatasets)(dns_db_t *db, dns_dbnode_t *node,
dns_dbversion_t *version,
dns_rdatasetiter_t **iteratorp);
dns_result_t (*addrdataset)(dns_db_t *db, dns_dbnode_t *node,
dns_dbversion_t *version,
dns_rdataset_t *rdataset);
@ -521,6 +524,38 @@ dns_db_findrdataset(dns_db_t *db, dns_dbnode_t *node, dns_dbversion_t *version,
* implementation used.
*/
dns_result_t
dns_db_allrdatasets(dns_db_t *db, dns_dbnode_t *node, dns_dbversion_t *version,
dns_rdatasetiter_t **iteratorp);
/*
* Make '*iteratorp' an rdataset iteratator for all rdatasets at 'node' in
* version 'version' of 'db'.
*
* Notes:
*
* If 'version' is NULL, then the current version will be used.
*
* Requires:
*
* 'db' is a valid database.
*
* 'node' is a valid node.
*
* iteratorp != NULL && *iteratorp == NULL
*
* Ensures:
*
* On success, '*iteratorp' is a valid rdataset iterator.
*
* Returns:
*
* DNS_R_SUCCESS
* DNS_R_NOTFOUND
*
* Other results are possible, depending upon the database
* implementation used.
*/
dns_result_t
dns_db_addrdataset(dns_db_t *db, dns_dbnode_t *node, dns_dbversion_t *version,
dns_rdataset_t *rdataset);
@ -592,10 +627,6 @@ dns_db_deleterdataset(dns_db_t *db, dns_dbnode_t *node,
* implementation used.
*/
/*
* XXX Need rdataset iterator for ANY queries.
*/
ISC_LANG_ENDDECLS
#endif /* DNS_DB_H */