/usr/include/dns/dlz_dlopen.h is in libbind-dev 1:9.11.3+dfsg-1ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 | /*
* Copyright (C) 2011-2013, 2016, 2017 Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
/* $Id$ */
/*! \file dns/dlz_dlopen.h */
#ifndef DLZ_DLOPEN_H
#define DLZ_DLOPEN_H
#include <dns/sdlz.h>
ISC_LANG_BEGINDECLS
/*
* This header provides a minimal set of defines and typedefs needed
* for the entry points of an external DLZ module for bind9.
*/
#define DLZ_DLOPEN_VERSION 3
#define DLZ_DLOPEN_AGE 0
/*
* dlz_dlopen_version() is required for all DLZ external drivers. It
* should return DLZ_DLOPEN_VERSION
*/
typedef int dlz_dlopen_version_t(unsigned int *flags);
/*
* dlz_dlopen_create() is required for all DLZ external drivers.
*/
typedef isc_result_t dlz_dlopen_create_t(const char *dlzname,
unsigned int argc,
char *argv[],
void **dbdata,
...);
/*
* dlz_dlopen_destroy() is optional, and will be called when the
* driver is unloaded if supplied
*/
typedef void dlz_dlopen_destroy_t(void *dbdata);
/*
* dlz_dlopen_findzonedb() is required for all DLZ external drivers
*/
typedef isc_result_t dlz_dlopen_findzonedb_t(void *dbdata,
const char *name,
dns_clientinfomethods_t *methods,
dns_clientinfo_t *clientinfo);
/*
* dlz_dlopen_lookup() is required for all DLZ external drivers
*/
typedef isc_result_t dlz_dlopen_lookup_t(const char *zone,
const char *name,
void *dbdata,
dns_sdlzlookup_t *lookup,
dns_clientinfomethods_t *methods,
dns_clientinfo_t *clientinfo);
/*
* dlz_dlopen_authority is optional() if dlz_dlopen_lookup()
* supplies authority information for the dns record
*/
typedef isc_result_t dlz_dlopen_authority_t(const char *zone,
void *dbdata,
dns_sdlzlookup_t *lookup);
/*
* dlz_dlopen_allowzonexfr() is optional, and should be supplied if
* you want to support zone transfers
*/
typedef isc_result_t dlz_dlopen_allowzonexfr_t(void *dbdata,
const char *name,
const char *client);
/*
* dlz_dlopen_allnodes() is optional, but must be supplied if supply a
* dlz_dlopen_allowzonexfr() function
*/
typedef isc_result_t dlz_dlopen_allnodes_t(const char *zone,
void *dbdata,
dns_sdlzallnodes_t *allnodes);
/*
* dlz_dlopen_newversion() is optional. It should be supplied if you
* want to support dynamic updates.
*/
typedef isc_result_t dlz_dlopen_newversion_t(const char *zone,
void *dbdata,
void **versionp);
/*
* dlz_closeversion() is optional, but must be supplied if you supply
* a dlz_newversion() function
*/
typedef void dlz_dlopen_closeversion_t(const char *zone,
isc_boolean_t commit,
void *dbdata,
void **versionp);
/*
* dlz_dlopen_configure() is optional, but must be supplied if you
* want to support dynamic updates
*/
typedef isc_result_t dlz_dlopen_configure_t(dns_view_t *view,
dns_dlzdb_t *dlzdb,
void *dbdata);
/*
* dlz_dlopen_setclientcallback() is optional, but must be supplied if you
* want to retrieve information about the client (e.g., source address)
* before sending a replay.
*/
typedef isc_result_t dlz_dlopen_setclientcallback_t(dns_view_t *view,
void *dbdata);
/*
* dlz_dlopen_ssumatch() is optional, but must be supplied if you want
* to support dynamic updates
*/
typedef isc_boolean_t dlz_dlopen_ssumatch_t(const char *signer,
const char *name,
const char *tcpaddr,
const char *type,
const char *key,
isc_uint32_t keydatalen,
unsigned char *keydata,
void *dbdata);
/*
* dlz_dlopen_addrdataset() is optional, but must be supplied if you
* want to support dynamic updates
*/
typedef isc_result_t dlz_dlopen_addrdataset_t(const char *name,
const char *rdatastr,
void *dbdata,
void *version);
/*
* dlz_dlopen_subrdataset() is optional, but must be supplied if you
* want to support dynamic updates
*/
typedef isc_result_t dlz_dlopen_subrdataset_t(const char *name,
const char *rdatastr,
void *dbdata,
void *version);
/*
* dlz_dlopen_delrdataset() is optional, but must be supplied if you
* want to support dynamic updates
*/
typedef isc_result_t dlz_dlopen_delrdataset_t(const char *name,
const char *type,
void *dbdata,
void *version);
ISC_LANG_ENDDECLS
#endif
|