1 /* $NetBSD: qpzone_p.h,v 1.2 2025/01/26 16:25:24 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 #pragma once 17 18 #include <isc/heap.h> 19 #include <isc/lang.h> 20 #include <isc/urcu.h> 21 22 #include <dns/nsec3.h> 23 #include <dns/qp.h> 24 #include <dns/types.h> 25 26 /***** 27 ***** Module Info 28 *****/ 29 30 /*! \file 31 * \brief 32 * DNS QP-Trie DB Implementation 33 */ 34 35 ISC_LANG_BEGINDECLS 36 37 isc_result_t 38 dns__qpzone_create(isc_mem_t *mctx, const dns_name_t *base, dns_dbtype_t type, 39 dns_rdataclass_t rdclass, unsigned int argc, char **argv, 40 void *driverarg, dns_db_t **dbp); 41 /*%< 42 * Create a new database of type "qpzone". Called via dns_db_create(); 43 * see documentation for that function for more details. 44 * 45 * If argv[0] is set, it points to a valid memory context to be used for 46 * allocation of heap memory. Generally this is used for cache databases 47 * only. 48 * 49 * Requires: 50 * 51 * \li argc == 0 or argv[0] is a valid memory context. 52 */ 53 ISC_LANG_ENDDECLS 54