djbdnscurve6 45
djbdnscurve6
|
#include "stralloc.h"
#include "iopause.h"
#include "taia.h"
#include "ip.h"
Go to the source code of this file.
Data Structures | |
struct | dns_transmit |
Macros | |
#define | DNS_NXD 0 /* NXDOMAIN,␣NODATA␣*/ |
#define | DNS_MEM -1 /* out of memory; fatal */ |
#define | DNS_ERR -2 /* parsing errors and others */ |
#define | DNS_COM -3 /* (socket) communication errors - SERVFAIL */ |
#define | DNS_INT -4 /* internal errors */ |
#define | DNS_SOFT -5 /* DNS_ERR␣or␣DNS_COM␣*/$ |
#define | DNS_HARD -6 /* DNS␣loop␣problem␣*/$ |
#define | MSGSIZE MTUSIZE - 48 /* DNS Flag Day 2020 recommendation */ |
#define | MINMSGSIZE 512 /* RFC 1035 */ |
#define | MAXMSGSIZE 4096 /* 4069 seen with EDNS0 */ |
#define | MAXSEGMENT 65535 /* Max TCP buffer size */ |
#define | MAX_TTL 655360 /* Default TTL for static DNS objects */ |
#define | QUERY_MAXNS 32 /* 16 IPv4 + 16 IPv6 NS */ |
#define | QUERY_MAXIPLEN 512 /* QUERY_MAXNS * 16 */ |
#define | TCP_BACKLOG 20 /* the number of TCP connections supported simultaneously */ |
#define | FQDN_LEN 255 /* length of FQDN including all labels + dots */ |
#define | EDNS0FLAG 1 |
#define | DNS_C_IN "\0\1" |
#define | DNS_C_ANY "\0\377" |
#define | DNS_T_A "\0\1" |
#define | DNS_T_NS "\0\2" |
#define | DNS_T_CNAME "\0\5" |
#define | DNS_T_SOA "\0\6" |
#define | DNS_T_PTR "\0\14" |
#define | DNS_T_HINFO "\0\15" |
#define | DNS_T_MX "\0\17" |
#define | DNS_T_TXT "\0\20" |
#define | DNS_T_RP "\0\21" |
#define | DNS_T_SIG "\0\30" |
#define | DNS_T_KEY "\0\31" |
#define | DNS_T_AAAA "\0\34" |
#define | DNS_T_SRV "\0\41" |
#define | DNS_T_NAPTR "\0\43" |
#define | DNS_T_CERT "\0\45" |
#define | DNS_T_OPT "\0\51" |
#define | DNS_T_DS "\0\53" |
#define | DNS_T_SSHFP "\0\54" |
#define | DNS_T_IPSECKEY "\0\55" |
#define | DNS_T_RRSIG "\0\56" |
#define | DNS_T_NSEC "\0\57" |
#define | DNS_T_DNSKEY "\0\60" |
#define | DNS_T_NSEC3 "\0\62" |
#define | DNS_T_NSEC3PARAM "\0\63" |
#define | DNS_T_TLSA "\0\64" |
#define | DNS_T_HIP "\0\67" |
#define | DNS_T_OPENPGPKEY "\0\75" |
#define | DNS_T_SPF "\0\143" |
#define | DNS_T_AXFR "\0\374" |
#define | DNS_T_ANY "\0\377" |
#define | DNS_T_CAA "\1\1" |
#define | LOCALHOST "localhost" /* no clear distinction IPv4/IPv6 */ |
#define | IP4_LOOPBACK "ip4-loopback" |
#define | IP6_LOOPBACK "ip6-loopback" |
#define | DNS_NAME4_DOMAIN 31 |
#define | DNS_NAME6_DOMAIN (4*16+11) |
Functions | |
void | dns_random_init (const char *) |
unsigned int | dns_random (unsigned int) |
void | dns_domain_free (char **) |
int | dns_domain_copy (char **, const char *) |
unsigned int | dns_domain_length (const char *) |
int | dns_domain_equal (const char *, const char *) |
int | dns_domain_suffix (const char *, const char *) |
unsigned int | dns_domain_suffixpos (const char *, const char *) |
int | dns_domain_fromdot (char **, const char *, unsigned int) |
int | dns_domain_todot_cat (stralloc *, const char *) |
unsigned int | dns_packet_copy (const char *, unsigned int, unsigned int, char *, unsigned int) |
unsigned int | dns_packet_getname (const char *, unsigned int, unsigned int, char **) |
unsigned int | dns_packet_skipname (const char *, unsigned int, unsigned int) |
int | dns_transmit_start (struct dns_transmit *, const char *, int, const char *, const char *, const char *) |
void | dns_transmit_free (struct dns_transmit *) |
void | dns_transmit_io (struct dns_transmit *, iopause_fd *, struct taia *) |
int | dns_transmit_get (struct dns_transmit *, const iopause_fd *, const struct taia *) |
int | dns_resolvconfip (char *, uint32 *) |
int | dns_resolvconfrewrite (stralloc *) |
int | dns_resolve (const char *, const char *) |
int | dns_name (stralloc *, const char *) |
int | dns_name_packet (stralloc *, const char *, unsigned int) |
int | dns_txt_packet (stralloc *, const char *, unsigned int) |
int | dns_txt (stralloc *, const stralloc *) |
int | dns_mx_packet (stralloc *, const char *, unsigned int) |
int | dns_mx (stralloc *, const stralloc *) |
int | dns_ip_qualify (stralloc *, stralloc *, const stralloc *) |
int | dns_ip4_packet (stralloc *, const char *, unsigned int) |
int | dns_ip4 (stralloc *, stralloc *) |
void | dns_sortip4 (char *, unsigned int) |
int | dns_ip4_qualify_rules (stralloc *, stralloc *, const stralloc *, const stralloc *) |
int | dns_ip4_qualify (stralloc *, stralloc *, const stralloc *) |
int | dns_name4_domain (char *, const char *) |
int | dns_name4 (stralloc *, const char *) |
int | dns_ip6_packet (stralloc *, const char *, unsigned int) |
int | dns_ip6 (stralloc *, stralloc *) |
void | dns_sortip6 (char *, unsigned int) |
int | dns_ip6_qualify_rules (stralloc *, stralloc *, const stralloc *, const stralloc *) |
int | dns_ip6_qualify (stralloc *, stralloc *, const stralloc *) |
int | dns_name6_domain (char *, const char *) |
int | dns_name6 (stralloc *, const char *) |
int | dns_transmit_start6 (struct dns_transmit *, const char *, int, const char *, const char *, const char *, const uint32 *) |
unsigned int | dns_packet_edns0 (const char *, const char *, const int, unsigned int) |
void | socketfree (struct dns_transmit *) |
void | queryfree (struct dns_transmit *) |
void | packetfree (struct dns_transmit *) |
int | randombind (struct dns_transmit *) |
int | randombind4 (struct dns_transmit *) |
int | serverwantstcp (const char *, unsigned int) |
int | serverfailed (const char *, unsigned int, char *) |
int | getscopeid (const struct dns_transmit *, const char *) |
int | firstudp (struct dns_transmit *) |
int | nextudp (struct dns_transmit *) |
int | firsttcp (struct dns_transmit *) |
int | nexttcp (struct dns_transmit *) |
Variables | |
struct dns_transmit | dns_resolve_tx |
#define DNS_COM -3 /* (socket) communication errors - SERVFAIL */ |
#define FQDN_LEN 255 /* length of FQDN including all labels + dots */ |
#define LOCALHOST "localhost" /* no clear distinction IPv4/IPv6 */ |
#define MAX_TTL 655360 /* Default TTL for static DNS objects */ |
#define MSGSIZE MTUSIZE - 48 /* DNS Flag Day 2020 recommendation */ |
#define QUERY_MAXIPLEN 512 /* QUERY_MAXNS * 16 */ |
#define TCP_BACKLOG 20 /* the number of TCP connections supported simultaneously */ |
int dns_domain_copy | ( | char ** | out, |
const char * | in | ||
) |
Definition at line 25 of file dns_domain.c.
int dns_domain_equal | ( | const char * | dn1, |
const char * | dn2 | ||
) |
Definition at line 39 of file dns_domain.c.
void dns_domain_free | ( | char ** | out | ) |
Definition at line 17 of file dns_domain.c.
int dns_domain_fromdot | ( | char ** | out, |
const char * | buf, | ||
unsigned int | n | ||
) |
unsigned int dns_domain_length | ( | const char * | dn | ) |
Definition at line 6 of file dns_domain.c.
int dns_domain_suffix | ( | const char * | big, |
const char * | little | ||
) |
Definition at line 50 of file dns_domain.c.
unsigned int dns_domain_suffixpos | ( | const char * | big, |
const char * | little | ||
) |
int dns_domain_todot_cat | ( | stralloc * | out, |
const char * | d | ||
) |
Definition at line 11 of file dns_dtda.c.
int dns_ip4 | ( | stralloc * | out, |
stralloc * | fqdn | ||
) |
int dns_ip4_packet | ( | stralloc * | out, |
const char * | buf, | ||
unsigned int | len | ||
) |
int dns_ip4_qualify | ( | stralloc * | ipout, |
stralloc * | fqdn, | ||
const stralloc * | in | ||
) |
int dns_ip4_qualify_rules | ( | stralloc * | ipout, |
stralloc * | fqdn, | ||
const stralloc * | in, | ||
const stralloc * | rules | ||
) |
int dns_ip6 | ( | stralloc * | out, |
stralloc * | fqdn | ||
) |
int dns_ip6_packet | ( | stralloc * | out, |
const char * | buf, | ||
unsigned int | len | ||
) |
int dns_ip6_qualify | ( | stralloc * | ipout, |
stralloc * | fqdn, | ||
const stralloc * | in | ||
) |
int dns_ip6_qualify_rules | ( | stralloc * | ipout, |
stralloc * | fqdn, | ||
const stralloc * | in, | ||
const stralloc * | rules | ||
) |
int dns_ip_qualify | ( | stralloc * | ipout, |
stralloc * | fqdn, | ||
const stralloc * | in | ||
) |
int dns_mx | ( | stralloc * | out, |
const stralloc * | fqdn | ||
) |
int dns_mx_packet | ( | stralloc * | out, |
const char * | buf, | ||
unsigned int | len | ||
) |
int dns_name | ( | stralloc * | , |
const char * | |||
) |
int dns_name4 | ( | stralloc * | , |
const char * | |||
) |
int dns_name4_domain | ( | char * | , |
const char * | |||
) |
int dns_name6 | ( | stralloc * | , |
const char * | |||
) |
int dns_name6_domain | ( | char * | , |
const char * | |||
) |
int dns_name_packet | ( | stralloc * | out, |
const char * | buf, | ||
unsigned int | len | ||
) |
Definition at line 9 of file dns_name.c.
unsigned int dns_packet_copy | ( | const char * | buf, |
unsigned int | len, | ||
unsigned int | pos, | ||
char * | out, | ||
unsigned int | outlen | ||
) |
Definition at line 8 of file dns_packet.c.
unsigned int dns_packet_edns0 | ( | const char * | , |
const char * | , | ||
const int | , | ||
unsigned int | |||
) |
unsigned int dns_packet_getname | ( | const char * | buf, |
unsigned int | len, | ||
unsigned int | pos, | ||
char ** | d | ||
) |
Definition at line 35 of file dns_packet.c.
unsigned int dns_packet_skipname | ( | const char * | buf, |
unsigned int | len, | ||
unsigned int | pos | ||
) |
unsigned int dns_random | ( | unsigned int | n | ) |
Definition at line 56 of file dns_random.c.
void dns_random_init | ( | const char * | ) |
int dns_resolvconfip | ( | char * | , |
uint32 * | |||
) |
int dns_resolvconfrewrite | ( | stralloc * | out | ) |
Definition at line 115 of file dns_rcrw.c.
int dns_resolve | ( | const char * | , |
const char * | |||
) |
void dns_sortip4 | ( | char * | s, |
unsigned int | n | ||
) |
Definition at line 10 of file dns_sortip.c.
void dns_sortip6 | ( | char * | s, |
unsigned int | n | ||
) |
Definition at line 25 of file dns_sortip.c.
void dns_transmit_free | ( | struct dns_transmit * | d | ) |
Definition at line 95 of file dns_transmit.c.
int dns_transmit_get | ( | struct dns_transmit * | d, |
const iopause_fd * | x, | ||
const struct taia * | when | ||
) |
Definition at line 296 of file dns_transmit.c.
void dns_transmit_io | ( | struct dns_transmit * | d, |
iopause_fd * | x, | ||
struct taia * | deadline | ||
) |
Definition at line 279 of file dns_transmit.c.
int dns_transmit_start | ( | struct dns_transmit * | , |
const char * | , | ||
int | , | ||
const char * | , | ||
const char * | , | ||
const char * | |||
) |
int dns_transmit_start6 | ( | struct dns_transmit * | , |
const char * | , | ||
int | , | ||
const char * | , | ||
const char * | , | ||
const char * | , | ||
const uint32 * | |||
) |
int dns_txt | ( | stralloc * | out, |
const stralloc * | fqdn | ||
) |
int dns_txt_packet | ( | stralloc * | out, |
const char * | buf, | ||
unsigned int | len | ||
) |
int firsttcp | ( | struct dns_transmit * | d | ) |
Definition at line 250 of file dns_transmit.c.
int firstudp | ( | struct dns_transmit * | d | ) |
Definition at line 193 of file dns_transmit.c.
int getscopeid | ( | const struct dns_transmit * | d, |
const char * | ip | ||
) |
Definition at line 18 of file dns_transmit.c.
int nexttcp | ( | struct dns_transmit * | d | ) |
Definition at line 256 of file dns_transmit.c.
int nextudp | ( | struct dns_transmit * | d | ) |
Definition at line 200 of file dns_transmit.c.
void packetfree | ( | struct dns_transmit * | d | ) |
Definition at line 74 of file dns_transmit.c.
void queryfree | ( | struct dns_transmit * | d | ) |
Definition at line 81 of file dns_transmit.c.
int randombind | ( | struct dns_transmit * | d | ) |
int randombind4 | ( | struct dns_transmit * | d | ) |
Definition at line 132 of file dns_transmit.c.
int serverfailed | ( | const char * | buf, |
unsigned int | len, | ||
char * | server | ||
) |
Definition at line 38 of file dns_transmit.c.
int serverwantstcp | ( | const char * | buf, |
unsigned int | len | ||
) |
Definition at line 29 of file dns_transmit.c.
void socketfree | ( | struct dns_transmit * | d | ) |
Definition at line 88 of file dns_transmit.c.
|
extern |
Definition at line 7 of file dns_resolve.c.