ares_inet_ntop.3: s/socklen_t/ares_socklen_t
[platform/upstream/c-ares.git] / nameser.h
index fd496c5..a0302fd 100644 (file)
--- a/nameser.h
+++ b/nameser.h
@@ -1,50 +1,23 @@
+
 #ifndef ARES_NAMESER_H
 #define ARES_NAMESER_H
 
-/* Windows-only header file provided by liren@vivisimo.com to make his Windows
-   port build */
-
-#ifndef NETWARE
-#include <windows.h>
-#include <process.h> /* for the _getpid() proto */
-#endif  /* !NETWARE */
-#include <sys/types.h>
-
-#ifndef NETWARE
-
-#define MAXHOSTNAMELEN 256
-
-#define EINPROGRESS WSAEINPROGRESS
-#define EWOULDBLOCK WSAEWOULDBLOCK
-#define EMSGSIZE ERANGE /* FIX: is there a better replacement? */
-#define EAFNOSUPPORT ERANGE /* FIX: is there a better replacement? */
-
-/* Structure for scatter/gather I/O.  */
-struct iovec
-{
-    void *iov_base;     /* Pointer to data.  */
-    size_t iov_len;     /* Length of data.  */
-};
-
-#define getpid() _getpid()
+/* header file provided by liren@vivisimo.com */
 
-int ares_writev (SOCKET s, const struct iovec *vector, size_t count);
-#define writev(s,vect,count)  ares_writev(s,vect,count)
+#ifndef HAVE_ARPA_NAMESER_H
 
-struct timezone { int dummy; };
-
-int ares_gettimeofday(struct timeval *tv, struct timezone *tz);
-#define gettimeofday(tv,tz) ares_gettimeofday(tv,tz)
-
-#endif  /* !NETWARE */
-
-#define NS_CMPRSFLGS  0xc0
-#define NS_IN6ADDRSZ  16
-#define NS_INT16SZ    2
-#define NS_INADDRSZ   4
-
-  /* Flag bits indicating name compression. */
-#define INDIR_MASK    NS_CMPRSFLGS
+#define NS_PACKETSZ     512   /* maximum packet size */
+#define NS_MAXDNAME     256   /* maximum domain name */
+#define NS_MAXCDNAME    255   /* maximum compressed domain name */
+#define NS_MAXLABEL     63
+#define NS_HFIXEDSZ     12    /* #/bytes of fixed data in header */
+#define NS_QFIXEDSZ     4     /* #/bytes of fixed data in query */
+#define NS_RRFIXEDSZ    10    /* #/bytes of fixed data in r record */
+#define NS_INT16SZ      2
+#define NS_INADDRSZ     4
+#define NS_IN6ADDRSZ    16
+#define NS_CMPRSFLGS    0xc0  /* Flag bits indicating name compression. */
+#define NS_DEFAULTPORT  53    /* For both TCP and UDP. */
 
 typedef enum __ns_class {
     ns_c_invalid = 0,       /* Cookie. */
@@ -58,8 +31,6 @@ typedef enum __ns_class {
     ns_c_max = 65536
 } ns_class;
 
-#define C_IN           ns_c_in
-
 typedef enum __ns_type {
     ns_t_invalid = 0,       /* Cookie. */
     ns_t_a = 1,             /* Host address. */
@@ -103,6 +74,13 @@ typedef enum __ns_type {
     ns_t_dname = 39,        /* Non-terminal DNAME (for IPv6) */
     ns_t_sink = 40,         /* Kitchen sink (experimentatl) */
     ns_t_opt = 41,          /* EDNS0 option (meta-RR) */
+    ns_t_apl = 42,          /* Address prefix list (RFC3123) */
+    ns_t_ds = 43,           /* Delegation Signer (RFC4034) */
+    ns_t_sshfp = 44,        /* SSH Key Fingerprint (RFC4255) */
+    ns_t_rrsig = 46,        /* Resource Record Signature (RFC4034) */
+    ns_t_nsec = 47,         /* Next Secure (RFC4034) */
+    ns_t_dnskey = 48,       /* DNS Public Key (RFC4034) */
+    ns_t_tkey = 249,        /* Transaction key */
     ns_t_tsig = 250,        /* Transaction signature. */
     ns_t_ixfr = 251,        /* Incremental zone transfer. */
     ns_t_axfr = 252,        /* Transfer zone of authority. */
@@ -113,19 +91,6 @@ typedef enum __ns_type {
     ns_t_max = 65536
 } ns_type;
 
-#define T_PTR          ns_t_ptr
-#define T_A            ns_t_a
-
-
-#define NS_DEFAULTPORT        53      /* For both TCP and UDP. */
-#define NAMESERVER_PORT        NS_DEFAULTPORT
-
-#define NS_HFIXEDSZ   12      /* #/bytes of fixed data in header */
-#define HFIXEDSZ      NS_HFIXEDSZ
-
-#define NS_QFIXEDSZ   4       /* #/bytes of fixed data in query */
-#define QFIXEDSZ       NS_QFIXEDSZ
-
 typedef enum __ns_opcode {
     ns_o_query = 0,         /* Standard query. */
     ns_o_iquery = 1,        /* Inverse query (deprecated/unsupported). */
@@ -136,20 +101,6 @@ typedef enum __ns_opcode {
     ns_o_max = 6
 } ns_opcode;
 
-#define QUERY          ns_o_query
-
-#define NS_MAXLABEL   63
-#define MAXLABEL       NS_MAXLABEL
-
-#define NS_RRFIXEDSZ  10      /* #/bytes of fixed data in r record */
-#define RRFIXEDSZ      NS_RRFIXEDSZ
-
-#define T_CNAME                ns_t_cname
-
-
-#define NS_PACKETSZ   512     /* maximum packet size */
-#define PACKETSZ       NS_PACKETSZ
-
 typedef enum __ns_rcode {
     ns_r_noerror = 0,       /* No error occurred. */
     ns_r_formerr = 1,       /* Format error. */
@@ -170,6 +121,22 @@ typedef enum __ns_rcode {
     ns_r_badtime = 18
 } ns_rcode;
 
+#endif /* HAVE_ARPA_NAMESER_H */
+
+#ifndef HAVE_ARPA_NAMESER_COMPAT_H
+
+#define PACKETSZ         NS_PACKETSZ
+#define MAXDNAME         NS_MAXDNAME
+#define MAXCDNAME        NS_MAXCDNAME
+#define MAXLABEL         NS_MAXLABEL
+#define HFIXEDSZ         NS_HFIXEDSZ
+#define QFIXEDSZ         NS_QFIXEDSZ
+#define RRFIXEDSZ        NS_RRFIXEDSZ
+#define INDIR_MASK       NS_CMPRSFLGS
+#define NAMESERVER_PORT  NS_DEFAULTPORT
+
+#define QUERY           ns_o_query
+
 #define SERVFAIL        ns_r_servfail
 #define NOTIMP          ns_r_notimpl
 #define REFUSED         ns_r_refused
@@ -178,6 +145,7 @@ typedef enum __ns_rcode {
 #define FORMERR         ns_r_formerr
 #define NXDOMAIN        ns_r_nxdomain
 
+#define C_IN            ns_c_in
 #define C_CHAOS         ns_c_chaos
 #define C_HS            ns_c_hs
 #define C_NONE          ns_c_none
@@ -218,6 +186,19 @@ typedef enum __ns_rcode {
 #define T_SRV           ns_t_srv
 #define T_ATMA          ns_t_atma
 #define T_NAPTR         ns_t_naptr
+#define T_KX            ns_t_kx
+#define T_CERT          ns_t_cert
+#define T_A6            ns_t_a6
+#define T_DNAME         ns_t_dname
+#define T_SINK          ns_t_sink
+#define T_OPT           ns_t_opt
+#define T_APL           ns_t_apl
+#define T_DS            ns_t_ds
+#define T_SSHFP         ns_t_sshfp
+#define T_RRSIG         ns_t_rrsig
+#define T_NSEC          ns_t_nsec
+#define T_DNSKEY        ns_t_dnskey
+#define T_TKEY          ns_t_tkey
 #define T_TSIG          ns_t_tsig
 #define T_IXFR          ns_t_ixfr
 #define T_AXFR          ns_t_axfr
@@ -225,4 +206,6 @@ typedef enum __ns_rcode {
 #define T_MAILA         ns_t_maila
 #define T_ANY           ns_t_any
 
+#endif /* HAVE_ARPA_NAMESER_COMPAT_H */
+
 #endif /* ARES_NAMESER_H */