dnssec_zone.h
Go to the documentation of this file.
1 /*
2  * special zone file structures and functions for better dnssec handling
3  *
4  * A zone contains a SOA dnssec_zone_rrset, and an AVL tree of 'normal'
5  * dnssec_zone_rrsets, indexed by name and type
6  */
7 
8 #ifndef LDNS_DNSSEC_ZONE_H
9 #define LDNS_DNSSEC_ZONE_H
10 
11 #include <ldns/rbtree.h>
12 #include <ldns/host2str.h>
13 
14 #ifdef __cplusplus
15 extern "C" {
16 #endif
17 
23 {
26 };
27 
33 {
38 };
39 
46 {
81  bool is_glue;
86 };
87 
96 };
98 
104 
112 
120 
129 
136 void ldns_dnssec_rrs_print(FILE *out, ldns_dnssec_rrs *rrs);
137 
145 void ldns_dnssec_rrs_print_fmt(FILE *out,
146  const ldns_output_format *fmt, ldns_dnssec_rrs *rrs);
147 
153 
161 
169 
177 
186  ldns_rr_type type);
187 
197 
205 void ldns_dnssec_rrsets_print(FILE *out,
206  ldns_dnssec_rrsets *rrsets,
207  bool follow);
208 
217 void ldns_dnssec_rrsets_print_fmt(FILE *out,
218  const ldns_output_format *fmt,
219  ldns_dnssec_rrsets *rrsets,
220  bool follow);
221 
222 
228 
235 
243 
251 
259 
260 
268  ldns_rdf *dname);
281 
289 
300 int ldns_dnssec_name_cmp(const void *a, const void *b);
301 
311  ldns_rr *rr);
312 
321  ldns_rr_type type);
322 
332  ldns_rdf *dname,
333  ldns_rr_type type);
334 
342 void ldns_dnssec_name_print(FILE *out, ldns_dnssec_name *name);
343 
352 void ldns_dnssec_name_print_fmt(FILE *out,
353  const ldns_output_format *fmt, ldns_dnssec_name *name);
354 
360 
372  ldns_rdf* origin, uint32_t ttl, ldns_rr_class c);
373 
386  ldns_rdf* origin, uint32_t ttl, ldns_rr_class c, int* line_nr);
387 
394 
401 
413  ldns_rr *rr);
414 
422 void ldns_dnssec_zone_names_print(FILE *out, ldns_rbtree_t *tree, bool print_soa);
423 
432 void ldns_dnssec_zone_names_print_fmt(FILE *out, const ldns_output_format *fmt,
433  ldns_rbtree_t *tree, bool print_soa);
434 
441 void ldns_dnssec_zone_print(FILE *out, ldns_dnssec_zone *zone);
442 
450 void ldns_dnssec_zone_print_fmt(FILE *out,
451  const ldns_output_format *fmt, ldns_dnssec_zone *zone);
452 
461 
470 
471 #ifdef __cplusplus
472 }
473 #endif
474 
475 #endif