X7ROOT File Manager
Current Path:
/usr/include/bind9/dns
usr
/
include
/
bind9
/
dns
/
ðŸ“
..
📄
acache.h
(13.9 KB)
📄
acl.h
(7.07 KB)
📄
adb.h
(22.07 KB)
📄
badcache.h
(3.29 KB)
📄
bit.h
(807 B)
📄
byaddr.h
(3.91 KB)
📄
cache.h
(8.44 KB)
📄
callbacks.h
(2.22 KB)
📄
catz.h
(11.56 KB)
📄
cert.h
(1.43 KB)
📄
client.h
(21.53 KB)
📄
clientinfo.h
(1.96 KB)
📄
compress.h
(6.49 KB)
📄
db.h
(45.48 KB)
📄
dbiterator.h
(7.25 KB)
📄
dbtable.h
(3.09 KB)
📄
diff.h
(6.82 KB)
📄
dispatch.h
(16.04 KB)
📄
dlz.h
(10.37 KB)
📄
dlz_dlopen.h
(4.57 KB)
📄
dns64.h
(5.5 KB)
📄
dnssec.h
(11.83 KB)
📄
dnstap.h
(9.14 KB)
📄
ds.h
(1.2 KB)
📄
dsdigest.h
(1.68 KB)
📄
dyndb.h
(4.72 KB)
📄
ecdb.h
(809 B)
📄
edns.h
(722 B)
📄
enumclass.h
(1.19 KB)
📄
enumtype.h
(8.11 KB)
📄
events.h
(3.96 KB)
📄
fixedname.h
(1.62 KB)
📄
forward.h
(3.37 KB)
📄
geoip.h
(2.73 KB)
📄
ipkeylist.h
(2.13 KB)
📄
iptable.h
(1.58 KB)
📄
journal.h
(8.03 KB)
📄
keydata.h
(1.03 KB)
📄
keyflags.h
(1.25 KB)
📄
keytable.h
(9.24 KB)
📄
keyvalues.h
(4.06 KB)
📄
lib.h
(1.16 KB)
📄
log.h
(3.87 KB)
📄
lookup.h
(2.86 KB)
📄
master.h
(11.02 KB)
📄
masterdump.h
(12.35 KB)
📄
message.h
(37.92 KB)
📄
name.h
(36.25 KB)
📄
ncache.h
(4.81 KB)
📄
nsec.h
(2.86 KB)
📄
nsec3.h
(7.84 KB)
📄
nta.h
(4.44 KB)
📄
opcode.h
(1007 B)
📄
order.h
(1.95 KB)
📄
peer.h
(5.83 KB)
📄
portlist.h
(2.05 KB)
📄
private.h
(1.89 KB)
📄
rbt.h
(39.67 KB)
📄
rcode.h
(2.42 KB)
📄
rdata.h
(21.11 KB)
📄
rdataclass.h
(2.2 KB)
📄
rdatalist.h
(2.51 KB)
📄
rdataset.h
(21.03 KB)
📄
rdatasetiter.h
(3.83 KB)
📄
rdataslab.h
(4.28 KB)
📄
rdatastruct.h
(60.14 KB)
📄
rdatatype.h
(2.24 KB)
📄
request.h
(10.89 KB)
📄
resolver.h
(19.75 KB)
📄
result.h
(9.07 KB)
📄
rootns.h
(892 B)
📄
rpz.h
(10.09 KB)
📄
rriterator.h
(4.13 KB)
📄
rrl.h
(6.48 KB)
📄
sdb.h
(7.05 KB)
📄
sdlz.h
(13.88 KB)
📄
secalg.h
(1.67 KB)
📄
secproto.h
(1.52 KB)
📄
soa.h
(2.13 KB)
📄
ssu.h
(8.11 KB)
📄
stats.h
(13.14 KB)
📄
tcpmsg.h
(3.07 KB)
📄
time.h
(1.66 KB)
📄
timer.h
(1.03 KB)
📄
tkey.h
(7.45 KB)
📄
tsec.h
(2.88 KB)
📄
tsig.h
(8.19 KB)
📄
ttl.h
(1.9 KB)
📄
types.h
(13.83 KB)
📄
update.h
(1.61 KB)
📄
validator.h
(6.99 KB)
📄
version.h
(868 B)
📄
view.h
(34.45 KB)
📄
xfrin.h
(2.86 KB)
📄
zone.h
(59.44 KB)
📄
zonekey.h
(777 B)
📄
zt.h
(5.43 KB)
Editing: rdataslab.h
/* * 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_RDATASLAB_H #define DNS_RDATASLAB_H 1 /*! \file dns/rdataslab.h * \brief * Implements storage of rdatasets into slabs of memory. * * MP: *\li Clients of this module must impose any required synchronization. * * Reliability: *\li This module deals with low-level byte streams. Errors in any of * the functions are likely to crash the server or corrupt memory. * *\li If the caller passes invalid memory references, these functions are * likely to crash the server or corrupt memory. * * Resources: *\li None. * * Security: *\li None. * * Standards: *\li None. */ /*** *** Imports ***/ #include <stdbool.h> #include <isc/lang.h> #include <dns/types.h> ISC_LANG_BEGINDECLS #define DNS_RDATASLAB_FORCE 0x1 #define DNS_RDATASLAB_EXACT 0x2 #define DNS_RDATASLAB_OFFLINE 0x01 /* RRSIG is for offline DNSKEY */ #define DNS_RDATASLAB_WARNMASK 0x0E /*%< RRSIG(DNSKEY) expired * warnings number mask. */ #define DNS_RDATASLAB_WARNSHIFT 1 /*%< How many bits to shift to find * remaining expired warning number. */ /*** *** Functions ***/ isc_result_t dns_rdataslab_fromrdataset(dns_rdataset_t *rdataset, isc_mem_t *mctx, isc_region_t *region, unsigned int reservelen); /*%< * Slabify a rdataset. The slab area will be allocated and returned * in 'region'. * * Requires: *\li 'rdataset' is valid. * * Ensures: *\li 'region' will have base pointing to the start of allocated memory, * with the slabified region beginning at region->base + reservelen. * region->length contains the total length allocated. * * Returns: *\li ISC_R_SUCCESS - successful completion *\li ISC_R_NOMEMORY - no memory. *\li XXX others */ void dns_rdataslab_tordataset(unsigned char *slab, unsigned int reservelen, dns_rdataclass_t rdclass, dns_rdatatype_t rdtype, dns_rdatatype_t covers, dns_ttl_t ttl, dns_rdataset_t *rdataset); /*%< * Construct an rdataset from a slab. * * Requires: *\li 'slab' points to a slab. *\li 'rdataset' is disassociated. * * Ensures: *\li 'rdataset' is associated and points to a valid rdataest. */ unsigned int dns_rdataslab_size(unsigned char *slab, unsigned int reservelen); /*%< * Return the total size of an rdataslab. * * Requires: *\li 'slab' points to a slab. * * Returns: *\li The number of bytes in the slab, including the reservelen. */ unsigned int dns_rdataslab_count(unsigned char *slab, unsigned int reservelen); /*%< * Return the number of records in the rdataslab * * Requires: *\li 'slab' points to a slab. * * Returns: *\li The number of records in the slab. */ isc_result_t dns_rdataslab_merge(unsigned char *oslab, unsigned char *nslab, unsigned int reservelen, isc_mem_t *mctx, dns_rdataclass_t rdclass, dns_rdatatype_t type, unsigned int flags, unsigned char **tslabp); /*%< * Merge 'oslab' and 'nslab'. */ isc_result_t dns_rdataslab_subtract(unsigned char *mslab, unsigned char *sslab, unsigned int reservelen, isc_mem_t *mctx, dns_rdataclass_t rdclass, dns_rdatatype_t type, unsigned int flags, unsigned char **tslabp); /*%< * Subtract 'sslab' from 'mslab'. If 'exact' is true then all elements * of 'sslab' must exist in 'mslab'. * * XXX * valid flags are DNS_RDATASLAB_EXACT */ bool dns_rdataslab_equal(unsigned char *slab1, unsigned char *slab2, unsigned int reservelen); /*%< * Compare two rdataslabs for equality. This does _not_ do a full * DNSSEC comparison. * * Requires: *\li 'slab1' and 'slab2' point to slabs. * * Returns: *\li true if the slabs are equal, false otherwise. */ bool dns_rdataslab_equalx(unsigned char *slab1, unsigned char *slab2, unsigned int reservelen, dns_rdataclass_t rdclass, dns_rdatatype_t type); /*%< * Compare two rdataslabs for DNSSEC equality. * * Requires: *\li 'slab1' and 'slab2' point to slabs. * * Returns: *\li true if the slabs are equal, #false otherwise. */ ISC_LANG_ENDDECLS #endif /* DNS_RDATASLAB_H */
Upload File
Create Folder