.TH ldns 3 "30 May 2006" .SH NAME ldns_dnssec_trust_tree_new, ldns_dnssec_trust_tree_free, ldns_dnssec_trust_tree_depth, ldns_dnssec_derive_trust_tree, ldns_dnssec_trust_tree_contains_keys, ldns_dnssec_trust_tree_print, ldns_dnssec_trust_tree_print_sm, ldns_dnssec_trust_tree_add_parent, ldns_dnssec_derive_trust_tree_normal_rrset, ldns_dnssec_derive_trust_tree_dnskey_rrset, ldns_dnssec_derive_trust_tree_ds_rrset, ldns_dnssec_derive_trust_tree_no_sig\- .SH SYNOPSIS #include .br #include .br .PP #include .PP ldns_dnssec_trust_tree* ldns_dnssec_trust_tree_new(void); .PP void ldns_dnssec_trust_tree_free(ldns_dnssec_trust_tree *tree); .PP size_t ldns_dnssec_trust_tree_depth(ldns_dnssec_trust_tree *tree); .PP ldns_dnssec_trust_tree* ldns_dnssec_derive_trust_tree( ldns_dnssec_data_chain *data_chain, ldns_rr *rr); .PP ldns_status ldns_dnssec_trust_tree_contains_keys( ldns_dnssec_trust_tree *tree, ldns_rr_list *keys); .PP void ldns_dnssec_trust_tree_print(FILE *out, ldns_dnssec_trust_tree *tree, size_t tabs, bool extended); .PP ldns_dnssec_trust_tree_print_sm(); .PP ldns_status ldns_dnssec_trust_tree_add_parent(ldns_dnssec_trust_tree *tree, const ldns_dnssec_trust_tree *parent, const ldns_rr *parent_signature, const ldns_status parent_status); .PP void ldns_dnssec_derive_trust_tree_normal_rrset( ldns_dnssec_trust_tree *new_tree, ldns_dnssec_data_chain *data_chain, ldns_rr *cur_sig_rr); .PP void ldns_dnssec_derive_trust_tree_dnskey_rrset( ldns_dnssec_trust_tree *new_tree, ldns_dnssec_data_chain *data_chain, ldns_rr *cur_rr, ldns_rr *cur_sig_rr); .PP void ldns_dnssec_derive_trust_tree_ds_rrset( ldns_dnssec_trust_tree *new_tree, ldns_dnssec_data_chain *data_chain, ldns_rr *cur_rr); .PP void ldns_dnssec_derive_trust_tree_no_sig( ldns_dnssec_trust_tree *new_tree, ldns_dnssec_data_chain *data_chain); .PP .SH DESCRIPTION .HP \fIldns_dnssec_trust_tree_new\fR() Creates a new (empty) dnssec_trust_tree structure \.br Returns ldns_dnssec_trust_tree * .PP .HP \fIldns_dnssec_trust_tree_free\fR() Frees the dnssec_trust_tree recursively There is no deep free; all data in the trust tree consists of pointers to a data_chain \.br \fBtree\fR: The tree to free .PP .HP \fIldns_dnssec_trust_tree_depth\fR() returns the depth of the trust tree \.br \fBtree\fR: tree to calculate the depth of \.br Returns The depth of the tree .PP .HP \fIldns_dnssec_derive_trust_tree\fR() Generates a dnssec_trust_tree for the given rr from the given data_chain This does not clone the actual data; Don't free the data_chain before you are done with this tree \.br \fB*data_chain\fR: The chain to derive the trust tree from \.br \fB*rr\fR: The \%RR this tree will be about \.br Returns ldns_dnssec_trust_tree * .PP .HP \fIldns_dnssec_trust_tree_contains_keys\fR() Returns \%OK if there is a trusted path in the tree to one of the \%DNSKEY or \%DS RRs in the given list \\param *tree The trust tree so search \\param *keys \%A ldns_rr_list of \%DNSKEY and \%DS rrs to look for \.br Returns \%LDNS_STATUS_OK if there is a trusted path to one of the keys, or the *first* error encountered if there were no paths .PP .HP \fIldns_dnssec_trust_tree_print\fR() Prints the dnssec_trust_tree structure to the given file stream. If a link status is not \%LDNS_STATUS_OK; the status and relevant signatures are printed too \.br \fB*out\fR: The file stream to print to \.br \fBtree\fR: The trust tree to print \.br \fBtabs\fR: Prepend each line with tabs*2 spaces \.br \fBextended\fR: If true, add little explanation lines to the output .PP .HP \fIldns_dnssec_trust_tree_print_sm\fR() .PP .HP \fIldns_dnssec_trust_tree_add_parent\fR() Adds a trust tree as a parent for the given trust tree \.br \fB*tree\fR: The tree to add the parent to \.br \fB*parent\fR: The parent tree to add \.br \fB*parent_signature\fR: The \%RRSIG relevant to this parent/child connection \.br \fBparent_status\fR: The \%DNSSEC status for this parent, child and \%RRSIG \.br Returns \%LDNS_STATUS_OK if the addition succeeds, error otherwise .PP .HP \fIldns_dnssec_derive_trust_tree_normal_rrset\fR() Sub function for derive_trust_tree that is used for a 'normal' rrset \.br \fBnew_tree\fR: The trust tree that we are building \.br \fBdata_chain\fR: The data chain containing the data for the trust tree \.br \fBcur_sig_rr\fR: The currently relevant signature .PP .HP \fIldns_dnssec_derive_trust_tree_dnskey_rrset\fR() Sub function for derive_trust_tree that is used for \%DNSKEY rrsets \.br \fBnew_tree\fR: The trust tree that we are building \.br \fBdata_chain\fR: The data chain containing the data for the trust tree \.br \fBcur_rr\fR: The currently relevant \%DNSKEY \%RR \.br \fBcur_sig_rr\fR: The currently relevant signature .PP .HP \fIldns_dnssec_derive_trust_tree_ds_rrset\fR() Sub function for derive_trust_tree that is used for \%DS rrsets \.br \fBnew_tree\fR: The trust tree that we are building \.br \fBdata_chain\fR: The data chain containing the data for the trust tree \.br \fBcur_rr\fR: The currently relevant \%DS \%RR .PP .HP \fIldns_dnssec_derive_trust_tree_no_sig\fR() Sub function for derive_trust_tree that is used when there are no signatures \.br \fBnew_tree\fR: The trust tree that we are building \.br \fBdata_chain\fR: The data chain containing the data for the trust tree .PP .SH AUTHOR The ldns team at NLnet Labs. Which consists out of Jelte Jansen and Miek Gieben. .SH REPORTING BUGS Please report bugs to ldns-team@nlnetlabs.nl or in our bugzilla at http://www.nlnetlabs.nl/bugs/index.html .SH COPYRIGHT Copyright (c) 2004 - 2006 NLnet Labs. .PP Licensed under the BSD License. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. .SH SEE ALSO \fIldns_dnssec_data_chain\fR, \fIldns_dnssec_trust_tree\fR. And \fBperldoc Net::DNS\fR, \fBRFC1034\fR, \fBRFC1035\fR, \fBRFC4033\fR, \fBRFC4034\fR and \fBRFC4035\fR. .SH REMARKS This manpage was automaticly generated from the ldns source code by use of Doxygen and some perl.