summaryrefslogtreecommitdiffstats
path: root/contrib/bind/include
diff options
context:
space:
mode:
authornectar <nectar@FreeBSD.org>2002-02-04 19:12:46 +0000
committernectar <nectar@FreeBSD.org>2002-02-04 19:12:46 +0000
commitebeabb1ba32f14e308ae9aff9a2a7151265259cf (patch)
tree71ba64d0a82be4894e23f6d65f36b61203ec3875 /contrib/bind/include
parent1385a0dca8f9199ece158336f4c6a9f1e2e03c3e (diff)
downloadFreeBSD-src-ebeabb1ba32f14e308ae9aff9a2a7151265259cf.zip
FreeBSD-src-ebeabb1ba32f14e308ae9aff9a2a7151265259cf.tar.gz
Import of ISC BIND 8.3.1-REL.
Diffstat (limited to 'contrib/bind/include')
-rw-r--r--contrib/bind/include/arpa/nameser.h17
-rw-r--r--contrib/bind/include/arpa/nameser_compat.h4
-rw-r--r--contrib/bind/include/irs.h19
-rw-r--r--contrib/bind/include/isc/assertions.h8
-rw-r--r--contrib/bind/include/isc/ctl.h11
-rw-r--r--contrib/bind/include/isc/eventlib.h4
-rw-r--r--contrib/bind/include/isc/irpmarshall.h5
-rw-r--r--contrib/bind/include/isc/logging.h9
-rw-r--r--contrib/bind/include/isc/memcluster.h2
-rw-r--r--contrib/bind/include/isc/misc.h10
-rw-r--r--contrib/bind/include/netdb.h30
-rw-r--r--contrib/bind/include/netgroup.h17
-rw-r--r--contrib/bind/include/resolv.h74
13 files changed, 170 insertions, 40 deletions
diff --git a/contrib/bind/include/arpa/nameser.h b/contrib/bind/include/arpa/nameser.h
index 3129a10..955719a 100644
--- a/contrib/bind/include/arpa/nameser.h
+++ b/contrib/bind/include/arpa/nameser.h
@@ -49,7 +49,7 @@
*/
/*
- * $Id: nameser.h,v 8.41 2000/12/23 08:14:50 vixie Exp $
+ * $Id: nameser.h,v 8.46 2001/11/16 05:37:33 marka Exp $
*/
#ifndef _ARPA_NAMESER_H_
@@ -119,7 +119,7 @@ typedef struct __ns_msg {
const u_char *_sections[ns_s_max];
ns_sect _sect;
int _rrnum;
- const u_char *_ptr;
+ const u_char *_msg_ptr;
} ns_msg;
/* Private data structure - do not use from outside library. */
@@ -203,7 +203,9 @@ typedef enum __ns_rcode {
ns_r_notauth = 9, /* Not authoritative for zone */
ns_r_notzone = 10, /* Zone of record different from zone section */
ns_r_max = 11,
- /* The following are TSIG extended errors */
+ /* The following are EDNS extended rcodes */
+ ns_r_badvers = 16,
+ /* The following are TSIG errors */
ns_r_badsig = 16,
ns_r_badkey = 17,
ns_r_badtime = 18
@@ -426,10 +428,15 @@ typedef enum __ns_cert_types {
#define NS_NXT_MAX 127
/*
+ * EDNS0 extended flags, host order.
+ */
+#define NS_OPT_DNSSEC_OK 0x8000U
+
+/*
* Inline versions of get/put short/long. Pointer is advanced.
*/
#define NS_GET16(s, cp) do { \
- register u_char *t_cp = (u_char *)(cp); \
+ register const u_char *t_cp = (const u_char *)(cp); \
(s) = ((u_int16_t)t_cp[0] << 8) \
| ((u_int16_t)t_cp[1]) \
; \
@@ -437,7 +444,7 @@ typedef enum __ns_cert_types {
} while (0)
#define NS_GET32(l, cp) do { \
- register u_char *t_cp = (u_char *)(cp); \
+ register const u_char *t_cp = (const u_char *)(cp); \
(l) = ((u_int32_t)t_cp[0] << 24) \
| ((u_int32_t)t_cp[1] << 16) \
| ((u_int32_t)t_cp[2] << 8) \
diff --git a/contrib/bind/include/arpa/nameser_compat.h b/contrib/bind/include/arpa/nameser_compat.h
index 292669d..a32485a 100644
--- a/contrib/bind/include/arpa/nameser_compat.h
+++ b/contrib/bind/include/arpa/nameser_compat.h
@@ -32,7 +32,7 @@
/*
* from nameser.h 8.1 (Berkeley) 6/2/93
- * $Id: nameser_compat.h,v 8.11 1999/01/02 08:00:58 vixie Exp $
+ * $Id: nameser_compat.h,v 8.13 2001/09/24 02:20:25 marka Exp $
*/
#ifndef _ARPA_NAMESER_COMPAT_
@@ -64,6 +64,7 @@
defined(apollo) || defined(__convex__) || defined(_CRAY) || \
defined(__hppa) || defined(__hp9000) || \
defined(__hp9000s300) || defined(__hp9000s700) || \
+ defined(__hp3000s900) || defined(MPE) || \
defined (BIT_ZERO_ON_LEFT) || defined(m68k) || \
(defined(__Lynx__) && \
(defined(__68k__) || defined(__sparc__) || defined(__powerpc__)))
@@ -207,6 +208,7 @@ typedef struct {
#define T_SRV ns_t_srv
#define T_ATMA ns_t_atma
#define T_NAPTR ns_t_naptr
+#define T_A6 ns_t_a6
#define T_TSIG ns_t_tsig
#define T_IXFR ns_t_ixfr
#define T_AXFR ns_t_axfr
diff --git a/contrib/bind/include/irs.h b/contrib/bind/include/irs.h
index 2cb3a1b..8e232ad 100644
--- a/contrib/bind/include/irs.h
+++ b/contrib/bind/include/irs.h
@@ -16,7 +16,7 @@
*/
/*
- * $Id: irs.h,v 8.5 2000/12/23 08:14:49 vixie Exp $
+ * $Id: irs.h,v 8.6 2001/05/29 05:47:00 marka Exp $
*/
#ifndef _IRS_H_INCLUDED
@@ -30,6 +30,7 @@
#include <netdb.h>
#include <resolv.h>
#include <pwd.h>
+#include <netgroup.h>
/*
* This is the group map class.
@@ -114,6 +115,8 @@ struct irs_ho {
struct __res_state * (*res_get) __P((struct irs_ho *));
void (*res_set) __P((struct irs_ho *, res_state,
void (*)(void *)));
+ struct addrinfo *(*addrinfo) __P((struct irs_ho *, const char *,
+ const struct addrinfo *));
};
/*
@@ -138,8 +141,8 @@ struct irs_nw {
struct irs_ng {
void * private;
void (*close) __P((struct irs_ng *));
- int (*next) __P((struct irs_ng *, char **, char **,
- char **));
+ int (*next) __P((struct irs_ng *, const char **,
+ const char **, const char **));
int (*test) __P((struct irs_ng *, const char *,
const char *, const char *,
const char *));
@@ -261,6 +264,12 @@ extern struct hostent *gethostent_p __P((struct net_data *net_data));
extern void sethostent_p __P((int stayopen,
struct net_data *net_data));
extern void endhostent_p __P((struct net_data *net_data));
+extern struct hostent *getipnodebyname_p __P((const char *name, int af,
+ int flags, int *errp,
+ struct net_data *net_data));
+extern struct hostent *getipnodebyaddr_p __P((const void *addr, size_t len,
+ int af, int *errp,
+ struct net_data *net_data));
extern struct netent *getnetent_p __P((struct net_data *net_data));
extern struct netent *getnetbyname_p __P((const char *name,
@@ -279,8 +288,8 @@ extern int innetgr_p __P((const char *netgroup,
const char *user,
const char *domain,
struct net_data *net_data));
-extern int getnetgrent_p __P((char **host, char **user,
- char **domain,
+extern int getnetgrent_p __P((const char **host, const char **user,
+ const char **domain,
struct net_data *net_data));
extern struct protoent *getprotoent_p __P((struct net_data *net_data));
diff --git a/contrib/bind/include/isc/assertions.h b/contrib/bind/include/isc/assertions.h
index fdce882..0964f63 100644
--- a/contrib/bind/include/isc/assertions.h
+++ b/contrib/bind/include/isc/assertions.h
@@ -16,7 +16,7 @@
*/
/*
- * $Id: assertions.h,v 8.3 2000/07/17 07:53:59 vixie Exp $
+ * $Id: assertions.h,v 8.4 2001/05/29 05:47:07 marka Exp $
*/
#ifndef ASSERTIONS_H
@@ -26,12 +26,12 @@ typedef enum {
assert_require, assert_ensure, assert_insist, assert_invariant
} assertion_type;
-typedef void (*assertion_failure_callback)(char *, int, assertion_type, char *,
- int);
+typedef void (*assertion_failure_callback)(const char *, int, assertion_type,
+ const char *, int);
extern assertion_failure_callback __assertion_failed;
void set_assertion_failure_callback(assertion_failure_callback f);
-char *assertion_type_to_text(assertion_type type);
+const char *assertion_type_to_text(assertion_type type);
#ifdef CHECK_ALL
#define CHECK_REQUIRE 1
diff --git a/contrib/bind/include/isc/ctl.h b/contrib/bind/include/isc/ctl.h
index 3c6e565..008e7a6 100644
--- a/contrib/bind/include/isc/ctl.h
+++ b/contrib/bind/include/isc/ctl.h
@@ -19,7 +19,7 @@
*/
/*
- * $Id: ctl.h,v 8.9 1999/08/08 20:16:45 vixie Exp $
+ * $Id: ctl.h,v 8.11 2001/08/10 02:40:49 marka Exp $
*/
#include <sys/types.h>
@@ -46,7 +46,7 @@ typedef void (*ctl_logfunc)(enum ctl_severity, const char *fmt, ...);
typedef void (*ctl_verbfunc)(struct ctl_sctx *, struct ctl_sess *,
const struct ctl_verb *, const char *rest,
- u_int respflags, void *respctx, void *uctx);
+ u_int respflags, const void *respctx, void *uctx);
typedef void (*ctl_srvrdone)(struct ctl_sctx *, struct ctl_sess *, void *);
@@ -62,7 +62,12 @@ struct ctl_verb {
#define ctl_logger __ctl_logger
+#ifdef __GNUC__
+void ctl_logger(enum ctl_severity, const char *, ...)
+ __attribute__((__format__(__printf__, 2, 3)));
+#else
void ctl_logger(enum ctl_severity, const char *, ...);
+#endif
/* Client symbols. */
@@ -94,7 +99,7 @@ struct ctl_sctx * ctl_server(evContext, const struct sockaddr *, size_t,
ctl_logfunc, void *);
void ctl_endserver(struct ctl_sctx *);
void ctl_response(struct ctl_sess *, u_int,
- const char *, u_int, void *,
+ const char *, u_int, const void *,
ctl_srvrdone, void *,
const char *, size_t);
void ctl_sendhelp(struct ctl_sess *, u_int);
diff --git a/contrib/bind/include/isc/eventlib.h b/contrib/bind/include/isc/eventlib.h
index 6b9b077..5b98516 100644
--- a/contrib/bind/include/isc/eventlib.h
+++ b/contrib/bind/include/isc/eventlib.h
@@ -18,7 +18,7 @@
/* eventlib.h - exported interfaces for eventlib
* vix 09sep95 [initial]
*
- * $Id: eventlib.h,v 1.22 1999/08/18 22:09:04 vixie Exp $
+ * $Id: eventlib.h,v 1.23 2001/05/29 05:47:09 marka Exp $
*/
#ifndef _EVENTLIB_H
@@ -106,7 +106,7 @@ int evHighestFD __P((evContext ctx));
int evListen __P((evContext ctx, int fd, int maxconn,
evConnFunc func, void *uap, evConnID *id));
-int evConnect __P((evContext ctx, int fd, void *ra, int ralen,
+int evConnect __P((evContext ctx, int fd, const void *ra, int ralen,
evConnFunc func, void *uap, evConnID *id));
int evCancelConn __P((evContext ctx, evConnID id));
int evHold __P((evContext, evConnID));
diff --git a/contrib/bind/include/isc/irpmarshall.h b/contrib/bind/include/isc/irpmarshall.h
index d8afe32..30cef41 100644
--- a/contrib/bind/include/isc/irpmarshall.h
+++ b/contrib/bind/include/isc/irpmarshall.h
@@ -16,7 +16,7 @@
*/
/*
- * $Id: irpmarshall.h,v 8.1 1999/01/18 07:46:47 vixie Exp $
+ * $Id: irpmarshall.h,v 8.2 2001/05/29 05:47:10 marka Exp $
*/
#ifndef _IRPMARSHALL_H_INCLUDED
@@ -57,7 +57,8 @@ int irp_marshall_ho(struct hostent *ho, char **buffer, size_t *len);
int irp_unmarshall_ho(struct hostent *ho, char *buffer);
int irp_marshall_ng(const char *host, const char *user, const char *domain,
char **buffer, size_t *len);
-int irp_unmarshall_ng(char **host, char **user, char **domain, char *buffer);
+int irp_unmarshall_ng(const char **host, const char **user,
+ const char **domain, char *buffer);
int irp_marshall_nw(struct nwent *ne, char **buffer, size_t *len);
int irp_unmarshall_nw(struct nwent *ne, char *buffer);
int irp_marshall_ne(struct netent *ne, char **buffer, size_t *len);
diff --git a/contrib/bind/include/isc/logging.h b/contrib/bind/include/isc/logging.h
index 3d3d313..6d6976f 100644
--- a/contrib/bind/include/isc/logging.h
+++ b/contrib/bind/include/isc/logging.h
@@ -72,6 +72,7 @@ typedef struct log_channel *log_channel;
#define log_dec_references __log_dec_references
#define log_get_channel_type __log_get_channel_type
#define log_free_channel __log_free_channel
+#define log_close_debug_channels __log_close_debug_channels
FILE * log_open_stream(log_channel);
int log_close_stream(log_channel);
@@ -81,7 +82,12 @@ int log_check_channel(log_context, int, log_channel);
int log_check(log_context, int, int);
void log_vwrite(log_context, int, int, const char *,
va_list args);
+#ifdef __GNUC__
+void log_write(log_context, int, int, const char *, ...)
+ __attribute__((__format__(__printf__, 4, 5)));
+#else
void log_write(log_context, int, int, const char *, ...);
+#endif
int log_new_context(int, char **, log_context *);
void log_free_context(log_context);
int log_add_channel(log_context, int, log_channel);
@@ -89,7 +95,7 @@ int log_remove_channel(log_context, int, log_channel);
int log_option(log_context, int, int);
int log_category_is_active(log_context, int);
log_channel log_new_syslog_channel(unsigned int, int, int);
-log_channel log_new_file_channel(unsigned int, int, char *,
+log_channel log_new_file_channel(unsigned int, int, const char *,
FILE *, unsigned int,
unsigned long);
int log_set_file_owner(log_channel, uid_t, gid_t);
@@ -98,5 +104,6 @@ int log_inc_references(log_channel);
int log_dec_references(log_channel);
log_channel_type log_get_channel_type(log_channel);
int log_free_channel(log_channel);
+void log_close_debug_channels(log_context);
#endif /* !LOGGING_H */
diff --git a/contrib/bind/include/isc/memcluster.h b/contrib/bind/include/isc/memcluster.h
index b6f4191..bcf69b2 100644
--- a/contrib/bind/include/isc/memcluster.h
+++ b/contrib/bind/include/isc/memcluster.h
@@ -34,6 +34,7 @@
#endif /*MEMCLUSTER_RECORD*/
#endif /*MEMCLUSTER_DEBUG*/
#define memstats __memstats
+#define memactive __memactive
int meminit(size_t, size_t);
void * __memget(size_t);
@@ -43,5 +44,6 @@ void __memput_debug(void *, size_t, const char *, int);
void * __memget_record(size_t, const char *, int);
void __memput_record(void *, size_t, const char *, int);
void memstats(FILE *);
+int memactive(void);
#endif /* MEMCLUSTER_H */
diff --git a/contrib/bind/include/isc/misc.h b/contrib/bind/include/isc/misc.h
index 3a94d3f..4de1cee 100644
--- a/contrib/bind/include/isc/misc.h
+++ b/contrib/bind/include/isc/misc.h
@@ -16,16 +16,24 @@
*/
/*
- * $Id: misc.h,v 8.4 2000/12/23 08:14:52 vixie Exp $
+ * $Id: misc.h,v 8.5 2001/06/18 06:40:43 marka Exp $
*/
#ifndef _ISC_MISC_H
#define _ISC_MISC_H
+#include <stdio.h>
+
#define bitncmp __bitncmp
/*#define isc_movefile __isc_movefile */
extern int bitncmp(const void *l, const void *r, int n);
extern int isc_movefile(const char *, const char *);
+extern int isc_gethexstring(unsigned char *, size_t, int, FILE *,
+ int *);
+extern void isc_puthexstring(FILE *, const unsigned char *, size_t,
+ size_t, size_t, const char *);
+extern void isc_tohex(const unsigned char *, size_t, char *);
+
#endif /*_ISC_MISC_H*/
diff --git a/contrib/bind/include/netdb.h b/contrib/bind/include/netdb.h
index 4ffefad..ecfb145 100644
--- a/contrib/bind/include/netdb.h
+++ b/contrib/bind/include/netdb.h
@@ -86,17 +86,19 @@
/*
* @(#)netdb.h 8.1 (Berkeley) 6/2/93
- * $Id: netdb.h,v 8.15 1999/09/18 06:23:46 vixie Exp $
+ * $Id: netdb.h,v 8.17 2001/06/18 14:43:48 marka Exp $
*/
#ifndef _NETDB_H_
#define _NETDB_H_
#include <sys/param.h>
+#include <sys/types.h>
#if (!defined(BSD)) || (BSD < 199306)
# include <sys/bitypes.h>
#endif
#include <sys/cdefs.h>
+#include <sys/socket.h>
#include <netinet/in.h>
#include <stdio.h>
@@ -116,10 +118,10 @@
#define _PATH_SERVICES "/etc/services"
#endif
-#ifdef _REENTRANT
__BEGIN_DECLS
extern int * __h_errno __P((void));
__END_DECLS
+#ifdef _REENTRANT
#define h_errno (*__h_errno())
#else
extern int h_errno;
@@ -236,10 +238,17 @@ struct addrinfo {
#define NI_NAMEREQD 0x00000004
#define NI_NUMERICSERV 0x00000008
#define NI_DGRAM 0x00000010
+#define NI_WITHSCOPEID 0x00000020
+#define NI_NUMERICSCOPE 0x00000040
+
+/*
+ * Scope delimit character
+ */
+#define SCOPE_DELIMITER '%'
#ifdef _REENTRANT
-#if defined (__hpux) || defined(__osf__)
+#if defined (__hpux) || defined(__osf__) || defined(_AIX)
#define _MAXALIASES 35
#define _MAXLINELEN 1024
#define _MAXADDRS 35
@@ -334,10 +343,13 @@ void endhostent __P((void));
void endnetent __P((void));
void endprotoent __P((void));
void endservent __P((void));
+void freehostent __P((struct hostent *));
struct hostent *gethostbyaddr __P((const char *, int, int));
struct hostent *gethostbyname __P((const char *));
struct hostent *gethostbyname2 __P((const char *, int));
struct hostent *gethostent __P((void));
+struct hostent *getipnodebyaddr __P((const void *, size_t, int, int *));
+struct hostent *getipnodebyname __P((const char *, int, int, int *));
struct netent *getnetbyaddr __P((unsigned long, int));
struct netent *getnetbyname __P((const char *));
struct netent *getnetent __P((void));
@@ -359,20 +371,24 @@ int getaddrinfo __P((const char *, const char *,
int getnameinfo __P((const struct sockaddr *, size_t, char *,
size_t, char *, size_t, int));
void freeaddrinfo __P((struct addrinfo *));
-char *gai_strerror __P((int));
+const char *gai_strerror __P((int));
struct hostent *getipnodebyname __P((const char *, int, int, int *));
struct hostent *getipnodebyaddr __P((const void *, size_t, int, int *));
void freehostent __P((struct hostent *));
#ifdef _REENTRANT
-#if defined(__hpux) || defined(__osf__)
+#if defined(__hpux) || defined(__osf__) || defined(_AIX)
int gethostbyaddr_r __P((const char *, int, int, struct hostent *,
struct hostent_data *));
int gethostbyname_r __P((const char *, struct hostent *,
struct hostent_data *));
int gethostent_r __P((struct hostent *, struct hostent_data *));
+#if defined(_AIX)
+void sethostent_r __P((int, struct hostent_data *));
+#else
int sethostent_r __P((int, struct hostent_data *));
+#endif
#if defined(__hpux)
int endhostent_r __P((struct hostent_data *));
#else
@@ -419,8 +435,8 @@ int endservent_r __P((struct servent_data *));
#else
void endservent_r __P((struct servent_data *));
#endif
-#endif
-#if defined(sun) || defined(bsdi)
+#else
+ /* defined(sun) || defined(bsdi) */
struct hostent *gethostbyaddr_r __P((const char *, int, int, struct hostent *,
char *, int, int *));
struct hostent *gethostbyname_r __P((const char *, struct hostent *,
diff --git a/contrib/bind/include/netgroup.h b/contrib/bind/include/netgroup.h
new file mode 100644
index 0000000..30efb94
--- /dev/null
+++ b/contrib/bind/include/netgroup.h
@@ -0,0 +1,17 @@
+#ifndef netgroup_h
+#define netgroup_h
+
+int getnetgrent(const char **machinep, const char **userp,
+ const char **domainp);
+
+int getnetgrent_r(char **machinep, char **userp, char **domainp,
+ char *buffer, int buflen);
+
+void setnetgrent(const char *netgroup);
+
+void endnetgrent(void);
+
+int innetgr(const char *netgroup, const char *machine,
+ const char *user, const char *domain);
+
+#endif
diff --git a/contrib/bind/include/resolv.h b/contrib/bind/include/resolv.h
index 75578ff..fb5185e 100644
--- a/contrib/bind/include/resolv.h
+++ b/contrib/bind/include/resolv.h
@@ -50,7 +50,7 @@
/*
* @(#)resolv.h 8.1 (Berkeley) 6/2/93
- * $Id: resolv.h,v 8.32.2.1 2001/05/17 03:01:30 marka Exp $
+ * $Id: resolv.h,v 8.44 2001/12/19 01:44:19 marka Exp $
*/
#ifndef _RESOLV_H_
@@ -63,7 +63,9 @@
# include <sys/types.h>
#endif
#include <sys/cdefs.h>
+#include <sys/socket.h>
#include <stdio.h>
+#include <arpa/nameser.h>
/*
* Revision information. This is the release date in YYYYMMDD format.
@@ -113,14 +115,14 @@ __END_DECLS
typedef enum { res_goahead, res_nextns, res_modified, res_done, res_error }
res_sendhookact;
-typedef res_sendhookact (*res_send_qhook)__P((struct sockaddr_in * const *ns,
+typedef res_sendhookact (*res_send_qhook)__P((struct sockaddr * const *ns,
const u_char **query,
int *querylen,
u_char *ans,
int anssiz,
int *resplen));
-typedef res_sendhookact (*res_send_rhook)__P((const struct sockaddr_in *ns,
+typedef res_sendhookact (*res_send_rhook)__P((const struct sockaddr *ns,
const u_char *query,
int querylen,
u_char *ans,
@@ -128,9 +130,9 @@ typedef res_sendhookact (*res_send_rhook)__P((const struct sockaddr_in *ns,
int *resplen));
struct res_sym {
- int number; /* Identifying number, like T_MX */
- char * name; /* Its symbolic name, like "MX" */
- char * humanname; /* Its fun name, like "mail exchanger" */
+ int number; /* Identifying number, like T_MX */
+ const char * name; /* Its symbolic name, like "MX" */
+ const char * humanname; /* Its fun name, like "mail exchanger" */
};
/*
@@ -149,6 +151,8 @@ struct res_sym {
#define RES_DFLRETRY 2 /* Default #/tries. */
#define RES_MAXTIME 65535 /* Infinity, in milliseconds. */
+struct __res_state_ext;
+
struct __res_state {
int retrans; /* retransmition time interval */
int retry; /* number of times to retransmit */
@@ -174,23 +178,38 @@ struct __res_state {
int _vcsock; /* PRIVATE: for res_send VC i/o */
u_int _flags; /* PRIVATE: see below */
union {
- char pad[52]; /* On an i386 this means 512b total. */
+ /* On an 32-bit arch this means 512b total. */
+ char pad[72 - 3*sizeof (int) - 2*sizeof (void *)];
struct {
u_int16_t nscount;
u_int16_t nstimes[MAXNS]; /* ms. */
int nssocks[MAXNS];
- struct sockaddr_in nsaddrs[MAXNS];
+ struct __res_state_ext *ext; /* extention for IPv6 */
} _ext;
} _u;
};
typedef struct __res_state *res_state;
+union res_sockaddr_union {
+ struct sockaddr_in sin;
+#ifdef IN6ADDR_ANY_INIT
+ struct sockaddr_in6 sin6;
+#endif
+#ifdef ISC_ALIGN64
+ int64_t __align64; /* 64bit alignment */
+#else
+ int32_t __align32; /* 32bit alignment */
+#endif
+ char __space[128]; /* max size */
+};
+
/*
* Resolver flags (used to be discrete per-module statics ints).
*/
#define RES_F_VC 0x00000001 /* socket is TCP */
#define RES_F_CONN 0x00000002 /* socket is connected */
+#define RES_F_EDNS0ERR 0x00000004 /* EDNS0 caused errors */
/* res_findzonecut() options */
#define RES_EXHAUSTIVE 0x00000001 /* always do all queries */
@@ -216,6 +235,14 @@ typedef struct __res_state *res_state;
#define RES_NOCHECKNAME 0x00008000 /* do not check names for sanity. */
#define RES_KEEPTSIG 0x00010000 /* do not strip TSIG records */
#define RES_BLAST 0x00020000 /* blast all recursive servers */
+#define RES_NO_NIBBLE 0x00040000 /* disable IPv6 nibble mode reverse */
+#define RES_NO_BITSTRING 0x00080000 /* disable IPv6 bitstring mode reverse */
+#define RES_NOTLDQUERY 0x00100000 /* don't unqualified name as a tld */
+#define RES_USE_DNSSEC 0x00200000 /* use DNSSEC using OK bit in OPT */
+/* KAME extensions: use higher bit to avoid conflict with ISC use */
+#define RES_USE_DNAME 0x10000000 /* use DNAME */
+#define RES_USE_A6 0x20000000 /* use A6 */
+#define RES_USE_EDNS0 0x40000000 /* use EDNS0 if configured */
#define RES_DEFAULT (RES_RECURSE | RES_DEFNAMES | RES_DNSRCH)
@@ -237,7 +264,8 @@ typedef struct __res_state *res_state;
#define RES_PRF_QUERY 0x00001000
#define RES_PRF_REPLY 0x00002000
#define RES_PRF_INIT 0x00004000
-/* 0x00008000 */
+#define RES_PRF_TRUNC 0x00008000
+/* 0x00010000 */
/* Things involving an internal (static) resolver context. */
#ifdef _REENTRANT
@@ -345,6 +373,12 @@ extern const struct res_sym __p_rcode_syms[];
#define sym_ntop __sym_ntop
#define sym_ntos __sym_ntos
#define sym_ston __sym_ston
+#define res_nopt __res_nopt
+#define res_ndestroy __res_ndestroy
+#define res_nametoclass __res_nametoclass
+#define res_nametotype __res_nametotype
+#define res_setservers __res_setservers
+#define res_getservers __res_getservers
__BEGIN_DECLS
int res_hnok __P((const char *));
int res_ownok __P((const char *));
@@ -360,6 +394,10 @@ const char * loc_ntoa __P((const u_char *binary, char *ascii));
int dn_skipname __P((const u_char *, const u_char *));
void putlong __P((u_int32_t, u_char *));
void putshort __P((u_int16_t, u_char *));
+#ifndef __ultrix__
+u_int16_t _getshort __P((const u_char *src));
+u_int32_t _getlong __P((const u_char *src));
+#endif
const char * p_class __P((int));
const char * p_time __P((u_int32_t));
const char * p_type __P((int));
@@ -406,6 +444,24 @@ int res_nsendsigned __P((res_state, const u_char *, int,
int res_findzonecut __P((res_state, const char *, ns_class, int,
char *, size_t, struct in_addr *, int));
void res_nclose __P((res_state));
+int res_nopt __P((res_state, int, u_char *, int, int));
+void res_send_setqhook __P((res_send_qhook hook));
+void res_send_setrhook __P((res_send_rhook hook));
+int __res_vinit __P((res_state, int));
+void res_destroyservicelist __P((void));
+const char * res_servicename __P((u_int16_t port, const char *proto));
+const char * res_protocolname __P((int num));
+void res_destroyprotolist __P((void));
+void res_buildprotolist __P((void));
+const char * res_get_nibblesuffix __P((res_state));
+const char * res_get_bitstringsuffix __P((res_state));
+void res_ndestroy __P((res_state));
+u_int16_t res_nametoclass __P((const char *buf, int *success));
+u_int16_t res_nametotype __P((const char *buf, int *success));
+void res_setservers __P((res_state,
+ const union res_sockaddr_union *, int));
+int res_getservers __P((res_state,
+ union res_sockaddr_union *, int));
__END_DECLS
#endif /* !_RESOLV_H_ */
OpenPOWER on IntegriCloud