Go to the source code of this file.
#define LDNS_RESOLV_CONF "/etc/resolv.conf" |
#define LDNS_RESOLV_DEFDOMAIN 0 |
Definition at line 28 of file resolver.h.
#define LDNS_RESOLV_HOSTS "/etc/hosts" |
Definition at line 25 of file resolver.h.
#define LDNS_RESOLV_INET 1 |
Definition at line 35 of file resolver.h.
#define LDNS_RESOLV_INET6 2 |
Definition at line 36 of file resolver.h.
#define LDNS_RESOLV_INETANY 0 |
Definition at line 34 of file resolver.h.
#define LDNS_RESOLV_KEYWORD -1 |
Definition at line 27 of file resolver.h.
#define LDNS_RESOLV_KEYWORDS 3 |
Definition at line 32 of file resolver.h.
#define LDNS_RESOLV_NAMESERVER 1 |
Definition at line 29 of file resolver.h.
#define LDNS_RESOLV_SEARCH 2 |
Definition at line 30 of file resolver.h.
typedef struct ldns_struct_resolver ldns_resolver |
Definition at line 107 of file resolver.h.
bool ldns_axfr_complete | ( | ldns_resolver * | resolver | ) |
returns true if the axfr transfer has completed (i.e.
2 SOA RRs and no errors were encountered
[in] | resolver | the resolver that is used |
ldns_pkt* ldns_axfr_last_pkt | ( | ldns_resolver * | res | ) |
returns a pointer to the last ldns_pkt that was sent by the server in the AXFR transfer uasable for instance to get the error code on failure
[in] | res | the resolver that was used in the axfr transfer |
ldns_rr* ldns_axfr_next | ( | ldns_resolver * | resolver | ) |
get the next stream of RRs in a AXFR
[in] | resolver | the resolver to use. First ldns_axfr_start() must be called |
ldns_status ldns_axfr_start | ( | ldns_resolver * | resolver, | |
ldns_rdf * | domain, | |||
ldns_rr_class | c | |||
) |
Prepares the resolver for an axfr query The query is sent and the answers can be read with ldns_axfr_next.
[in] | resolver | the resolver to use |
[in] | domain | the domain to exfr |
[in] | c | the class to use |
int ldns_resolver_bgsend | ( | ) |
bool ldns_resolver_debug | ( | ldns_resolver * | r | ) |
void ldns_resolver_dec_nameserver_count | ( | ldns_resolver * | r | ) |
void ldns_resolver_deep_free | ( | ldns_resolver * | res | ) |
Frees the allocated space for this resolver and all it's data.
res | resolver to free |
bool ldns_resolver_dnssec | ( | ldns_resolver * | r | ) |
bool ldns_resolver_dnssec_cd | ( | ldns_resolver * | r | ) |
ldns_rdf* ldns_resolver_domain | ( | ldns_resolver * | r | ) |
uint16_t ldns_resolver_edns_udp_size | ( | ldns_resolver * | r | ) |
bool ldns_resolver_fail | ( | ldns_resolver * | r | ) |
void ldns_resolver_free | ( | ldns_resolver * | res | ) |
Frees the allocated space for this resolver.
res | resolver to free |
bool ldns_resolver_igntc | ( | ldns_resolver * | r | ) |
void ldns_resolver_incr_nameserver_count | ( | ldns_resolver * | r | ) |
uint8_t ldns_resolver_ip6 | ( | ldns_resolver * | r | ) |
size_t ldns_resolver_nameserver_count | ( | ldns_resolver * | r | ) |
ldns_rdf** ldns_resolver_nameservers | ( | ldns_resolver * | r | ) |
ldns_resolver* ldns_resolver_new | ( | void | ) |
create a new resolver structure
ldns_resolver* ldns_resolver_new_frm_file | ( | const char * | filename | ) |
configure a resolver by means of a resolv.conf file The file may be NULL in which case there will be looked the RESOLV_CONF (defaults to /etc/resolv.conf
[in] | filename | the filename to use |
ldns_resolver* ldns_resolver_new_frm_fp | ( | FILE * | fp | ) |
Create a resolver structure from a file like /etc/resolv.conf.
[in] | fp | file pointer to create new resolver from if NULL use /etc/resolv.conf |
ldns_resolver* ldns_resolver_new_frm_fp_l | ( | FILE * | fp, | |
int * | line_nr | |||
) |
Create a resolver structure from a file like /etc/resolv.conf.
[in] | fp | file pointer to create new resolver from if NULL use /etc/resolv.conf |
[in] | line_nr | pointer to an integer containing the current line number (for debugging purposes) |
ldns_rdf* ldns_resolver_pop_nameserver | ( | ldns_resolver * | r | ) |
pop the last nameserver from the resolver.
[in] | r | the resolver |
uint16_t ldns_resolver_port | ( | ldns_resolver * | r | ) |
ldns_status ldns_resolver_push_nameserver | ( | ldns_resolver * | r, | |
ldns_rdf * | n | |||
) |
push a new nameserver to the resolver.
It must be an IP address v4 or v6.
[in] | r | the resolver |
[in] | n | the ip address |
ldns_status ldns_resolver_push_nameserver_rr | ( | ldns_resolver * | r, | |
ldns_rr * | rr | |||
) |
push a new nameserver to the resolver.
It must be an A or AAAA RR record type
[in] | r | the resolver |
[in] | rr | the resource record |
ldns_status ldns_resolver_push_nameserver_rr_list | ( | ldns_resolver * | r, | |
ldns_rr_list * | rrlist | |||
) |
push a new nameserver rr_list to the resolver.
[in] | r | the resolver |
[in] | rrlist | the rr_list to push |
void ldns_resolver_push_searchlist | ( | ldns_resolver * | r, | |
ldns_rdf * | rd | |||
) |
ldns_pkt* ldns_resolver_query | ( | ldns_resolver * | r, | |
ldns_rdf * | name, | |||
ldns_rr_type | type, | |||
ldns_rr_class | class, | |||
uint16_t | flags | |||
) |
Send a qeury to a nameserver.
[in] | *r | operate using this resolver |
[in] | *name | query for this name |
[in] | *type | query for this type (may be 0, defaults to A) |
[in] | *class | query for this class (may be 0, default to IN) |
[in] | flags | the query flags |
bool ldns_resolver_random | ( | ldns_resolver * | r | ) |
bool ldns_resolver_recursive | ( | ldns_resolver * | r | ) |
uint8_t ldns_resolver_retrans | ( | ldns_resolver * | r | ) |
uint8_t ldns_resolver_retry | ( | ldns_resolver * | r | ) |
ldns_pkt* ldns_resolver_search | ( | ldns_resolver * | r, | |
ldns_rdf * | rdf, | |||
ldns_rr_type | t, | |||
ldns_rr_class | c, | |||
uint16_t | flags | |||
) |
ldns_rdf** ldns_resolver_searchlist | ( | ldns_resolver * | r | ) |
ldns_status ldns_resolver_send | ( | ldns_pkt ** | answer, | |
ldns_resolver * | r, | |||
ldns_rdf * | name, | |||
ldns_rr_type | t, | |||
ldns_rr_class | c, | |||
uint16_t | flags | |||
) |
Send the query for *name as-is.
[out] | **answer | a pointer to a ldns_pkt pointer (initialized by this function) |
[in] | *r | operate using this resolver |
[in] | *name | query for this name |
[in] | t | query for this type (may be 0, defaults to A) |
[in] | c | query for this class (may be 0, default to IN) |
[in] | flags | the query flags |
ldns_status ldns_resolver_send_pkt | ( | ldns_pkt ** | answer, | |
ldns_resolver * | r, | |||
ldns_pkt * | query_pkt | |||
) |
Send the given packet to a nameserver.
[out] | **answer | a pointer to a ldns_pkt pointer (initialized by this function) |
[in] | *r | operate using this resolver |
[in] | *query_pkt | query |
void ldns_resolver_set_debug | ( | ldns_resolver * | r, | |
bool | b | |||
) |
void ldns_resolver_set_defnames | ( | ldns_resolver * | r, | |
bool | b | |||
) |
void ldns_resolver_set_dnsrch | ( | ldns_resolver * | r, | |
bool | b | |||
) |
void ldns_resolver_set_dnssec | ( | ldns_resolver * | r, | |
bool | b | |||
) |
void ldns_resolver_set_dnssec_cd | ( | ldns_resolver * | r, | |
bool | b | |||
) |
void ldns_resolver_set_domain | ( | ldns_resolver * | r, | |
ldns_rdf * | rd | |||
) |
void ldns_resolver_set_edns_udp_size | ( | ldns_resolver * | r, | |
uint16_t | s | |||
) |
void ldns_resolver_set_fail | ( | ldns_resolver * | r, | |
bool | b | |||
) |
void ldns_resolver_set_igntc | ( | ldns_resolver * | r, | |
bool | b | |||
) |
void ldns_resolver_set_ip6 | ( | ldns_resolver * | r, | |
uint8_t | i | |||
) |
void ldns_resolver_set_nameserver_count | ( | ldns_resolver * | r, | |
size_t | c | |||
) |
void ldns_resolver_set_nameservers | ( | ldns_resolver * | r, | |
ldns_rdf ** | rd | |||
) |
void ldns_resolver_set_port | ( | ldns_resolver * | r, | |
uint16_t | ||||
) |
void ldns_resolver_set_random | ( | ldns_resolver * | r, | |
bool | b | |||
) |
void ldns_resolver_set_recursive | ( | ldns_resolver * | r, | |
bool | b | |||
) |
void ldns_resolver_set_retrans | ( | ldns_resolver * | r, | |
uint8_t | re | |||
) |
void ldns_resolver_set_retry | ( | ldns_resolver * | r, | |
uint8_t | re | |||
) |
void ldns_resolver_set_timeout | ( | ldns_resolver * | r, | |
struct timeval | timeout | |||
) |
void ldns_resolver_set_tsig_algorithm | ( | ldns_resolver * | r, | |
char * | tsig_algorithm | |||
) |
void ldns_resolver_set_tsig_keydata | ( | ldns_resolver * | r, | |
char * | tsig_keydata | |||
) |
void ldns_resolver_set_tsig_keyname | ( | ldns_resolver * | r, | |
char * | tsig_keyname | |||
) |
void ldns_resolver_set_usevc | ( | ldns_resolver * | r, | |
bool | b | |||
) |
struct timeval ldns_resolver_timeout | ( | ldns_resolver * | r | ) |
char* ldns_resolver_tsig_algorithm | ( | ldns_resolver * | r | ) |
char* ldns_resolver_tsig_keydata | ( | ldns_resolver * | r | ) |
char* ldns_resolver_tsig_keyname | ( | ldns_resolver * | r | ) |
bool ldns_resolver_usevc | ( | ldns_resolver * | r | ) |