1 /* $NetBSD: rbtdb.h,v 1.5 2014/12/10 04:37:58 christos Exp $ */ 2 3 /* 4 * Copyright (C) 2004, 2005, 2007, 2011, 2012 Internet Systems Consortium, Inc. ("ISC") 5 * Copyright (C) 1999-2001 Internet Software Consortium. 6 * 7 * Permission to use, copy, modify, and/or distribute this software for any 8 * purpose with or without fee is hereby granted, provided that the above 9 * copyright notice and this permission notice appear in all copies. 10 * 11 * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH 12 * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY 13 * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, 14 * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 15 * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE 16 * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 17 * PERFORMANCE OF THIS SOFTWARE. 18 */ 19 20 /* Id */ 21 22 #ifndef DNS_RBTDB_H 23 #define DNS_RBTDB_H 1 24 25 #include <isc/lang.h> 26 #include <dns/types.h> 27 28 /***** 29 ***** Module Info 30 *****/ 31 32 /*! \file 33 * \brief 34 * DNS Red-Black Tree DB Implementation 35 */ 36 37 ISC_LANG_BEGINDECLS 38 39 isc_result_t 40 dns_rbtdb_create(isc_mem_t *mctx, dns_name_t *base, dns_dbtype_t type, 41 dns_rdataclass_t rdclass, unsigned int argc, char *argv[], 42 void *driverarg, dns_db_t **dbp); 43 44 /*%< 45 * Create a new database of type "rbt" (or "rbt64"). Called via 46 * dns_db_create(); see documentation for that function for more details. 47 * 48 * If argv[0] is set, it points to a valid memory context to be used for 49 * allocation of heap memory. Generally this is used for cache databases 50 * only. 51 * 52 * Requires: 53 * 54 * \li argc == 0 or argv[0] is a valid memory context. 55 */ 56 57 ISC_LANG_ENDDECLS 58 59 #endif /* DNS_RBTDB_H */ 60