1ldns(3)                    Library Functions Manual                    ldns(3)
2
3
4

NAME

6       ldns_dnssec_trust_tree_new,                ldns_dnssec_trust_tree_free,
7       ldns_dnssec_trust_tree_depth,            ldns_dnssec_derive_trust_tree,
8       ldns_dnssec_trust_tree_contains_keys,     ldns_dnssec_trust_tree_print,
9       ldns_dnssec_trust_tree_print_sm,     ldns_dnssec_trust_tree_add_parent,
10       ldns_dnssec_derive_trust_tree_normal_rrset,
11       ldns_dnssec_derive_trust_tree_dnskey_rrset,
12       ldns_dnssec_derive_trust_tree_ds_rrset,
13       ldns_dnssec_derive_trust_tree_no_sig
14
15

SYNOPSIS

17       #include <stdint.h>
18       #include <stdbool.h>
19
20       #include <ldns/ldns.h>
21
22       ldns_dnssec_trust_tree* ldns_dnssec_trust_tree_new();
23
24       void ldns_dnssec_trust_tree_free(ldns_dnssec_trust_tree *tree);
25
26       size_t ldns_dnssec_trust_tree_depth(ldns_dnssec_trust_tree *tree);
27
28       ldns_dnssec_trust_tree*                  ldns_dnssec_derive_trust_tree(
29       ldns_dnssec_data_chain *data_chain, ldns_rr *rr);
30
31       ldns_status                       ldns_dnssec_trust_tree_contains_keys(
32       ldns_dnssec_trust_tree *tree, ldns_rr_list *keys);
33
34       void  ldns_dnssec_trust_tree_print(FILE  *out,   ldns_dnssec_trust_tree
35       *tree, size_t tabs, bool extended);
36
37        ldns_dnssec_trust_tree_print_sm();
38
39       ldns_status    ldns_dnssec_trust_tree_add_parent(ldns_dnssec_trust_tree
40       *tree, const ldns_dnssec_trust_tree *parent, const ldns_rr *parent_sig‐
41       nature, const ldns_status parent_status);
42
43       void ldns_dnssec_derive_trust_tree_normal_rrset( ldns_dnssec_trust_tree
44       *new_tree, ldns_dnssec_data_chain *data_chain, ldns_rr *cur_sig_rr);
45
46       void ldns_dnssec_derive_trust_tree_dnskey_rrset( ldns_dnssec_trust_tree
47       *new_tree, ldns_dnssec_data_chain *data_chain, ldns_rr *cur_rr, ldns_rr
48       *cur_sig_rr);
49
50       void   ldns_dnssec_derive_trust_tree_ds_rrset(   ldns_dnssec_trust_tree
51       *new_tree, ldns_dnssec_data_chain *data_chain, ldns_rr *cur_rr);
52
53       void    ldns_dnssec_derive_trust_tree_no_sig(    ldns_dnssec_trust_tree
54       *new_tree, ldns_dnssec_data_chain *data_chain);
55

DESCRIPTION

57       ldns_dnssec_trust_tree_new() Creates a  new  (empty)  dnssec_trust_tree
58              structure
59
60              Returns ldns_dnssec_trust_tree *
61
62       ldns_dnssec_trust_tree_free() Frees the dnssec_trust_tree recursively
63
64              There  is  no  deep free; all data in the trust tree consists of
65              pointers to a data_chain
66
67              tree: The tree to free
68
69       ldns_dnssec_trust_tree_depth() returns the depth of the trust tree
70
71              tree: tree to calculate the depth of
72              Returns The depth of the tree
73
74       ldns_dnssec_derive_trust_tree() Generates a dnssec_trust_tree  for  the
75              given rr from the given data_chain
76
77              This  does  not clone the actual data; Don't free the data_chain
78              before you are done with this tree
79
80              *data_chain: The chain to derive the trust tree from
81              *rr: The RR this tree will be about
82              Returns ldns_dnssec_trust_tree *
83
84       ldns_dnssec_trust_tree_contains_keys() Returns OK if there is a trusted
85              path  in  the  tree  to one of the DNSKEY or DS RRs in the given
86              list
87
88              \param  *tree  The  trust  tree  so  search   \param   *keys   A
89              ldns_rr_list of DNSKEY and DS rrs to look for
90
91              Returns  LDNS_STATUS_OK if there is a trusted path to one of the
92              keys, or the *first* error encountered if there were no paths
93
94       ldns_dnssec_trust_tree_print() Prints the  dnssec_trust_tree  structure
95              to the given file stream.
96
97              If  a link status is not LDNS_STATUS_OK; the status and relevant
98              signatures are printed too
99
100              *out: The file stream to print to
101              tree: The trust tree to print
102              tabs: Prepend each line with tabs*2 spaces
103              extended: If true, add little explanation lines to the output
104
105       ldns_dnssec_trust_tree_print_sm()
106
107       ldns_dnssec_trust_tree_add_parent() Adds a trust tree as a  parent  for
108              the given trust tree
109
110              *tree: The tree to add the parent to
111              *parent: The parent tree to add
112              *parent_signature:  The RRSIG relevant to this parent/child con‐
113              nection
114              parent_status: The DNSSEC status  for  this  parent,  child  and
115              RRSIG
116              Returns LDNS_STATUS_OK if the addition succeeds, error otherwise
117
118       ldns_dnssec_derive_trust_tree_normal_rrset()     Sub    function    for
119              derive_trust_tree that is used for a 'normal' rrset
120
121              new_tree: The trust tree that we are building
122              data_chain: The data chain containing the  data  for  the  trust
123              tree
124              cur_sig_rr: The currently relevant signature
125
126       ldns_dnssec_derive_trust_tree_dnskey_rrset()     Sub    function    for
127              derive_trust_tree that is used for DNSKEY rrsets
128
129              new_tree: The trust tree that we are building
130              data_chain: The data chain containing the  data  for  the  trust
131              tree
132              cur_rr: The currently relevant DNSKEY RR
133              cur_sig_rr: The currently relevant signature
134
135       ldns_dnssec_derive_trust_tree_ds_rrset()      Sub      function     for
136              derive_trust_tree that is used for DS rrsets
137
138              new_tree: The trust tree that we are building
139              data_chain: The data chain containing the  data  for  the  trust
140              tree
141              cur_rr: The currently relevant DS RR
142
143       ldns_dnssec_derive_trust_tree_no_sig()       Sub      function      for
144              derive_trust_tree that is used when there are no signatures
145
146              new_tree: The trust tree that we are building
147              data_chain: The data chain containing the  data  for  the  trust
148              tree
149

AUTHOR

151       The  ldns  team  at  NLnet Labs. Which consists out of Jelte Jansen and
152       Miek Gieben.
153
154

REPORTING BUGS

156       Please report bugs to ldns-team@nlnetlabs.nl  or  in  our  bugzilla  at
157       http://www.nlnetlabs.nl/bugs/index.html
158
159
161       Copyright (c) 2004 - 2006 NLnet Labs.
162
163       Licensed under the BSD License. There is NO warranty; not even for MER‐
164       CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
165
166

SEE ALSO

168       ldns_dnssec_data_chain, ldns_dnssec_trust_tree.  And perldoc  Net::DNS,
169       RFC1034, RFC1035, RFC4033, RFC4034  and RFC4035.
170

REMARKS

172       This manpage was automaticly generated from the ldns source code by use
173       of Doxygen and some perl.
174
175
176
177                                  30 May 2006                          ldns(3)
Impressum