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 32 ISC_LANG_BEGINDECLS 33 34 isc_result_t 35 dns_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 52 ISC_LANG_ENDDECLS 53 54 #endif /* DNS_RBTDB_H */ 55