host2str.h

Go to the documentation of this file.
00001 
00018 #ifndef LDNS_HOST2STR_H
00019 #define LDNS_HOST2STR_H
00020 
00021 #include <ldns/common.h>
00022 #include <ldns/error.h>
00023 #include <ldns/rr.h>
00024 #include <ldns/rdata.h>
00025 #include <ldns/packet.h>
00026 #include <ldns/buffer.h>
00027 #include <ldns/resolver.h>
00028 #include <ldns/zone.h>
00029 #include <ctype.h>
00030 
00031 #include "ldns/util.h"
00032 
00033 #ifdef __cplusplus
00034 extern "C" {
00035 #endif
00036 
00037 #define LDNS_APL_IP4            1
00038 #define LDNS_APL_IP6            2
00039 #define LDNS_APL_MASK           0x7f
00040 #define LDNS_APL_NEGATION       0x80
00041 
00046 #define LDNS_COMMENT_NULLS              0x0001
00047 
00048 #define LDNS_COMMENT_KEY_ID             0x0002
00049 
00050 #define LDNS_COMMENT_KEY_TYPE           0x0004
00051 
00052 #define LDNS_COMMENT_KEY_SIZE           0x0008
00053 
00054 #define LDNS_COMMENT_KEY                (LDNS_COMMENT_KEY_ID  \
00055                                         |LDNS_COMMENT_KEY_TYPE\
00056                                         |LDNS_COMMENT_KEY_SIZE)
00057 
00058 #define LDNS_COMMENT_BUBBLEBABBLE       0x0010
00059 
00060 #define LDNS_COMMENT_FLAGS              0x0020
00061 
00062 #define LDNS_COMMENT_NSEC3_CHAIN        0x0040
00063 
00064 #define LDNS_COMMENT_LAYOUT             0x0080
00065 
00066 #define LDNS_COMMENT_RRSIGS             0x0100
00067 
00078 struct ldns_struct_output_format
00079 {
00081         int   flags;
00083         void *data;
00084 };
00085 typedef struct ldns_struct_output_format ldns_output_format;
00086 
00091 extern const ldns_output_format *ldns_output_format_nocomments;
00096 extern const ldns_output_format *ldns_output_format_onlykeyids;
00100 extern const ldns_output_format *ldns_output_format_default;
00106 extern const ldns_output_format *ldns_output_format_bubblebabble;
00107 
00115 ldns_status
00116 ldns_pkt_opcode2buffer_str(ldns_buffer *output, ldns_pkt_opcode opcode);
00117 
00125 ldns_status
00126 ldns_pkt_rcode2buffer_str(ldns_buffer *output, ldns_pkt_rcode rcode);
00127 
00135 ldns_status
00136 ldns_algorithm2buffer_str(ldns_buffer *output,
00137                           ldns_algorithm algorithm);
00138 
00146 ldns_status
00147 ldns_cert_algorithm2buffer_str(ldns_buffer *output,
00148                                ldns_cert_algorithm cert_algorithm);
00149 
00150 
00159 char *ldns_pkt_opcode2str(ldns_pkt_opcode opcode);
00160 
00169 char *ldns_pkt_rcode2str(ldns_pkt_rcode rcode);
00170 
00179 char *ldns_pkt_algorithm2str(ldns_algorithm algorithm);
00180 
00189 char *ldns_pkt_cert_algorithm2str(ldns_cert_algorithm cert_algorithm);
00190 
00197 ldns_status ldns_rdf2buffer_str_a(ldns_buffer *output, const ldns_rdf *rdf);
00198 
00205 ldns_status ldns_rdf2buffer_str_aaaa(ldns_buffer *output, const ldns_rdf *rdf);
00206 
00213 ldns_status ldns_rdf2buffer_str_str(ldns_buffer *output, const ldns_rdf *rdf);
00214 
00221 ldns_status ldns_rdf2buffer_str_b64(ldns_buffer *output, const ldns_rdf *rdf);
00222 
00229 ldns_status ldns_rdf2buffer_str_b32_ext(ldns_buffer *output, const ldns_rdf *rdf);
00230 
00237 ldns_status ldns_rdf2buffer_str_hex(ldns_buffer *output, const ldns_rdf *rdf);
00238 
00245 ldns_status ldns_rdf2buffer_str_type(ldns_buffer *output, const ldns_rdf *rdf);
00246 
00253 ldns_status ldns_rdf2buffer_str_class(ldns_buffer *output, const ldns_rdf *rdf);
00254 
00261 ldns_status ldns_rdf2buffer_str_alg(ldns_buffer *output, const ldns_rdf *rdf);
00262 
00270 ldns_status ldns_rr_type2buffer_str(ldns_buffer *output,
00271                                     const ldns_rr_type type);
00272 
00281 char *ldns_rr_type2str(const ldns_rr_type type);
00282 
00290 ldns_status ldns_rr_class2buffer_str(ldns_buffer *output,
00291                                      const ldns_rr_class klass);
00292 
00301 char *ldns_rr_class2str(const ldns_rr_class klass);
00302 
00303 
00310 ldns_status ldns_rdf2buffer_str_cert_alg(ldns_buffer *output, const ldns_rdf *rdf);
00311 
00318 ldns_status ldns_rdf2buffer_str_loc(ldns_buffer *output, const ldns_rdf *rdf);
00319 
00326 ldns_status ldns_rdf2buffer_str_unknown(ldns_buffer *output, const ldns_rdf *rdf);
00327 
00334 ldns_status ldns_rdf2buffer_str_nsap(ldns_buffer *output, const ldns_rdf *rdf);
00335 
00342 ldns_status ldns_rdf2buffer_str_atma(ldns_buffer *output, const ldns_rdf *rdf);
00343 
00350 ldns_status ldns_rdf2buffer_str_wks(ldns_buffer *output, const ldns_rdf *rdf);
00351 
00358 ldns_status ldns_rdf2buffer_str_nsec(ldns_buffer *output, const ldns_rdf *rdf);
00359 
00366 ldns_status ldns_rdf2buffer_str_period(ldns_buffer *output, const ldns_rdf *rdf);
00367 
00374 ldns_status ldns_rdf2buffer_str_tsigtime(ldns_buffer *output, const ldns_rdf *rdf);
00375 
00382 ldns_status ldns_rdf2buffer_str_apl(ldns_buffer *output, const ldns_rdf *rdf);
00383 
00390 ldns_status ldns_rdf2buffer_str_int16_data(ldns_buffer *output, const ldns_rdf *rdf);
00391 
00398 ldns_status ldns_rdf2buffer_str_ipseckey(ldns_buffer *output, const ldns_rdf *rdf);
00399 
00406 ldns_status ldns_rdf2buffer_str_tsig(ldns_buffer *output, const ldns_rdf *rdf);
00407 
00408 
00417 ldns_status ldns_rdf2buffer_str(ldns_buffer *output, const ldns_rdf *rdf);
00418 
00429 ldns_status ldns_rr2buffer_str(ldns_buffer *output, const ldns_rr *rr);
00430 
00443 ldns_status ldns_rr2buffer_str_fmt(ldns_buffer *output, 
00444                 const ldns_output_format *fmt, const ldns_rr *rr);
00445 
00454 ldns_status ldns_pkt2buffer_str(ldns_buffer *output, const ldns_pkt *pkt);
00455 
00465 ldns_status ldns_pkt2buffer_str_fmt(ldns_buffer *output,
00466                 const ldns_output_format *fmt, const ldns_pkt *pkt);
00467 
00474 ldns_status ldns_rdf2buffer_str_nsec3_salt(ldns_buffer *output, const ldns_rdf *rdf);
00475 
00476 
00485 ldns_status ldns_key2buffer_str(ldns_buffer *output, const ldns_key *k);
00486 
00493 ldns_status ldns_rdf2buffer_str_int8(ldns_buffer *output, const ldns_rdf *rdf);
00494 
00501 ldns_status ldns_rdf2buffer_str_int16(ldns_buffer *output, const ldns_rdf *rdf);
00502 
00509 ldns_status ldns_rdf2buffer_str_int32(ldns_buffer *output, const ldns_rdf *rdf);
00510 
00517 ldns_status ldns_rdf2buffer_str_time(ldns_buffer *output, const ldns_rdf *rdf);
00518 
00527 char *ldns_rdf2str(const ldns_rdf *rdf);
00528 
00537 char *ldns_rr2str(const ldns_rr *rr);
00538 
00548 char *ldns_rr2str_fmt(const ldns_output_format *fmt, const ldns_rr *rr);
00549 
00558 char *ldns_pkt2str(const ldns_pkt *pkt);
00559 
00569 char *ldns_pkt2str_fmt(const ldns_output_format *fmt, const ldns_pkt *pkt);
00570 
00579 char *ldns_key2str(const ldns_key *k);
00580 
00589 char *ldns_rr_list2str(const ldns_rr_list *rr_list);
00590 
00600 char *ldns_rr_list2str_fmt(
00601                 const ldns_output_format *fmt, const ldns_rr_list *rr_list);
00602 
00610 char *ldns_buffer2str(ldns_buffer *buffer);
00611 
00620 void ldns_rdf_print(FILE *output, const ldns_rdf *rdf);
00621 
00630 void ldns_rr_print(FILE *output, const ldns_rr *rr);
00631 
00641 void ldns_rr_print_fmt(FILE *output, 
00642                 const ldns_output_format *fmt, const ldns_rr *rr);
00643 
00652 void ldns_pkt_print(FILE *output, const ldns_pkt *pkt);
00653 
00663 void ldns_pkt_print_fmt(FILE *output, 
00664                 const ldns_output_format *fmt, const ldns_pkt *pkt);
00665 
00673 ldns_status ldns_rr_list2buffer_str(ldns_buffer *output, const ldns_rr_list *list);
00674 
00683 ldns_status ldns_rr_list2buffer_str_fmt(ldns_buffer *output, 
00684                 const ldns_output_format *fmt, const ldns_rr_list *list);
00685 
00693 ldns_status ldns_pktheader2buffer_str(ldns_buffer *output, const ldns_pkt *pkt);
00694 
00700 void ldns_rr_list_print(FILE *output, const ldns_rr_list *list);
00701 
00708 void ldns_rr_list_print_fmt(FILE *output, 
00709                 const ldns_output_format *fmt, const ldns_rr_list *list);
00710 
00717 void ldns_resolver_print(FILE *output, const ldns_resolver *r);
00718 
00726 void ldns_resolver_print_fmt(FILE *output, 
00727                 const ldns_output_format *fmt, const ldns_resolver *r);
00728 
00735 void ldns_zone_print(FILE *output, const ldns_zone *z);
00736 
00744 void ldns_zone_print_fmt(FILE *output, 
00745                 const ldns_output_format *fmt, const ldns_zone *z);
00746 
00753 ldns_status ldns_rdf2buffer_str_dname(ldns_buffer *output, const ldns_rdf *dname);
00754 
00755 #ifdef __cplusplus
00756 }
00757 #endif
00758 
00759 #endif /* LDNS_HOST2STR_H */

Generated on 8 Jun 2012 for ldns by  doxygen 1.6.1