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_ttree 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              Returns LDNS_STATUS_OK if there is a trusted path to one of
91                                     the  keys,  or  the *first* error encoun‐
92              tered
93                                     if there were no paths
94
95       ldns_dnssec_trust_tree_print() Prints the  dnssec_trust_tree  structure
96              to the given file stream.
97
98              If  a link status is not LDNS_STATUS_OK; the status and relevant
99              signatures are printed too
100
101              *out: The file stream to print to
102              tree: The trust tree to print
103              tabs: Prepend each line with tabs*2 spaces
104              extended: If true, add little explanation lines to the output
105
106       ldns_dnssec_trust_tree_print_sm()
107
108       ldns_dnssec_trust_tree_add_parent() Adds a trust tree as a  parent  for
109              the given trust tree
110
111              *tree: The tree to add the parent to
112              *parent: The parent tree to add
113              *parent_signature: The RRSIG relevant to this parent/child
114                                           connection
115              parent_status:  The  DNSSEC  status  for  this parent, child and
116              RRSIG
117              Returns LDNS_STATUS_OK if the addition succeeds, error otherwise
118
119       ldns_dnssec_derive_trust_tree_normal_rrset()    Sub    function     for
120              derive_trust_tree that is used for a 'normal' rrset
121
122              new_tree: The trust tree that we are building
123              data_chain:  The  data  chain  containing the data for the trust
124              tree
125              cur_sig_rr: The currently relevant signature
126
127       ldns_dnssec_derive_trust_tree_dnskey_rrset()    Sub    function     for
128              derive_trust_tree that is used for DNSKEY rrsets
129
130              new_tree: The trust tree that we are building
131              data_chain:  The  data  chain  containing the data for the trust
132              tree
133              cur_rr: The currently relevant DNSKEY RR
134              cur_sig_rr: The currently relevant signature
135
136       ldns_dnssec_derive_trust_tree_ds_rrset()     Sub      function      for
137              derive_trust_tree that is used for DS rrsets
138
139              new_tree: The trust tree that we are building
140              data_chain:  The  data  chain  containing the data for the trust
141              tree
142              cur_rr: The currently relevant DS RR
143
144       ldns_dnssec_derive_trust_tree_no_sig()      Sub      function       for
145              derive_trust_tree that is used when there are no signatures
146
147              new_tree: The trust tree that we are building
148              data_chain:  The  data  chain  containing the data for the trust
149              tree
150

AUTHOR

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

REPORTING BUGS

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

SEE ALSO

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

REMARKS

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