1/* $NetBSD: rbtdb.h,v 1.1 2024/02/18 20:57:33 christos Exp $ */ 2 3/* 4 * Copyright (C) Internet Systems Consortium, Inc. ("ISC") 5 * 6 * SPDX-License-Identifier: MPL-2.0 7 * 8 * This Source Code Form is subject to the terms of the Mozilla Public 9 * License, v. 2.0. If a copy of the MPL was not distributed with this 10 * file, you can obtain one at https://mozilla.org/MPL/2.0/. 11 * 12 * See the COPYRIGHT file distributed with this work for additional 13 * information regarding copyright ownership. 14 */ 15 16#ifndef DNS_RBTDB_H 17#define DNS_RBTDB_H 1 18 19#include <isc/lang.h> 20 21#include <dns/types.h> 22 23/***** 24***** Module Info 25*****/ 26 27/*! \file 28 * \brief 29 * DNS Red-Black Tree DB Implementation 30 */ 31 32ISC_LANG_BEGINDECLS 33 34isc_result_t 35dns_rbtdb_create(isc_mem_t *mctx, const dns_name_t *base, dns_dbtype_t type, 36 dns_rdataclass_t rdclass, unsigned int argc, char *argv[], 37 void *driverarg, dns_db_t **dbp); 38 39/*%< 40 * Create a new database of type "rbt" (or "rbt64"). Called via 41 * dns_db_create(); see documentation for that function for more details. 42 * 43 * If argv[0] is set, it points to a valid memory context to be used for 44 * allocation of heap memory. Generally this is used for cache databases 45 * only. 46 * 47 * Requires: 48 * 49 * \li argc == 0 or argv[0] is a valid memory context. 50 */ 51 52ISC_LANG_ENDDECLS 53 54#endif /* DNS_RBTDB_H */ 55