rdatasetiter.h File Reference

The DNS Rdataset Iterator interface allows iteration of all of the rdatasets at a node. More...

#include <isc/lang.h>
#include <isc/magic.h>
#include <isc/stdtime.h>
#include <dns/types.h>

Go to the source code of this file.

Data Structures

struct  dns_rdatasetitermethods
struct  dns_rdatasetiter
 This structure is actually just the common prefix of a DNS db implementation's version of a dns_rdatasetiter_t. More...

Defines

#define DNS_RDATASETITER_H   1
#define DNS_RDATASETITER_MAGIC   ISC_MAGIC('D','N','S','i')
#define DNS_RDATASETITER_VALID(i)   ISC_MAGIC_VALID(i, DNS_RDATASETITER_MAGIC)

Typedefs

typedef ISC_LANG_BEGINDECLS
struct dns_rdatasetitermethods 
dns_rdatasetitermethods_t

Functions

void dns_rdatasetiter_destroy (dns_rdatasetiter_t **iteratorp)
 Destroy '*iteratorp'.
isc_result_t dns_rdatasetiter_first (dns_rdatasetiter_t *iterator)
 Move the rdataset cursor to the first rdataset at the node (if any).
isc_result_t dns_rdatasetiter_next (dns_rdatasetiter_t *iterator)
 Move the rdataset cursor to the next rdataset at the node (if any).
void dns_rdatasetiter_current (dns_rdatasetiter_t *iterator, dns_rdataset_t *rdataset)
 Return the current rdataset.


Detailed Description

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:

Reliability: Resources: Security: Standards:

Definition in file rdatasetiter.h.


Define Documentation

#define DNS_RDATASETITER_H   1

Definition at line 21 of file rdatasetiter.h.

#define DNS_RDATASETITER_MAGIC   ISC_MAGIC('D','N','S','i')

Definition at line 84 of file rdatasetiter.h.

Referenced by allrdatasets().

#define DNS_RDATASETITER_VALID (  )     ISC_MAGIC_VALID(i, DNS_RDATASETITER_MAGIC)

Definition at line 85 of file rdatasetiter.h.

Referenced by dns_rdatasetiter_current(), dns_rdatasetiter_destroy(), dns_rdatasetiter_first(), dns_rdatasetiter_next(), rdatasetiter_destroy(), rdatasetiter_first(), and rdatasetiter_next().


Typedef Documentation

typedef ISC_LANG_BEGINDECLS struct dns_rdatasetitermethods dns_rdatasetitermethods_t


Function Documentation

void dns_rdatasetiter_destroy ( dns_rdatasetiter_t **  iteratorp  ) 

Destroy '*iteratorp'.

Requires:

Ensures:

Definition at line 32 of file rdatasetiter.c.

References DNS_RDATASETITER_VALID, ENSURE, and REQUIRE.

Referenced by active_node(), add_exposed_sigs(), allrdatasets(), check_hints(), check_no_rrsig(), check_ttls(), cleannode(), cleanup_zone(), clearnode(), client_resfind(), del_sig(), dns_master_dumpnodetostream(), dns_nsec3_buildrdata(), dns_nsec_buildrdata(), dns_rriterator_destroy(), dns_rriterator_first(), dns_rriterator_nextrrset(), dumpnode(), dumptostreaminc(), foreach_rrset(), get_name_diff(), is_empty(), iterate_node(), name_exists(), next_active(), nsecify(), query_find(), receive_secure_db(), remove_records(), remove_sigs(), rpz_find_p(), sign_a_node(), signname(), verifynode(), verifyset(), zone_check_dup(), and zone_nsec3chain().

isc_result_t dns_rdatasetiter_first ( dns_rdatasetiter_t iterator  ) 

Move the rdataset cursor to the first rdataset at the node (if any).

Requires:

Returns:

Definition at line 46 of file rdatasetiter.c.

References DNS_RDATASETITER_VALID, dns_rdatasetiter::methods, and REQUIRE.

Referenced by active_node(), add_exposed_sigs(), check_no_rrsig(), check_node(), check_ttls(), cleannode(), cleanup_zone(), clearnode(), client_resfind(), del_sig(), dns_nsec3_buildrdata(), dns_nsec_buildrdata(), dns_rriterator_first(), dns_rriterator_nextrrset(), dump_rdatasets_raw(), dump_rdatasets_text(), dumpnode(), foreach_rrset(), get_name_diff(), is_empty(), iterate_node(), name_exists(), next_active(), nsecify(), query_find(), receive_secure_db(), remove_records(), remove_sigs(), rpz_find_p(), sign_a_node(), signname(), verifynode(), verifyset(), zone_check_dup(), and zone_nsec3chain().

isc_result_t dns_rdatasetiter_next ( dns_rdatasetiter_t iterator  ) 

Move the rdataset cursor to the next rdataset at the node (if any).

Requires:

Returns:

Definition at line 57 of file rdatasetiter.c.

References DNS_RDATASETITER_VALID, dns_rdatasetiter::methods, and REQUIRE.

Referenced by active_node(), add_exposed_sigs(), check_no_rrsig(), check_node(), check_ttls(), cleannode(), cleanup_zone(), clearnode(), client_resfind(), del_sig(), dns_nsec3_buildrdata(), dns_nsec_buildrdata(), dns_rriterator_nextrrset(), dump_rdatasets_raw(), dump_rdatasets_text(), dumpnode(), foreach_rrset(), get_name_diff(), iterate_node(), nsecify(), query_find(), receive_secure_db(), remove_records(), remove_sigs(), rpz_find_p(), sign_a_node(), signname(), verifynode(), verifyset(), zone_check_dup(), and zone_nsec3chain().

void dns_rdatasetiter_current ( dns_rdatasetiter_t iterator,
dns_rdataset_t rdataset 
)

Return the current rdataset.

Requires:

Definition at line 68 of file rdatasetiter.c.

References dns_rdataset_isassociated(), DNS_RDATASET_VALID, DNS_RDATASETITER_VALID, dns_rdatasetiter::methods, and REQUIRE.

Referenced by active_node(), add_exposed_sigs(), check_no_rrsig(), check_node(), check_ttls(), cleannode(), cleanup_zone(), clearnode(), client_resfind(), del_sig(), dns_nsec3_buildrdata(), dns_nsec_buildrdata(), dns_rriterator_first(), dns_rriterator_nextrrset(), dump_rdatasets_raw(), dump_rdatasets_text(), dumpnode(), foreach_rrset(), get_name_diff(), iterate_node(), nsecify(), query_find(), receive_secure_db(), remove_records(), remove_sigs(), rpz_find_p(), sign_a_node(), signname(), verifynode(), verifyset(), zone_check_dup(), and zone_nsec3chain().


Generated on Tue Apr 28 17:41:10 2015 by Doxygen 1.5.4 for BIND9 Internals 9.11.0pre-alpha