/
usr
/
include
/
bind9
/
dns
/
/usr/include/bind9/dns
mkdir
upload
Name
Size
Mode
Actions
acl.h
6477
0644
edit
dl
rm
adb.h
22267
0644
edit
dl
rm
badcache.h
3387
0644
edit
dl
rm
bit.h
798
0644
edit
dl
rm
byaddr.h
3598
0644
edit
dl
rm
cache.h
8730
0644
edit
dl
rm
callbacks.h
2280
0644
edit
dl
rm
catz.h
11881
0644
edit
dl
rm
cert.h
1465
0644
edit
dl
rm
client.h
14527
0644
edit
dl
rm
clientinfo.h
2015
0644
edit
dl
rm
compress.h
7047
0644
edit
dl
rm
db.h
50446
0644
edit
dl
rm
dbiterator.h
7385
0644
edit
dl
rm
dbtable.h
3167
0644
edit
dl
rm
diff.h
7039
0644
edit
dl
rm
dispatch.h
15538
0644
edit
dl
rm
dlz.h
10876
0644
edit
dl
rm
dlz_dlopen.h
4394
0644
edit
dl
rm
dns64.h
5720
0644
edit
dl
rm
dnsrps.h
2572
0644
edit
dl
rm
dnssec.h
12841
0644
edit
dl
rm
dnstap.h
10193
0644
edit
dl
rm
ds.h
1665
0644
edit
dl
rm
dsdigest.h
1713
0644
edit
dl
rm
dyndb.h
4869
0644
edit
dl
rm
ecdb.h
806
0644
edit
dl
rm
ecs.h
1250
0644
edit
dl
rm
edns.h
783
0644
edit
dl
rm
enumclass.h
1220
0644
edit
dl
rm
enumtype.h
8485
0644
edit
dl
rm
events.h
4451
0644
edit
dl
rm
fixedname.h
1652
0644
edit
dl
rm
forward.h
3060
0644
edit
dl
rm
geoip.h
2340
0644
edit
dl
rm
ipkeylist.h
2219
0644
edit
dl
rm
iptable.h
1521
0644
edit
dl
rm
journal.h
9712
0644
edit
dl
rm
kasp.h
12124
0644
edit
dl
rm
keydata.h
1047
0644
edit
dl
rm
keyflags.h
1277
0644
edit
dl
rm
keymgr.h
4107
0644
edit
dl
rm
keytable.h
7871
0644
edit
dl
rm
keyvalues.h
4083
0644
edit
dl
rm
lib.h
993
0644
edit
dl
rm
librpz.h
31401
0644
edit
dl
rm
lmdb.h
779
0644
edit
dl
rm
log.h
4029
0644
edit
dl
rm
lookup.h
2921
0644
edit
dl
rm
master.h
8786
0644
edit
dl
rm
masterdump.h
10133
0644
edit
dl
rm
message.h
39567
0644
edit
dl
rm
name.h
37781
0644
edit
dl
rm
ncache.h
4960
0644
edit
dl
rm
nsec.h
3065
0644
edit
dl
rm
nsec3.h
8258
0644
edit
dl
rm
nta.h
4846
0644
edit
dl
rm
opcode.h
1006
0644
edit
dl
rm
order.h
2010
0644
edit
dl
rm
peer.h
6475
0644
edit
dl
rm
portlist.h
2101
0644
edit
dl
rm
private.h
1962
0644
edit
dl
rm
rbt.h
37484
0644
edit
dl
rm
rcode.h
2472
0644
edit
dl
rm
rdata.h
22564
0644
edit
dl
rm
rdataclass.h
2248
0644
edit
dl
rm
rdatalist.h
2557
0644
edit
dl
rm
rdataset.h
18714
0644
edit
dl
rm
rdatasetiter.h
3912
0644
edit
dl
rm
rdataslab.h
4267
0644
edit
dl
rm
rdatastruct.h
62703
0644
edit
dl
rm
rdatatype.h
2290
0644
edit
dl
rm
request.h
9187
0644
edit
dl
rm
resolver.h
20152
0644
edit
dl
rm
result.h
9196
0644
edit
dl
rm
rootns.h
891
0644
edit
dl
rm
rpz.h
12156
0644
edit
dl
rm
rriterator.h
4214
0644
edit
dl
rm
rrl.h
6959
0644
edit
dl
rm
sdb.h
7350
0644
edit
dl
rm
sdlz.h
14090
0644
edit
dl
rm
secalg.h
1705
0644
edit
dl
rm
secproto.h
1556
0644
edit
dl
rm
soa.h
2179
0644
edit
dl
rm
ssu.h
7182
0644
edit
dl
rm
stats.h
24689
0644
edit
dl
rm
tcpmsg.h
3128
0644
edit
dl
rm
time.h
1693
0644
edit
dl
rm
timer.h
1050
0644
edit
dl
rm
tkey.h
7655
0644
edit
dl
rm
tsec.h
2946
0644
edit
dl
rm
tsig.h
8497
0644
edit
dl
rm
ttl.h
1876
0644
edit
dl
rm
types.h
14584
0644
edit
dl
rm
update.h
2004
0644
edit
dl
rm
validator.h
6679
0644
edit
dl
rm
version.h
679
0644
edit
dl
rm
view.h
35341
0644
edit
dl
rm
xfrin.h
2314
0644
edit
dl
rm
zone.h
65543
0644
edit
dl
rm
zonekey.h
776
0644
edit
dl
rm
zoneverify.h
1393
0644
edit
dl
rm
zt.h
5241
0644
edit
dl
rm
Edit:
/usr/include/bind9/dns/dns64.h
(5720B)
/* * Copyright (C) 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 https://mozilla.org/MPL/2.0/. * * See the COPYRIGHT file distributed with this work for additional * information regarding copyright ownership. */ #ifndef DNS_DNS64_H #define DNS_DNS64_H 1 #include <stdbool.h> #include <isc/lang.h> #include <dns/types.h> ISC_LANG_BEGINDECLS /* * dns_dns64_create() flags. */ #define DNS_DNS64_RECURSIVE_ONLY \ 0x01 /* If set then this record \ * only applies to recursive \ * queries. \ */ #define DNS_DNS64_BREAK_DNSSEC \ 0x02 /* If set then still perform \ * DNSSEC synthesis even \ * though the result would \ * fail validation. \ */ /* * dns_dns64_aaaaok() and dns_dns64_aaaafroma() flags. */ #define DNS_DNS64_RECURSIVE 0x01 /* Recursive query. */ #define DNS_DNS64_DNSSEC 0x02 /* DNSSEC sensitive query. */ isc_result_t dns_dns64_create(isc_mem_t *mctx, const isc_netaddr_t *prefix, unsigned int prefixlen, const isc_netaddr_t *suffix, dns_acl_t *client, dns_acl_t *mapped, dns_acl_t *excluded, unsigned int flags, dns_dns64_t **dns64); /* * Create a dns64 record which is used to identify the set of clients * it applies to and how to perform the DNS64 synthesis. * * 'prefix' and 'prefixlen' defined the leading bits of the AAAA records * to be synthesised. 'suffix' defines the bits after the A records bits. * If suffix is NULL zeros will be used for these bits. 'client' defines * for which clients this record applies. If 'client' is NULL then all * clients apply. 'mapped' defines which A records are candidated for * mapping. If 'mapped' is NULL then all A records will be mapped. * 'excluded' defines which AAAA are to be treated as non-existent for the * purposed of determining whether to perform synthesis. If 'excluded' is * NULL then no AAAA records prevent synthesis. * * If DNS_DNS64_RECURSIVE_ONLY is set then the record will only match if * DNS_DNS64_RECURSIVE is set when calling dns_dns64_aaaaok() and * dns_dns64_aaaafroma(). * * If DNS_DNS64_BREAK_DNSSEC is set then the record will still apply if * DNS_DNS64_DNSSEC is set when calling dns_dns64_aaaaok() and * dns_dns64_aaaafroma() otherwise the record will be ignored. * * Requires: * 'mctx' to be valid. * 'prefix' to be valid and the address family to AF_INET6. * 'prefixlen' to be one of 32, 40, 48, 56, 72 and 96. * the bits not covered by prefixlen in prefix to * be zero. * 'suffix' to be NULL or the address family be set to AF_INET6 * and the leading 'prefixlen' + 32 bits of the 'suffix' * to be zero. If 'prefixlen' is 40, 48 or 56 then the * the leading 'prefixlen' + 40 bits of 'suffix' must be * zero. * 'client' to be NULL or a valid acl. * 'mapped' to be NULL or a valid acl. * 'excluded' to be NULL or a valid acl. * * Returns: * ISC_R_SUCCESS * ISC_R_NOMEMORY */ void dns_dns64_destroy(dns_dns64_t **dns64p); /* * Destroys a dns64 record. * * Requires the record to not be linked. */ isc_result_t dns_dns64_aaaafroma(const dns_dns64_t *dns64, const isc_netaddr_t *reqaddr, const dns_name_t *reqsigner, const dns_aclenv_t *env, unsigned int flags, unsigned char *a, unsigned char *aaaa); /* * dns_dns64_aaaafroma() determines whether to perform a DNS64 address * synthesis from 'a' based on 'dns64', 'reqaddr', 'reqsigner', 'env', * 'flags' and 'aaaa'. If synthesis is performed then the result is * written to '*aaaa'. * * The synthesised address will be of the form: * * <prefix bits><a bits><suffix bits> * * If <a bits> straddle bits 64-71 of the AAAA record, then 8 zero bits will * be inserted at bits 64-71. * * Requires: * 'dns64' to be valid. * 'reqaddr' to be valid. * 'reqsigner' to be NULL or valid. * 'env' to be valid. * 'a' to point to a IPv4 address in network order. * 'aaaa' to point to a IPv6 address buffer in network order. * * Returns: * ISC_R_SUCCESS if synthesis was performed. * DNS_R_DISALLOWED if there is no match. */ dns_dns64_t * dns_dns64_next(dns_dns64_t *dns64); /* * Return the next dns64 record in the list. */ void dns_dns64_append(dns_dns64list_t *list, dns_dns64_t *dns64); /* * Append the dns64 record to the list. */ void dns_dns64_unlink(dns_dns64list_t *list, dns_dns64_t *dns64); /* * Unlink the dns64 record from the list. */ bool dns_dns64_aaaaok(const dns_dns64_t *dns64, const isc_netaddr_t *reqaddr, const dns_name_t *reqsigner, const dns_aclenv_t *env, unsigned int flags, dns_rdataset_t *rdataset, bool *aaaaok, size_t aaaaoklen); /* * Determine if there are any non-excluded AAAA records in from the * matching dns64 records in the list starting at 'dns64'. If there * is a non-excluded address return true. If all addresses are * excluded in the matched records return false. If no records * match then return true. * * If aaaaok is defined then dns_dns64_aaaaok() return a array of which * addresses in 'rdataset' were deemed to not be exclude by any matching * record. If there are no matching records then all entries are set * to true. * * Requires * 'rdataset' to be valid and to be for type AAAA and class IN. * 'aaaaoklen' must match the number of records in 'rdataset' * if 'aaaaok' in non NULL. */ ISC_LANG_ENDDECLS #endif /* DNS_DNS64_H */
Save
cmd:
run