Scroll to navigation

ldns(3) Library Functions Manual ldns(3)

NAME

ldns_rdf, ldns_rdf_type-

SYNOPSIS

#include <stdint.h>
 
#include <stdbool.h>
 
#include <ldns/ldns.h>

DESCRIPTION

ldns_rdf
 
Resource record data field.
 
 
The data is a network ordered array of bytes, which size is specified by
 
the (16-bit) size field. To correctly parse it, use the type
 
specified in the (16-bit) type field with a value from \ref ldns_rdf_type.
 
struct ldns_struct_rdf
 
{
 
The size of the data (in octets):
 
size_t _size;
 
The type of the data:
 
ldns_rdf_type _type;
 
Pointer to the data (raw octets):
 
void *_data;
 
};
 
typedef struct ldns_struct_rdf ldns_rdf;
ldns_rdf_type
 
The different types of RDATA fields.
 
enum ldns_enum_rdf_type
 
{
 
none:
 
LDNS_RDF_TYPE_NONE,
 
domain name:
 
LDNS_RDF_TYPE_DNAME,
 
8 bits:
 
LDNS_RDF_TYPE_INT8,
 
16 bits:
 
LDNS_RDF_TYPE_INT16,
 
32 bits:
 
LDNS_RDF_TYPE_INT32,
 
A record:
 
LDNS_RDF_TYPE_A,
 
AAAA record:
 
LDNS_RDF_TYPE_AAAA,
 
txt string:
 
LDNS_RDF_TYPE_STR,
 
apl data:
 
LDNS_RDF_TYPE_APL,
 
b32 string:
 
LDNS_RDF_TYPE_B32_EXT,
 
b64 string:
 
LDNS_RDF_TYPE_B64,
 
hex string:
 
LDNS_RDF_TYPE_HEX,
 
nsec type codes:
 
LDNS_RDF_TYPE_NSEC,
 
a RR type:
 
LDNS_RDF_TYPE_TYPE,
 
a class:
 
LDNS_RDF_TYPE_CLASS,
 
certificate algorithm:
 
LDNS_RDF_TYPE_CERT_ALG,
 
a key algorithm:
 
LDNS_RDF_TYPE_ALG,
 
unknown types:
 
LDNS_RDF_TYPE_UNKNOWN,
 
time (32 bits):
 
LDNS_RDF_TYPE_TIME,
 
period:
 
LDNS_RDF_TYPE_PERIOD,
 
tsig time 48 bits:
 
LDNS_RDF_TYPE_TSIGTIME,
 
/** Represents the Public Key Algorithm, HIT and Public Key fields
 
for the HIP RR types. A HIP specific rdf type is used because of
 
the unusual layout in wireformat (see RFC 5205 Section 5) */
 
LDNS_RDF_TYPE_HIP,
 
/** variable length any type rdata where the length
 
is specified by the first 2 bytes */
 
LDNS_RDF_TYPE_INT16_DATA,
 
protocol and port bitmaps:
 
LDNS_RDF_TYPE_SERVICE,
 
location data:
 
LDNS_RDF_TYPE_LOC,
 
well known services:
 
LDNS_RDF_TYPE_WKS,
 
NSAP:
 
LDNS_RDF_TYPE_NSAP,
 
ATMA:
 
LDNS_RDF_TYPE_ATMA,
 
IPSECKEY:
 
LDNS_RDF_TYPE_IPSECKEY,
 
nsec3 hash salt:
 
LDNS_RDF_TYPE_NSEC3_SALT,
 
nsec3 base32 string (with length byte on wire:
 
LDNS_RDF_TYPE_NSEC3_NEXT_OWNER,
 
 
/** 4 shorts represented as 4 * 16 bit hex numbers
 
* separated by colons. For NID and L64.
 
*/
 
LDNS_RDF_TYPE_ILNP64,
 
 
6 * 8 bit hex numbers separated by dashes. For EUI48.:
 
LDNS_RDF_TYPE_EUI48,
 
8 * 8 bit hex numbers separated by dashes. For EUI64.:
 
LDNS_RDF_TYPE_EUI64,
 
 
/** A non-zero sequence of US-ASCII letters and numbers in lower case.
 
* For CAA.
 
*/
 
LDNS_RDF_TYPE_TAG,
 
 
/** A <character-string> encoding of the value field as specified
 
* [RFC1035], Section 5.1., encoded as remaining rdata.
 
* For CAA.
 
*/
 
LDNS_RDF_TYPE_LONG_STR,
 
 
/* Aliases */
 
LDNS_RDF_TYPE_BITMAP = LDNS_RDF_TYPE_NSEC
 
};
 
typedef enum ldns_enum_rdf_type ldns_rdf_type;

AUTHOR

The ldns team at NLnet Labs. Which consists out of Jelte Jansen and Miek Gieben.

REPORTING BUGS

Please report bugs to ldns-team@nlnetlabs.nl or in our bugzilla at http://www.nlnetlabs.nl/bugs/index.html

COPYRIGHT

Copyright (c) 2004 - 2006 NLnet Labs.
Licensed under the BSD License. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

SEE ALSO

ldns_rdf_set_size, ldns_rdf_set_type, ldns_rdf_set_data, ldns_rdf_size, ldns_rdf_get_type, ldns_rdf_data, ldns_rdf_compare, ldns_rdf_new, ldns_rdf_clone, ldns_rdf_new_frm_data, ldns_rdf_new_frm_str, ldns_rdf_new_frm_fp, ldns_rdf_free, ldns_rdf_deep_free, ldns_rdf_print, ldns_native2rdf_int8, ldns_native2rdf_int16, ldns_native2rdf_int32, ldns_native2rdf_int16_data, ldns_rdf2native_int8, ldns_rdf2native_int16, ldns_rdf2native_int32, ldns_rdf2native_sockaddr_storage, ldns_rdf2native_time_t, ldns_native2rdf_int8, ldns_native2rdf_int16, ldns_native2rdf_int32, ldns_native2rdf_int16_data, ldns_rdf2native_int8, ldns_rdf2native_int16, ldns_rdf2native_int32, ldns_rdf2native_sockaddr_storage, ldns_rdf2native_time_t, ldns_native2rdf_int8, ldns_native2rdf_int16, ldns_native2rdf_int32, ldns_native2rdf_int16_data, ldns_rdf2native_int8, ldns_rdf2native_int16, ldns_rdf2native_int32, ldns_rdf2native_sockaddr_storage, ldns_rdf2native_time_t. And perldoc Net::DNS, RFC1034, RFC1035, RFC4033, RFC4034 and RFC4035.

REMARKS

This manpage was automaticly generated from the ldns source code by use of Doxygen and some perl.
30 May 2006