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.96 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
(38.11 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.4 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: rdatasetiter.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_RDATASETITER_H #define DNS_RDATASETITER_H 1 /***** ***** Module Info *****/ /*! \file dns/rdatasetiter.h * \brief * The DNS Rdataset Iterator interface allows iteration of all of the * rdatasets at a node. * * The dns_rdatasetiter_t type is like a "virtual class". To actually use * it, an implementation of the class is required. This implementation is * supplied by the database. * * It is the client's responsibility to call dns_rdataset_disassociate() * on all rdatasets returned. * * XXX more XXX * * MP: *\li The iterator itself is not locked. The caller must ensure * synchronization. * *\li The iterator methods ensure appropriate database locking. * * Reliability: *\li No anticipated impact. * * Resources: *\li TBS * * Security: *\li No anticipated impact. * * Standards: *\li None. */ /***** ***** Imports *****/ #include <isc/lang.h> #include <isc/magic.h> #include <isc/stdtime.h> #include <dns/types.h> ISC_LANG_BEGINDECLS /***** ***** Types *****/ typedef struct dns_rdatasetitermethods { void (*destroy)(dns_rdatasetiter_t **iteratorp); isc_result_t (*first)(dns_rdatasetiter_t *iterator); isc_result_t (*next)(dns_rdatasetiter_t *iterator); void (*current)(dns_rdatasetiter_t *iterator, dns_rdataset_t *rdataset); } dns_rdatasetitermethods_t; #define DNS_RDATASETITER_MAGIC ISC_MAGIC('D','N','S','i') #define DNS_RDATASETITER_VALID(i) ISC_MAGIC_VALID(i, DNS_RDATASETITER_MAGIC) /*% * This structure is actually just the common prefix of a DNS db * implementation's version of a dns_rdatasetiter_t. * \brief * Direct use of this structure by clients is forbidden. DB implementations * may change the structure. 'magic' must be #DNS_RDATASETITER_MAGIC for * any of the dns_rdatasetiter routines to work. DB implementations must * maintain all DB rdataset iterator invariants. */ struct dns_rdatasetiter { /* Unlocked. */ unsigned int magic; dns_rdatasetitermethods_t * methods; dns_db_t * db; dns_dbnode_t * node; dns_dbversion_t * version; isc_stdtime_t now; }; void dns_rdatasetiter_destroy(dns_rdatasetiter_t **iteratorp); /*%< * Destroy '*iteratorp'. * * Requires: * *\li '*iteratorp' is a valid iterator. * * Ensures: * *\li All resources used by the iterator are freed. * *\li *iteratorp == NULL. */ isc_result_t dns_rdatasetiter_first(dns_rdatasetiter_t *iterator); /*%< * Move the rdataset cursor to the first rdataset at the node (if any). * * Requires: *\li 'iterator' is a valid iterator. * * Returns: *\li ISC_R_SUCCESS *\li ISC_R_NOMORE There are no rdatasets at the node. * *\li Other results are possible, depending on the DB implementation. */ isc_result_t dns_rdatasetiter_next(dns_rdatasetiter_t *iterator); /*%< * Move the rdataset cursor to the next rdataset at the node (if any). * * Requires: *\li 'iterator' is a valid iterator. * * Returns: *\li ISC_R_SUCCESS *\li ISC_R_NOMORE There are no more rdatasets at the * node. * *\li Other results are possible, depending on the DB implementation. */ void dns_rdatasetiter_current(dns_rdatasetiter_t *iterator, dns_rdataset_t *rdataset); /*%< * Return the current rdataset. * * Requires: *\li 'iterator' is a valid iterator. * *\li 'rdataset' is a valid, disassociated rdataset. * *\li The rdataset cursor of 'iterator' is at a valid location (i.e. the * result of last call to a cursor movement command was #ISC_R_SUCCESS). */ ISC_LANG_ENDDECLS #endif /* DNS_RDATASETITER_H */
Upload File
Create Folder