Linux Manuals session 3

Section 3: library functions

  • |

    ldns_rr_list2buffer_str (3) Linux Manual Page

    ldns_pkt2buffer_str, ldns_pktheader2buffer_str, ldns_rr2buffer_str, ldns_rr_list2buffer_str, ldns_rdf2buffer_str, ldns_key2buffer_str, ldns_pkt2buffer_wire, ldns_rr2buffer_wire, ldns_rdf2buffer_wire, ldns_rrsig2buffer_wire, ldns_rr_rdata2buffer_wire Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> ldns_status ldns_pkt2buffer_str(ldns_buffer *output, const ldns_pkt *pkt); ldns_status ldns_pktheader2buffer_str(ldns_buffer *output, const ldns_pkt *pkt); ldns_status ldns_rr2buffer_str(ldns_buffer *output, const ldns_rr *rr); ldns_status ldns_rr_list2buffer_str(ldns_buffer *output, const ldns_rr_list *list); ldns_status ldns_rdf2buffer_str(ldns_buffer *output, const ldns_rdf *rdf); ldns_status ldns_key2buffer_str(ldns_buffer *output, const ldns_key *k); ldns_status ldns_pkt2buffer_wire(ldns_buffer…

  • |

    ldns_rr_list (3) Linux Manual Page

    ldns_rr, ldns_rr_class, ldns_rr_type, ldns_rr_compress, ldns_rr_list Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> Description ldns_rr Resource Record This is the basic DNS element that contains actual data From RFC1035: <pre> 3.2.1. Format All RRs have the same top level format shown below:                               1  1  1  1  1  1 0  1  2  3  4  5  6  7  8  9  0  1  2  3  4  5  +–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+  |                                               |  /                                               /  /                      NAME                     /  |                                               |  +–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+  |                      TYPE                     |  +–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+  |                     CLASS                     |  +–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+  |                      TTL                      |  |                                               |  +–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+…

  • |

    ldns_rr_label_count (3) Linux Manual Page

    ldns_rr_label_count Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> uint8_t ldns_rr_label_count(ldns_rr *rr); Description ldns_rr_label_count() counts the number of labels of the ownername. .br rr: count the labels of this rr .br Returns the number of labelsAuthorThe ldns team at NLnet Labs. Which consists out of Jelte Jansen and Miek Gieben. Reporting BugsPlease report bugs to ldns-team [at]…

  • |

    ldns_rr_get_class (3) Linux Manual Page

    ldns_rr_rdf, ldns_rr_owner, ldns_rr_rd_count, ldns_rr_ttl, ldns_rr_get_class Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> ldns_rdf* ldns_rr_rdf(const ldns_rr *rr, size_t nr); ldns_rdf* ldns_rr_owner(const ldns_rr *rr); size_t ldns_rr_rd_count(const ldns_rr *rr); uint32_t ldns_rr_ttl(const ldns_rr *rr); ldns_rr_class ldns_rr_get_class(const ldns_rr *rr); Description ldns_rr_rdf() returns the rdata field member counter. .br *rr: rr to operate on .br nr: the number of the rdf to…

  • |

    ldns_rr_free (3) Linux Manual Page

    ldns_rr_print, ldns_rdf_print, ldns_pkt_print, ldns_rr_list_print, ldns_resolver_print, ldns_zone_print Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> void ldns_rr_print(FILE *output, const ldns_rr *rr); void ldns_rdf_print(FILE *output, const ldns_rdf *rdf); void ldns_pkt_print(FILE *output, const ldns_pkt *pkt); void ldns_rr_list_print(FILE *output, const ldns_rr_list *list); void ldns_resolver_print(FILE *output, const ldns_resolver *r); void ldns_zone_print(FILE *output, const ldns_zone *z); Description ldns_rr_print() Prints the data in the…

  • |

    ldns_rr_dnskey_set_protocol (3) Linux Manual Page

    ldns_rr_dnskey_flags, ldns_rr_dnskey_set_flags, ldns_rr_dnskey_protocol, ldns_rr_dnskey_set_protocol, ldns_rr_dnskey_algorithm, ldns_rr_dnskey_set_algorithm, ldns_rr_dnskey_key, ldns_rr_dnskey_set_key Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> ldns_rdf* ldns_rr_dnskey_flags(const ldns_rr *r); bool ldns_rr_dnskey_set_flags(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_protocol(const ldns_rr *r); bool ldns_rr_dnskey_set_protocol(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_algorithm(const ldns_rr *r); bool ldns_rr_dnskey_set_algorithm(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_key(const ldns_rr *r); bool ldns_rr_dnskey_set_key(ldns_rr *r, ldns_rdf *f); Description ldns_rr_dnskey_flags() returns the flags…

  • |

    ldns_rr_dnskey_set_key (3) Linux Manual Page

    ldns_rr_dnskey_flags, ldns_rr_dnskey_set_flags, ldns_rr_dnskey_protocol, ldns_rr_dnskey_set_protocol, ldns_rr_dnskey_algorithm, ldns_rr_dnskey_set_algorithm, ldns_rr_dnskey_key, ldns_rr_dnskey_set_key Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> ldns_rdf* ldns_rr_dnskey_flags(const ldns_rr *r); bool ldns_rr_dnskey_set_flags(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_protocol(const ldns_rr *r); bool ldns_rr_dnskey_set_protocol(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_algorithm(const ldns_rr *r); bool ldns_rr_dnskey_set_algorithm(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_key(const ldns_rr *r); bool ldns_rr_dnskey_set_key(ldns_rr *r, ldns_rdf *f); Description ldns_rr_dnskey_flags() returns the flags…

  • |

    ldns_rr_dnskey_set_flags (3) Linux Manual Page

    ldns_rr_dnskey_flags, ldns_rr_dnskey_set_flags, ldns_rr_dnskey_protocol, ldns_rr_dnskey_set_protocol, ldns_rr_dnskey_algorithm, ldns_rr_dnskey_set_algorithm, ldns_rr_dnskey_key, ldns_rr_dnskey_set_key Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> ldns_rdf* ldns_rr_dnskey_flags(const ldns_rr *r); bool ldns_rr_dnskey_set_flags(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_protocol(const ldns_rr *r); bool ldns_rr_dnskey_set_protocol(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_algorithm(const ldns_rr *r); bool ldns_rr_dnskey_set_algorithm(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_key(const ldns_rr *r); bool ldns_rr_dnskey_set_key(ldns_rr *r, ldns_rdf *f); Description ldns_rr_dnskey_flags() returns the flags…

  • |

    ldns_rr_dnskey_set_algorithm (3) Linux Manual Page

    ldns_rr_dnskey_flags, ldns_rr_dnskey_set_flags, ldns_rr_dnskey_protocol, ldns_rr_dnskey_set_protocol, ldns_rr_dnskey_algorithm, ldns_rr_dnskey_set_algorithm, ldns_rr_dnskey_key, ldns_rr_dnskey_set_key Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> ldns_rdf* ldns_rr_dnskey_flags(const ldns_rr *r); bool ldns_rr_dnskey_set_flags(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_protocol(const ldns_rr *r); bool ldns_rr_dnskey_set_protocol(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_algorithm(const ldns_rr *r); bool ldns_rr_dnskey_set_algorithm(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_key(const ldns_rr *r); bool ldns_rr_dnskey_set_key(ldns_rr *r, ldns_rdf *f); Description ldns_rr_dnskey_flags() returns the flags…

  • |

    ldns_rr_dnskey_protocol (3) Linux Manual Page

    ldns_rr_dnskey_flags, ldns_rr_dnskey_set_flags, ldns_rr_dnskey_protocol, ldns_rr_dnskey_set_protocol, ldns_rr_dnskey_algorithm, ldns_rr_dnskey_set_algorithm, ldns_rr_dnskey_key, ldns_rr_dnskey_set_key Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> ldns_rdf* ldns_rr_dnskey_flags(const ldns_rr *r); bool ldns_rr_dnskey_set_flags(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_protocol(const ldns_rr *r); bool ldns_rr_dnskey_set_protocol(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_algorithm(const ldns_rr *r); bool ldns_rr_dnskey_set_algorithm(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_key(const ldns_rr *r); bool ldns_rr_dnskey_set_key(ldns_rr *r, ldns_rdf *f); Description ldns_rr_dnskey_flags() returns the flags…

  • |

    ldns_rr_dnskey_key (3) Linux Manual Page

    ldns_rr_dnskey_flags, ldns_rr_dnskey_set_flags, ldns_rr_dnskey_protocol, ldns_rr_dnskey_set_protocol, ldns_rr_dnskey_algorithm, ldns_rr_dnskey_set_algorithm, ldns_rr_dnskey_key, ldns_rr_dnskey_set_key Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> ldns_rdf* ldns_rr_dnskey_flags(const ldns_rr *r); bool ldns_rr_dnskey_set_flags(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_protocol(const ldns_rr *r); bool ldns_rr_dnskey_set_protocol(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_algorithm(const ldns_rr *r); bool ldns_rr_dnskey_set_algorithm(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_key(const ldns_rr *r); bool ldns_rr_dnskey_set_key(ldns_rr *r, ldns_rdf *f); Description ldns_rr_dnskey_flags() returns the flags…

  • |

    ldns_rr_dnskey_flags (3) Linux Manual Page

    ldns_rr_dnskey_flags, ldns_rr_dnskey_set_flags, ldns_rr_dnskey_protocol, ldns_rr_dnskey_set_protocol, ldns_rr_dnskey_algorithm, ldns_rr_dnskey_set_algorithm, ldns_rr_dnskey_key, ldns_rr_dnskey_set_key Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> ldns_rdf* ldns_rr_dnskey_flags(const ldns_rr *r); bool ldns_rr_dnskey_set_flags(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_protocol(const ldns_rr *r); bool ldns_rr_dnskey_set_protocol(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_algorithm(const ldns_rr *r); bool ldns_rr_dnskey_set_algorithm(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_key(const ldns_rr *r); bool ldns_rr_dnskey_set_key(ldns_rr *r, ldns_rdf *f); Description ldns_rr_dnskey_flags() returns the flags…

  • |

    ldns_rr_dnskey_algorithm (3) Linux Manual Page

    ldns_rr_dnskey_flags, ldns_rr_dnskey_set_flags, ldns_rr_dnskey_protocol, ldns_rr_dnskey_set_protocol, ldns_rr_dnskey_algorithm, ldns_rr_dnskey_set_algorithm, ldns_rr_dnskey_key, ldns_rr_dnskey_set_key Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> ldns_rdf* ldns_rr_dnskey_flags(const ldns_rr *r); bool ldns_rr_dnskey_set_flags(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_protocol(const ldns_rr *r); bool ldns_rr_dnskey_set_protocol(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_algorithm(const ldns_rr *r); bool ldns_rr_dnskey_set_algorithm(ldns_rr *r, ldns_rdf *f); ldns_rdf* ldns_rr_dnskey_key(const ldns_rr *r); bool ldns_rr_dnskey_set_key(ldns_rr *r, ldns_rdf *f); Description ldns_rr_dnskey_flags() returns the flags…

  • |

    ldns_rr_descriptor_minimum (3) Linux Manual Page

    ldns_rr_descriptor, ldns_rr_descript, ldns_rr_descriptor_minimum, ldns_rr_descriptor_maximum, ldns_rr_descriptor_field_type Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> const ldns_rr_descriptor* ldns_rr_descript(uint16_t type); size_t ldns_rr_descriptor_minimum(const ldns_rr_descriptor *descriptor); size_t ldns_rr_descriptor_maximum(const ldns_rr_descriptor *descriptor); ldns_rdf_type ldns_rr_descriptor_field_type(const ldns_rr_descriptor *descriptor, size_t field); Description ldns_rr_descriptor Contains all information about resource record types. This structure contains, for all rr types, the rdata fields that are defined. struct ldns_struct_rr_descriptor {        Type…

  • |

    ldns_rr_descriptor_maximum (3) Linux Manual Page

    ldns_rr_descriptor, ldns_rr_descript, ldns_rr_descriptor_minimum, ldns_rr_descriptor_maximum, ldns_rr_descriptor_field_type Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> const ldns_rr_descriptor* ldns_rr_descript(uint16_t type); size_t ldns_rr_descriptor_minimum(const ldns_rr_descriptor *descriptor); size_t ldns_rr_descriptor_maximum(const ldns_rr_descriptor *descriptor); ldns_rdf_type ldns_rr_descriptor_field_type(const ldns_rr_descriptor *descriptor, size_t field); Description ldns_rr_descriptor Contains all information about resource record types. This structure contains, for all rr types, the rdata fields that are defined. struct ldns_struct_rr_descriptor {        Type…

  • |

    ldns_rr_descriptor_field_type (3) Linux Manual Page

    ldns_rr_descriptor, ldns_rr_descript, ldns_rr_descriptor_minimum, ldns_rr_descriptor_maximum, ldns_rr_descriptor_field_type Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> const ldns_rr_descriptor* ldns_rr_descript(uint16_t type); size_t ldns_rr_descriptor_minimum(const ldns_rr_descriptor *descriptor); size_t ldns_rr_descriptor_maximum(const ldns_rr_descriptor *descriptor); ldns_rdf_type ldns_rr_descriptor_field_type(const ldns_rr_descriptor *descriptor, size_t field); Description ldns_rr_descriptor Contains all information about resource record types. This structure contains, for all rr types, the rdata fields that are defined. struct ldns_struct_rr_descriptor {        Type…

  • |

    ldns_rr_descriptor (3) Linux Manual Page

    ldns_rr_descriptor, ldns_rr_descript, ldns_rr_descriptor_minimum, ldns_rr_descriptor_maximum, ldns_rr_descriptor_field_type Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> const ldns_rr_descriptor* ldns_rr_descript(uint16_t type); size_t ldns_rr_descriptor_minimum(const ldns_rr_descriptor *descriptor); size_t ldns_rr_descriptor_maximum(const ldns_rr_descriptor *descriptor); ldns_rdf_type ldns_rr_descriptor_field_type(const ldns_rr_descriptor *descriptor, size_t field); Description ldns_rr_descriptor Contains all information about resource record types. This structure contains, for all rr types, the rdata fields that are defined. struct ldns_struct_rr_descriptor {        Type…

  • |

    ldns_rr_descript (3) Linux Manual Page

    ldns_rr_descriptor, ldns_rr_descript, ldns_rr_descriptor_minimum, ldns_rr_descriptor_maximum, ldns_rr_descriptor_field_type Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> const ldns_rr_descriptor* ldns_rr_descript(uint16_t type); size_t ldns_rr_descriptor_minimum(const ldns_rr_descriptor *descriptor); size_t ldns_rr_descriptor_maximum(const ldns_rr_descriptor *descriptor); ldns_rdf_type ldns_rr_descriptor_field_type(const ldns_rr_descriptor *descriptor, size_t field); Description ldns_rr_descriptor Contains all information about resource record types. This structure contains, for all rr types, the rdata fields that are defined. struct ldns_struct_rr_descriptor {        Type…

  • |

    ldns_rr_compress (3) Linux Manual Page

    ldns_rr, ldns_rr_class, ldns_rr_type, ldns_rr_compress, ldns_rr_list Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> Description ldns_rr Resource Record This is the basic DNS element that contains actual data From RFC1035: <pre> 3.2.1. Format All RRs have the same top level format shown below:                               1  1  1  1  1  1 0  1  2  3  4  5  6  7  8  9  0  1  2  3  4  5  +–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+  |                                               |  /                                               /  /                      NAME                     /  |                                               |  +–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+  |                      TYPE                     |  +–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+  |                     CLASS                     |  +–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+  |                      TTL                      |  |                                               |  +–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+–+…

  • |

    ldns_rr_compare_ds (3) Linux Manual Page

    ldns_rr_compare, ldns_rr_compare_ds Synopsis#include <stdint.h> #include <stdbool.h> #include <ldns/ldns.h> int ldns_rr_compare(const ldns_rr *rr1, const ldns_rr *rr2); bool ldns_rr_compare_ds(const ldns_rr *rr1, const ldns_rr *rr2); Description ldns_rr_compare() compares two rrs. The TTL is not looked at. .br rr1: the first one .br rr2: the second one .br Returns 0 if equal -1 if rr1 comes before rr2 +1…