.ad l .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 \- functions for ldns_dnssec_trust_tree .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. .SH REPORTING BUGS Please report bugs to dns-team@nlnetlabs.nl or on GitHub at https://github.com/NLnetLabs/ldns/issues .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 automatically generated from the ldns source code.