diff options
Diffstat (limited to 'contrib/bind9/lib/lwres/include')
-rw-r--r-- | contrib/bind9/lib/lwres/include/Makefile.in | 25 | ||||
-rw-r--r-- | contrib/bind9/lib/lwres/include/lwres/Makefile.in | 46 | ||||
-rw-r--r-- | contrib/bind9/lib/lwres/include/lwres/context.h | 129 | ||||
-rw-r--r-- | contrib/bind9/lib/lwres/include/lwres/int.h | 34 | ||||
-rw-r--r-- | contrib/bind9/lib/lwres/include/lwres/ipv6.h | 124 | ||||
-rw-r--r-- | contrib/bind9/lib/lwres/include/lwres/lang.h | 33 | ||||
-rw-r--r-- | contrib/bind9/lib/lwres/include/lwres/list.h | 121 | ||||
-rw-r--r-- | contrib/bind9/lib/lwres/include/lwres/lwbuffer.h | 406 | ||||
-rw-r--r-- | contrib/bind9/lib/lwres/include/lwres/lwpacket.h | 159 | ||||
-rw-r--r-- | contrib/bind9/lib/lwres/include/lwres/lwres.h | 579 | ||||
-rw-r--r-- | contrib/bind9/lib/lwres/include/lwres/netdb.h.in | 520 | ||||
-rw-r--r-- | contrib/bind9/lib/lwres/include/lwres/platform.h.in | 120 | ||||
-rw-r--r-- | contrib/bind9/lib/lwres/include/lwres/result.h | 42 | ||||
-rw-r--r-- | contrib/bind9/lib/lwres/include/lwres/stdlib.h | 40 | ||||
-rw-r--r-- | contrib/bind9/lib/lwres/include/lwres/version.h | 28 |
15 files changed, 0 insertions, 2406 deletions
diff --git a/contrib/bind9/lib/lwres/include/Makefile.in b/contrib/bind9/lib/lwres/include/Makefile.in deleted file mode 100644 index 7501060ed148..000000000000 --- a/contrib/bind9/lib/lwres/include/Makefile.in +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC") -# Copyright (C) 2000, 2001 Internet Software Consortium. -# -# Permission to use, copy, modify, and distribute this software for any -# purpose with or without fee is hereby granted, provided that the above -# copyright notice and this permission notice appear in all copies. -# -# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH -# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY -# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, -# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM -# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE -# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -# PERFORMANCE OF THIS SOFTWARE. - -# $Id: Makefile.in,v 1.6 2004/03/05 05:12:49 marka Exp $ - -srcdir = @srcdir@ -VPATH = @srcdir@ -top_srcdir = @top_srcdir@ - -SUBDIRS = lwres -TARGETS = - -@BIND9_MAKE_RULES@ diff --git a/contrib/bind9/lib/lwres/include/lwres/Makefile.in b/contrib/bind9/lib/lwres/include/lwres/Makefile.in deleted file mode 100644 index 98b8f488ef27..000000000000 --- a/contrib/bind9/lib/lwres/include/lwres/Makefile.in +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC") -# Copyright (C) 2000, 2001 Internet Software Consortium. -# -# Permission to use, copy, modify, and distribute this software for any -# purpose with or without fee is hereby granted, provided that the above -# copyright notice and this permission notice appear in all copies. -# -# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH -# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY -# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, -# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM -# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE -# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -# PERFORMANCE OF THIS SOFTWARE. - -# $Id: Makefile.in,v 1.21 2004/03/05 05:12:52 marka Exp $ - -srcdir = @srcdir@ -VPATH = @srcdir@ -top_srcdir = @top_srcdir@ - -# -# Only list headers that are to be installed and are not -# machine generated. The latter are handled specially in the -# install target below. -# -HEADERS = context.h lwbuffer.h lwpacket.h lwres.h result.h \ - int.h lang.h list.h ipv6.h version.h - -SUBDIRS = -TARGETS = - -@BIND9_MAKE_RULES@ - -installdirs: - $(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${includedir}/lwres - -install:: installdirs - for i in ${HEADERS}; do \ - ${INSTALL_DATA} ${srcdir}/$$i ${DESTDIR}${includedir}/lwres ; \ - done - ${INSTALL_DATA} netdb.h ${DESTDIR}${includedir}/lwres - ${INSTALL_DATA} platform.h ${DESTDIR}${includedir}/lwres - -distclean:: - rm -f netdb.h platform.h diff --git a/contrib/bind9/lib/lwres/include/lwres/context.h b/contrib/bind9/lib/lwres/include/lwres/context.h deleted file mode 100644 index bd2444638b9c..000000000000 --- a/contrib/bind9/lib/lwres/include/lwres/context.h +++ /dev/null @@ -1,129 +0,0 @@ -/* - * Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC") - * Copyright (C) 2000, 2001 Internet Software Consortium. - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH - * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, - * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE - * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -/* $Id: context.h,v 1.15.18.2 2005/04/29 00:17:21 marka Exp $ */ - -#ifndef LWRES_CONTEXT_H -#define LWRES_CONTEXT_H 1 - -/*! \file */ - -#include <stddef.h> - -#include <lwres/lang.h> -#include <lwres/int.h> -#include <lwres/result.h> - -/*! - * Used to set various options such as timeout, authentication, etc - */ -typedef struct lwres_context lwres_context_t; - -LWRES_LANG_BEGINDECLS - -typedef void *(*lwres_malloc_t)(void *arg, size_t length); -typedef void (*lwres_free_t)(void *arg, void *mem, size_t length); - -/* - * XXXMLG - * - * Make the server reload /etc/resolv.conf periodically. - * - * Make the server do sortlist/searchlist. - * - * Client side can disable the search/sortlist processing. - * - * Use an array of addresses/masks and searchlist for client-side, and - * if added to the client disable the processing on the server. - * - * Share /etc/resolv.conf data between contexts. - */ - -/*! - * _SERVERMODE - * Don't allocate and connect a socket to the server, since the - * caller _is_ a server. - */ -#define LWRES_CONTEXT_SERVERMODE 0x00000001U - -lwres_result_t -lwres_context_create(lwres_context_t **contextp, void *arg, - lwres_malloc_t malloc_function, - lwres_free_t free_function, - unsigned int flags); -/**< - * Allocate a lwres context. This is used in all lwres calls. - * - * Memory management can be replaced here by passing in two functions. - * If one is non-NULL, they must both be non-NULL. "arg" is passed to - * these functions. - * - * Contexts are not thread safe. Document at the top of the file. - * XXXMLG - * - * If they are NULL, the standard malloc() and free() will be used. - * - *\pre contextp != NULL && contextp == NULL. - * - *\return Returns 0 on success, non-zero on failure. - */ - -void -lwres_context_destroy(lwres_context_t **contextp); -/**< - * Frees all memory associated with a lwres context. - * - *\pre contextp != NULL && contextp == NULL. - */ - -lwres_uint32_t -lwres_context_nextserial(lwres_context_t *ctx); -/**< - * XXXMLG Document - */ - -void -lwres_context_initserial(lwres_context_t *ctx, lwres_uint32_t serial); - -void -lwres_context_freemem(lwres_context_t *ctx, void *mem, size_t len); - -void * -lwres_context_allocmem(lwres_context_t *ctx, size_t len); - -int -lwres_context_getsocket(lwres_context_t *ctx); - -lwres_result_t -lwres_context_send(lwres_context_t *ctx, - void *sendbase, int sendlen); - -lwres_result_t -lwres_context_recv(lwres_context_t *ctx, - void *recvbase, int recvlen, - int *recvd_len); - -lwres_result_t -lwres_context_sendrecv(lwres_context_t *ctx, - void *sendbase, int sendlen, - void *recvbase, int recvlen, - int *recvd_len); - -LWRES_LANG_ENDDECLS - -#endif /* LWRES_CONTEXT_H */ - diff --git a/contrib/bind9/lib/lwres/include/lwres/int.h b/contrib/bind9/lib/lwres/include/lwres/int.h deleted file mode 100644 index 337316e21f4a..000000000000 --- a/contrib/bind9/lib/lwres/include/lwres/int.h +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC") - * Copyright (C) 2000, 2001 Internet Software Consortium. - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH - * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, - * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE - * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -/* $Id: int.h,v 1.8.18.2 2005/04/29 00:17:21 marka Exp $ */ - -#ifndef LWRES_INT_H -#define LWRES_INT_H 1 - -/*! \file */ - -typedef char lwres_int8_t; -typedef unsigned char lwres_uint8_t; -typedef short lwres_int16_t; -typedef unsigned short lwres_uint16_t; -typedef int lwres_int32_t; -typedef unsigned int lwres_uint32_t; -typedef long long lwres_int64_t; -typedef unsigned long long lwres_uint64_t; - -#endif /* LWRES_INT_H */ diff --git a/contrib/bind9/lib/lwres/include/lwres/ipv6.h b/contrib/bind9/lib/lwres/include/lwres/ipv6.h deleted file mode 100644 index 06dab596959e..000000000000 --- a/contrib/bind9/lib/lwres/include/lwres/ipv6.h +++ /dev/null @@ -1,124 +0,0 @@ -/* - * Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC") - * Copyright (C) 2000, 2001 Internet Software Consortium. - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH - * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, - * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE - * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -/* $Id: ipv6.h,v 1.10.18.2 2005/04/29 00:17:21 marka Exp $ */ - -#ifndef LWRES_IPV6_H -#define LWRES_IPV6_H 1 - -/***** - ***** Module Info - *****/ - -/*! \file ipv6.h - * IPv6 definitions for systems which do not support IPv6. - */ - -/*** - *** Imports. - ***/ - -#include <lwres/int.h> -#include <lwres/platform.h> - -/*** - *** Types. - ***/ - -/*% in6_addr structure */ -struct in6_addr { - union { - lwres_uint8_t _S6_u8[16]; - lwres_uint16_t _S6_u16[8]; - lwres_uint32_t _S6_u32[4]; - } _S6_un; -}; -/*@{*/ -/*% IP v6 types */ -#define s6_addr _S6_un._S6_u8 -#define s6_addr8 _S6_un._S6_u8 -#define s6_addr16 _S6_un._S6_u16 -#define s6_addr32 _S6_un._S6_u32 -/*@}*/ - -#define IN6ADDR_ANY_INIT {{{ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }}} -#define IN6ADDR_LOOPBACK_INIT {{{ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 }}} - -LIBLWRES_EXTERNAL_DATA extern const struct in6_addr in6addr_any; -LIBLWRES_EXTERNAL_DATA extern const struct in6_addr in6addr_loopback; - -/*% used in getaddrinfo.c and getnameinfo.c */ -struct sockaddr_in6 { -#ifdef LWRES_PLATFORM_HAVESALEN - lwres_uint8_t sin6_len; - lwres_uint8_t sin6_family; -#else - lwres_uint16_t sin6_family; -#endif - lwres_uint16_t sin6_port; - lwres_uint32_t sin6_flowinfo; - struct in6_addr sin6_addr; - lwres_uint32_t sin6_scope_id; -}; - -#ifdef LWRES_PLATFORM_HAVESALEN -#define SIN6_LEN 1 -#endif - -/*% in6_pktinfo structure */ -struct in6_pktinfo { - struct in6_addr ipi6_addr; /*%< src/dst IPv6 address */ - unsigned int ipi6_ifindex; /*%< send/recv interface index */ -}; - -/*! - * Unspecified IPv6 address - */ -#define IN6_IS_ADDR_UNSPECIFIED(a) \ - (((a)->s6_addr32[0] == 0) && \ - ((a)->s6_addr32[1] == 0) && \ - ((a)->s6_addr32[2] == 0) && \ - ((a)->s6_addr32[3] == 0)) - -/* - * Loopback - */ -#define IN6_IS_ADDR_LOOPBACK(a) \ - (((a)->s6_addr32[0] == 0) && \ - ((a)->s6_addr32[1] == 0) && \ - ((a)->s6_addr32[2] == 0) && \ - ((a)->s6_addr32[3] == htonl(1))) - -/* - * IPv4 compatible - */ -#define IN6_IS_ADDR_V4COMPAT(a) \ - (((a)->s6_addr32[0] == 0) && \ - ((a)->s6_addr32[1] == 0) && \ - ((a)->s6_addr32[2] == 0) && \ - ((a)->s6_addr32[3] != 0) && \ - ((a)->s6_addr32[3] != htonl(1))) - -/* - * Mapped - */ -#define IN6_IS_ADDR_V4MAPPED(a) \ - (((a)->s6_addr32[0] == 0) && \ - ((a)->s6_addr32[1] == 0) && \ - ((a)->s6_addr32[2] == htonl(0x0000ffff))) - -#endif /* LWRES_IPV6_H */ diff --git a/contrib/bind9/lib/lwres/include/lwres/lang.h b/contrib/bind9/lib/lwres/include/lwres/lang.h deleted file mode 100644 index a38f19dcf8f5..000000000000 --- a/contrib/bind9/lib/lwres/include/lwres/lang.h +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC") - * Copyright (C) 2000, 2001 Internet Software Consortium. - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH - * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, - * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE - * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -/* $Id: lang.h,v 1.7.18.2 2005/04/29 00:17:21 marka Exp $ */ - -#ifndef LWRES_LANG_H -#define LWRES_LANG_H 1 - -/*! \file */ - -#ifdef __cplusplus -#define LWRES_LANG_BEGINDECLS extern "C" { -#define LWRES_LANG_ENDDECLS } -#else -#define LWRES_LANG_BEGINDECLS -#define LWRES_LANG_ENDDECLS -#endif - -#endif /* LWRES_LANG_H */ diff --git a/contrib/bind9/lib/lwres/include/lwres/list.h b/contrib/bind9/lib/lwres/include/lwres/list.h deleted file mode 100644 index c22c59680bb3..000000000000 --- a/contrib/bind9/lib/lwres/include/lwres/list.h +++ /dev/null @@ -1,121 +0,0 @@ -/* - * Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC") - * Copyright (C) 1997-2001 Internet Software Consortium. - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH - * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, - * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE - * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -/* $Id: list.h,v 1.8.18.2 2005/04/29 00:17:22 marka Exp $ */ - -#ifndef LWRES_LIST_H -#define LWRES_LIST_H 1 - -/*! \file */ - -#define LWRES_LIST(type) struct { type *head, *tail; } -#define LWRES_LIST_INIT(list) \ - do { (list).head = NULL; (list).tail = NULL; } while (0) - -#define LWRES_LINK(type) struct { type *prev, *next; } -#define LWRES_LINK_INIT(elt, link) \ - do { \ - (elt)->link.prev = (void *)(-1); \ - (elt)->link.next = (void *)(-1); \ - } while (0) -#define LWRES_LINK_LINKED(elt, link) \ - ((void *)((elt)->link.prev) != (void *)(-1)) - -#define LWRES_LIST_HEAD(list) ((list).head) -#define LWRES_LIST_TAIL(list) ((list).tail) -#define LWRES_LIST_EMPTY(list) LWRES_TF((list).head == NULL) - -#define LWRES_LIST_PREPEND(list, elt, link) \ - do { \ - if ((list).head != NULL) \ - (list).head->link.prev = (elt); \ - else \ - (list).tail = (elt); \ - (elt)->link.prev = NULL; \ - (elt)->link.next = (list).head; \ - (list).head = (elt); \ - } while (0) - -#define LWRES_LIST_APPEND(list, elt, link) \ - do { \ - if ((list).tail != NULL) \ - (list).tail->link.next = (elt); \ - else \ - (list).head = (elt); \ - (elt)->link.prev = (list).tail; \ - (elt)->link.next = NULL; \ - (list).tail = (elt); \ - } while (0) - -#define LWRES_LIST_UNLINK(list, elt, link) \ - do { \ - if ((elt)->link.next != NULL) \ - (elt)->link.next->link.prev = (elt)->link.prev; \ - else \ - (list).tail = (elt)->link.prev; \ - if ((elt)->link.prev != NULL) \ - (elt)->link.prev->link.next = (elt)->link.next; \ - else \ - (list).head = (elt)->link.next; \ - (elt)->link.prev = (void *)(-1); \ - (elt)->link.next = (void *)(-1); \ - } while (0) - -#define LWRES_LIST_PREV(elt, link) ((elt)->link.prev) -#define LWRES_LIST_NEXT(elt, link) ((elt)->link.next) - -#define LWRES_LIST_INSERTBEFORE(list, before, elt, link) \ - do { \ - if ((before)->link.prev == NULL) \ - LWRES_LIST_PREPEND(list, elt, link); \ - else { \ - (elt)->link.prev = (before)->link.prev; \ - (before)->link.prev = (elt); \ - (elt)->link.prev->link.next = (elt); \ - (elt)->link.next = (before); \ - } \ - } while (0) - -#define LWRES_LIST_INSERTAFTER(list, after, elt, link) \ - do { \ - if ((after)->link.next == NULL) \ - LWRES_LIST_APPEND(list, elt, link); \ - else { \ - (elt)->link.next = (after)->link.next; \ - (after)->link.next = (elt); \ - (elt)->link.next->link.prev = (elt); \ - (elt)->link.prev = (after); \ - } \ - } while (0) - -#define LWRES_LIST_APPENDLIST(list1, list2, link) \ - do { \ - if (LWRES_LIST_EMPTY(list1)) \ - (list1) = (list2); \ - else if (!LWRES_LIST_EMPTY(list2)) { \ - (list1).tail->link.next = (list2).head; \ - (list2).head->link.prev = (list1).tail; \ - (list1).tail = (list2).tail; \ - } \ - (list2).head = NULL; \ - (list2).tail = NULL; \ - } while (0) - -#define LWRES_LIST_ENQUEUE(list, elt, link) LWRES_LIST_APPEND(list, elt, link) -#define LWRES_LIST_DEQUEUE(list, elt, link) LWRES_LIST_UNLINK(list, elt, link) - -#endif /* LWRES_LIST_H */ diff --git a/contrib/bind9/lib/lwres/include/lwres/lwbuffer.h b/contrib/bind9/lib/lwres/include/lwres/lwbuffer.h deleted file mode 100644 index 51b1aadd6e84..000000000000 --- a/contrib/bind9/lib/lwres/include/lwres/lwbuffer.h +++ /dev/null @@ -1,406 +0,0 @@ -/* - * Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC") - * Copyright (C) 2000, 2001 Internet Software Consortium. - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH - * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, - * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE - * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -/* $Id: lwbuffer.h,v 1.16.18.2 2005/04/29 00:17:22 marka Exp $ */ - - -/*! \file lwbuffer.h - * - * A buffer is a region of memory, together with a set of related subregions. - * Buffers are used for parsing and I/O operations. - * - * The 'used region' and the 'available' region are disjoint, and their - * union is the buffer's region. The used region extends from the beginning - * of the buffer region to the last used byte. The available region - * extends from one byte greater than the last used byte to the end of the - * buffer's region. The size of the used region can be changed using various - * buffer commands. Initially, the used region is empty. - * - * The used region is further subdivided into two disjoint regions: the - * 'consumed region' and the 'remaining region'. The union of these two - * regions is the used region. The consumed region extends from the beginning - * of the used region to the byte before the 'current' offset (if any). The - * 'remaining' region the current pointer to the end of the used - * region. The size of the consumed region can be changed using various - * buffer commands. Initially, the consumed region is empty. - * - * The 'active region' is an (optional) subregion of the remaining region. - * It extends from the current offset to an offset in the remaining region - * that is selected with lwres_buffer_setactive(). Initially, the active - * region is empty. If the current offset advances beyond the chosen offset, - * the active region will also be empty. - * - * \verbatim - * /----- used region -----\/-- available --\ - * +----------------------------------------+ - * | consumed | remaining | | - * +----------------------------------------+ - * a b c d e - * - * a == base of buffer. - * b == current pointer. Can be anywhere between a and d. - * c == active pointer. Meaningful between b and d. - * d == used pointer. - * e == length of buffer. - * - * a-e == entire (length) of buffer. - * a-d == used region. - * a-b == consumed region. - * b-d == remaining region. - * b-c == optional active region. - * \endverbatim - * - * The following invariants are maintained by all routines: - * - *\verbatim - * length > 0 - * - * base is a valid pointer to length bytes of memory - * - * 0 <= used <= length - * - * 0 <= current <= used - * - * 0 <= active <= used - * (although active < current implies empty active region) - *\endverbatim - * - * \li MP: - * Buffers have no synchronization. Clients must ensure exclusive - * access. - * - * \li Reliability: - * No anticipated impact. - * - * \li Resources: - * Memory: 1 pointer + 6 unsigned integers per buffer. - * - * \li Security: - * No anticipated impact. - * - * \li Standards: - * None. - */ - -#ifndef LWRES_LWBUFFER_H -#define LWRES_LWBUFFER_H 1 - -/*** - *** Imports - ***/ - -#include <lwres/lang.h> -#include <lwres/int.h> - -LWRES_LANG_BEGINDECLS - -/*** - *** Magic numbers - ***/ -#define LWRES_BUFFER_MAGIC 0x4275663fU /* Buf?. */ - -#define LWRES_BUFFER_VALID(b) ((b) != NULL && \ - (b)->magic == LWRES_BUFFER_MAGIC) - -/*! - * The following macros MUST be used only on valid buffers. It is the - * caller's responsibility to ensure this by using the LWRES_BUFFER_VALID - * check above, or by calling another lwres_buffer_*() function (rather than - * another macro.) - */ - -/*! - * Get the length of the used region of buffer "b" - */ -#define LWRES_BUFFER_USEDCOUNT(b) ((b)->used) - -/*! - * Get the length of the available region of buffer "b" - */ -#define LWRES_BUFFER_AVAILABLECOUNT(b) ((b)->length - (b)->used) - -#define LWRES_BUFFER_REMAINING(b) ((b)->used - (b)->current) - -/*! - * Note that the buffer structure is public. This is principally so buffer - * operations can be implemented using macros. Applications are strongly - * discouraged from directly manipulating the structure. - */ - -typedef struct lwres_buffer lwres_buffer_t; -/*! - * Buffer data structure - */ -struct lwres_buffer { - unsigned int magic; - unsigned char *base; - /* The following integers are byte offsets from 'base'. */ - unsigned int length; - unsigned int used; - unsigned int current; - unsigned int active; -}; - -/*** - *** Functions - ***/ - -void -lwres_buffer_init(lwres_buffer_t *b, void *base, unsigned int length); -/**< - * Make 'b' refer to the 'length'-byte region starting at base. - * - * Requires: - * - * 'length' > 0 - * - * 'base' is a pointer to a sequence of 'length' bytes. - * - */ - -void -lwres_buffer_invalidate(lwres_buffer_t *b); -/**< - * Make 'b' an invalid buffer. - * - * Requires: - * 'b' is a valid buffer. - * - * Ensures: - * If assertion checking is enabled, future attempts to use 'b' without - * calling lwres_buffer_init() on it will cause an assertion failure. - */ - -void -lwres_buffer_add(lwres_buffer_t *b, unsigned int n); -/**< - * Increase the 'used' region of 'b' by 'n' bytes. - * - * Requires: - * - * 'b' is a valid buffer - * - * used + n <= length - * - */ - -void -lwres_buffer_subtract(lwres_buffer_t *b, unsigned int n); -/**< - * Decrease the 'used' region of 'b' by 'n' bytes. - * - * Requires: - * - * 'b' is a valid buffer - * - * used >= n - * - */ - -void -lwres_buffer_clear(lwres_buffer_t *b); -/**< - * Make the used region empty. - * - * Requires: - * - * 'b' is a valid buffer - * - * Ensures: - * - * used = 0 - * - */ - - -void -lwres_buffer_first(lwres_buffer_t *b); -/**< - * Make the consumed region empty. - * - * Requires: - * - * 'b' is a valid buffer - * - * Ensures: - * - * current == 0 - * - */ - -void -lwres_buffer_forward(lwres_buffer_t *b, unsigned int n); -/**< - * Increase the 'consumed' region of 'b' by 'n' bytes. - * - * Requires: - * - * 'b' is a valid buffer - * - * current + n <= used - * - */ - -void -lwres_buffer_back(lwres_buffer_t *b, unsigned int n); -/**< - * Decrease the 'consumed' region of 'b' by 'n' bytes. - * - * Requires: - * - * 'b' is a valid buffer - * - * n <= current - * - */ - -lwres_uint8_t -lwres_buffer_getuint8(lwres_buffer_t *b); -/**< - * Read an unsigned 8-bit integer from 'b' and return it. - * - * Requires: - * - * 'b' is a valid buffer. - * - * The length of the available region of 'b' is at least 1. - * - * Ensures: - * - * The current pointer in 'b' is advanced by 1. - * - * Returns: - * - * A 8-bit unsigned integer. - */ - -void -lwres_buffer_putuint8(lwres_buffer_t *b, lwres_uint8_t val); -/**< - * Store an unsigned 8-bit integer from 'val' into 'b'. - * - * Requires: - * 'b' is a valid buffer. - * - * The length of the unused region of 'b' is at least 1. - * - * Ensures: - * The used pointer in 'b' is advanced by 1. - */ - -lwres_uint16_t -lwres_buffer_getuint16(lwres_buffer_t *b); -/**< - * Read an unsigned 16-bit integer in network byte order from 'b', convert - * it to host byte order, and return it. - * - * Requires: - * - * 'b' is a valid buffer. - * - * The length of the available region of 'b' is at least 2. - * - * Ensures: - * - * The current pointer in 'b' is advanced by 2. - * - * Returns: - * - * A 16-bit unsigned integer. - */ - -void -lwres_buffer_putuint16(lwres_buffer_t *b, lwres_uint16_t val); -/**< - * Store an unsigned 16-bit integer in host byte order from 'val' - * into 'b' in network byte order. - * - * Requires: - * 'b' is a valid buffer. - * - * The length of the unused region of 'b' is at least 2. - * - * Ensures: - * The used pointer in 'b' is advanced by 2. - */ - -lwres_uint32_t -lwres_buffer_getuint32(lwres_buffer_t *b); -/**< - * Read an unsigned 32-bit integer in network byte order from 'b', convert - * it to host byte order, and return it. - * - * Requires: - * - * 'b' is a valid buffer. - * - * The length of the available region of 'b' is at least 2. - * - * Ensures: - * - * The current pointer in 'b' is advanced by 2. - * - * Returns: - * - * A 32-bit unsigned integer. - */ - -void -lwres_buffer_putuint32(lwres_buffer_t *b, lwres_uint32_t val); -/**< - * Store an unsigned 32-bit integer in host byte order from 'val' - * into 'b' in network byte order. - * - * Requires: - * 'b' is a valid buffer. - * - * The length of the unused region of 'b' is at least 4. - * - * Ensures: - * The used pointer in 'b' is advanced by 4. - */ - -void -lwres_buffer_putmem(lwres_buffer_t *b, const unsigned char *base, - unsigned int length); -/**< - * Copy 'length' bytes of memory at 'base' into 'b'. - * - * Requires: - * 'b' is a valid buffer. - * - * 'base' points to 'length' bytes of valid memory. - * - */ - -void -lwres_buffer_getmem(lwres_buffer_t *b, unsigned char *base, - unsigned int length); -/**< - * Copy 'length' bytes of memory from 'b' into 'base'. - * - * Requires: - * 'b' is a valid buffer. - * - * 'base' points to at least 'length' bytes of valid memory. - * - * 'b' have at least 'length' bytes remaining. - */ - -LWRES_LANG_ENDDECLS - -#endif /* LWRES_LWBUFFER_H */ diff --git a/contrib/bind9/lib/lwres/include/lwres/lwpacket.h b/contrib/bind9/lib/lwres/include/lwres/lwpacket.h deleted file mode 100644 index c37353d95f04..000000000000 --- a/contrib/bind9/lib/lwres/include/lwres/lwpacket.h +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC") - * Copyright (C) 1999-2001 Internet Software Consortium. - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH - * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, - * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE - * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -/* $Id: lwpacket.h,v 1.18.18.2 2005/04/29 00:17:22 marka Exp $ */ - -#ifndef LWRES_LWPACKET_H -#define LWRES_LWPACKET_H 1 - -#include <lwres/lang.h> -#include <lwres/lwbuffer.h> -#include <lwres/result.h> - -/*% lwres_lwpacket_t */ -typedef struct lwres_lwpacket lwres_lwpacket_t; - -/*% lwres_lwpacket structure */ -struct lwres_lwpacket { - /*! The overall packet length, including the - * entire packet header. - * This field is filled in by the - * \link lwres_gabn.c lwres_gabn_*()\endlink - * and \link lwres_gnba.c lwres_gnba_*()\endlink calls. - */ - lwres_uint32_t length; - /*! Specifies the header format. Currently, - * there is only one format, #LWRES_LWPACKETVERSION_0. - * This field is filled in by the - * \link lwres_gabn.c lwres_gabn_*()\endlink - * and \link lwres_gnba.c lwres_gnba_*()\endlink calls. - */ - lwres_uint16_t version; - /*! Specifies library-defined flags for this packet, such as - * whether the packet is a request or a reply. None of - * these are definable by the caller, but library-defined values - * can be set by the caller. For example, one bit in this field - * indicates if the packet is a request or a response. - * This field is filled in by - * the application wits the exception of the - * #LWRES_LWPACKETFLAG_RESPONSE bit, which is set by the library - * in the - * \link lwres_gabn.c lwres_gabn_*()\endlink - * and \link lwres_gnba.c lwres_gnba_*()\endlink calls. - */ - lwres_uint16_t pktflags; - /*! Set by the requestor and is returned in all replies. - * If two packets from the same source have the same serial - * number and are from the same source, they are assumed to - * be duplicates and the latter ones may be dropped. - * (The library does not do this by default on replies, but - * does so on requests.) - */ - lwres_uint32_t serial; - /*! Opcodes between 0x04000000 and 0xffffffff - * are application defined. Opcodes between - * 0x00000000 and 0x03ffffff are - * reserved for library use. - * This field is filled in by the - * \link lwres_gabn.c lwres_gabn_*()\endlink - * and \link lwres_gnba.c lwres_gnba_*()\endlink calls. - */ - lwres_uint32_t opcode; - /*! Only valid for results. - * Results between 0x04000000 and 0xffffffff are application - * defined. - * Results between 0x00000000 and 0x03ffffff are reserved for - * library use. - * (This is the same reserved range defined in <isc/resultclass.h>, - * so it - * would be trivial to map ISC_R_* result codes into packet result - * codes when appropriate.) - * This field is filled in by the - * \link lwres_gabn.c lwres_gabn_*()\endlink - * and \link lwres_gnba.c lwres_gnba_*()\endlink calls. - */ - lwres_uint32_t result; - /*! Set to the maximum buffer size that the receiver can - * handle on requests, and the size of the buffer needed to - * satisfy a request - * when the buffer is too large for replies. - * This field is supplied by the application. - */ - lwres_uint32_t recvlength; - /*! The packet level auth type used. - * Authtypes between 0x1000 and 0xffff are application defined. - * Authtypes - * between 0x0000 and 0x0fff are reserved for library use. - * This is currently - * unused and MUST be set to zero. - */ - lwres_uint16_t authtype; - /*! The length of the authentication data. - * See the specific - * authtypes for more information on what is contained - * in this field. This is currently unused, and - * MUST be set to zero. - */ - lwres_uint16_t authlength; -}; - -#define LWRES_LWPACKET_LENGTH (4 * 5 + 2 * 4) /*%< Overall length. */ - -#define LWRES_LWPACKETFLAG_RESPONSE 0x0001U /*%< If set, pkt is a response. */ - - -#define LWRES_LWPACKETVERSION_0 0 /*%< Header format. */ - -/*! \file lwpacket.h - * - * - * The remainder of the packet consists of two regions, one described by - * "authlen" and one of "length - authlen - sizeof(lwres_lwpacket_t)". - * - * That is: - * - * \code - * pkt header - * authlen bytes of auth information - * data bytes - * \endcode - * - * Currently defined opcodes: - * - *\li #LWRES_OPCODE_NOOP. Success is always returned, with the packet contents echoed. - * - *\li #LWRES_OPCODE_GETADDRSBYNAME. Return all known addresses for a given name. - * This may return NIS or /etc/hosts info as well as DNS - * information. Flags will be provided to indicate ip4/ip6 - * addresses are desired. - * - *\li #LWRES_OPCODE_GETNAMEBYADDR. Return the hostname for the given address. Once - * again, it will return data from multiple sources. - */ - -LWRES_LANG_BEGINDECLS - -/* XXXMLG document */ -lwres_result_t -lwres_lwpacket_renderheader(lwres_buffer_t *b, lwres_lwpacket_t *pkt); - -lwres_result_t -lwres_lwpacket_parseheader(lwres_buffer_t *b, lwres_lwpacket_t *pkt); - -LWRES_LANG_ENDDECLS - -#endif /* LWRES_LWPACKET_H */ diff --git a/contrib/bind9/lib/lwres/include/lwres/lwres.h b/contrib/bind9/lib/lwres/include/lwres/lwres.h deleted file mode 100644 index b245363aa700..000000000000 --- a/contrib/bind9/lib/lwres/include/lwres/lwres.h +++ /dev/null @@ -1,579 +0,0 @@ -/* - * Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC") - * Copyright (C) 2000, 2001 Internet Software Consortium. - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH - * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, - * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE - * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -/* $Id: lwres.h,v 1.51.18.2 2005/04/29 00:17:22 marka Exp $ */ - -#ifndef LWRES_LWRES_H -#define LWRES_LWRES_H 1 - -#include <stdio.h> - -#include <lwres/context.h> -#include <lwres/lang.h> -#include <lwres/list.h> -#include <lwres/lwpacket.h> -#include <lwres/platform.h> - -/*! \file */ - -/*! - * Design notes: - * - * Each opcode has two structures and three functions which operate on each - * structure. For example, using the "no operation/ping" opcode as an - * example: - * - * <ul><li>lwres_nooprequest_t: - * - * lwres_nooprequest_render() takes a lwres_nooprequest_t and - * and renders it into wire format, storing the allocated - * buffer information in a passed-in buffer. When this buffer - * is no longer needed, it must be freed by - * lwres_context_freemem(). All other memory used by the - * caller must be freed manually, including the - * lwres_nooprequest_t passed in.<br /><br /> - * - * lwres_nooprequest_parse() takes a wire format message and - * breaks it out into a lwres_nooprequest_t. The structure - * must be freed via lwres_nooprequest_free() when it is no longer - * needed.<br /><br /> - * - * lwres_nooprequest_free() releases into the lwres_context_t - * any space allocated during parsing.</li> - * - * <li>lwres_noopresponse_t: - * - * The functions used are similar to the three used for - * requests, just with different names.</li></ul> - * - * Typically, the client will use request_render, response_parse, and - * response_free, while the daemon will use request_parse, response_render, - * and request_free. - * - * The basic flow of a typical client is: - * - * \li fill in a request_t, and call the render function. - * - * \li Transmit the buffer returned to the daemon. - * - * \li Wait for a response. - * - * \li When a response is received, parse it into a response_t. - * - * \li free the request buffer using lwres_context_freemem(). - * - * \li free the response structure and its associated buffer using - * response_free(). - */ - -#define LWRES_UDP_PORT 921 /*%< UDP Port Number */ -#define LWRES_RECVLENGTH 16384 /*%< Maximum Packet Length */ -#define LWRES_ADDR_MAXLEN 16 /*%< changing this breaks ABI */ -#define LWRES_RESOLV_CONF "/etc/resolv.conf" /*%< Location of resolv.conf */ - -/*% DNSSEC is not required (input). Only relevant to rrset queries. */ -#define LWRES_FLAG_TRUSTNOTREQUIRED 0x00000001U -/*% The data was crypto-verified with DNSSEC (output). */ -#define LWRES_FLAG_SECUREDATA 0x00000002U - -/*% no-op */ -#define LWRES_OPCODE_NOOP 0x00000000U - -/*% lwres_nooprequest_t */ -typedef struct { - /* public */ - lwres_uint16_t datalength; - unsigned char *data; -} lwres_nooprequest_t; - -/*% lwres_noopresponse_t */ -typedef struct { - /* public */ - lwres_uint16_t datalength; - unsigned char *data; -} lwres_noopresponse_t; - -/*% get addresses by name */ -#define LWRES_OPCODE_GETADDRSBYNAME 0x00010001U - -/*% lwres_addr_t */ -typedef struct lwres_addr lwres_addr_t; - -/*% LWRES_LIST */ -typedef LWRES_LIST(lwres_addr_t) lwres_addrlist_t; - -/*% lwres_addr */ -struct lwres_addr { - lwres_uint32_t family; - lwres_uint16_t length; - unsigned char address[LWRES_ADDR_MAXLEN]; - LWRES_LINK(lwres_addr_t) link; -}; - -/*% lwres_gabnrequest_t */ -typedef struct { - /* public */ - lwres_uint32_t flags; - lwres_uint32_t addrtypes; - lwres_uint16_t namelen; - char *name; -} lwres_gabnrequest_t; - -/*% lwres_gabnresponse_t */ -typedef struct { - /* public */ - lwres_uint32_t flags; - lwres_uint16_t naliases; - lwres_uint16_t naddrs; - char *realname; - char **aliases; - lwres_uint16_t realnamelen; - lwres_uint16_t *aliaslen; - lwres_addrlist_t addrs; - /*! if base != NULL, it will be freed when this structure is freed. */ - void *base; - size_t baselen; -} lwres_gabnresponse_t; - -/*% get name by address */ -#define LWRES_OPCODE_GETNAMEBYADDR 0x00010002U - -/*% lwres_gnbarequest_t */ -typedef struct { - /* public */ - lwres_uint32_t flags; - lwres_addr_t addr; -} lwres_gnbarequest_t; - -/*% lwres_gnbaresponse_t */ -typedef struct { - /* public */ - lwres_uint32_t flags; - lwres_uint16_t naliases; - char *realname; - char **aliases; - lwres_uint16_t realnamelen; - lwres_uint16_t *aliaslen; - /*! if base != NULL, it will be freed when this structure is freed. */ - void *base; - size_t baselen; -} lwres_gnbaresponse_t; - -/*% get rdata by name */ -#define LWRES_OPCODE_GETRDATABYNAME 0x00010003U - -/*% lwres_grbnrequest_t */ -typedef struct { - /* public */ - lwres_uint32_t flags; - lwres_uint16_t rdclass; - lwres_uint16_t rdtype; - lwres_uint16_t namelen; - char *name; -} lwres_grbnrequest_t; - -/*% lwres_grbnresponse_t */ -typedef struct { - /* public */ - lwres_uint32_t flags; - lwres_uint16_t rdclass; - lwres_uint16_t rdtype; - lwres_uint32_t ttl; - lwres_uint16_t nrdatas; - lwres_uint16_t nsigs; - char *realname; - lwres_uint16_t realnamelen; - unsigned char **rdatas; - lwres_uint16_t *rdatalen; - unsigned char **sigs; - lwres_uint16_t *siglen; - /*% if base != NULL, it will be freed when this structure is freed. */ - void *base; - size_t baselen; -} lwres_grbnresponse_t; - -/*% Used by lwres_getrrsetbyname() */ -#define LWRDATA_VALIDATED 0x00000001 - -/*! - * resolv.conf data - */ - -#define LWRES_CONFMAXNAMESERVERS 3 /*%< max 3 "nameserver" entries */ -#define LWRES_CONFMAXLWSERVERS 1 /*%< max 1 "lwserver" entry */ -#define LWRES_CONFMAXSEARCH 8 /*%< max 8 domains in "search" entry */ -#define LWRES_CONFMAXLINELEN 256 /*%< max size of a line */ -#define LWRES_CONFMAXSORTLIST 10 /*%< max 10 */ - -/*% lwres_conf_t */ -typedef struct { - lwres_context_t *lwctx; - lwres_addr_t nameservers[LWRES_CONFMAXNAMESERVERS]; - lwres_uint8_t nsnext; /*%< index for next free slot */ - - lwres_addr_t lwservers[LWRES_CONFMAXLWSERVERS]; - lwres_uint8_t lwnext; /*%< index for next free slot */ - - char *domainname; - - char *search[LWRES_CONFMAXSEARCH]; - lwres_uint8_t searchnxt; /*%< index for next free slot */ - - struct { - lwres_addr_t addr; - /*% mask has a non-zero 'family' and 'length' if set */ - lwres_addr_t mask; - } sortlist[LWRES_CONFMAXSORTLIST]; - lwres_uint8_t sortlistnxt; - - lwres_uint8_t resdebug; /*%< non-zero if 'options debug' set */ - lwres_uint8_t ndots; /*%< set to n in 'options ndots:n' */ - lwres_uint8_t no_tld_query; /*%< non-zero if 'options no_tld_query' */ -} lwres_conf_t; - -#define LWRES_ADDRTYPE_V4 0x00000001U /*%< ipv4 */ -#define LWRES_ADDRTYPE_V6 0x00000002U /*%< ipv6 */ - -#define LWRES_MAX_ALIASES 16 /*%< max # of aliases */ -#define LWRES_MAX_ADDRS 64 /*%< max # of addrs */ - -LWRES_LANG_BEGINDECLS - -/*% This is in host byte order. */ -LIBLWRES_EXTERNAL_DATA extern lwres_uint16_t lwres_udp_port; - -LIBLWRES_EXTERNAL_DATA extern const char *lwres_resolv_conf; - -lwres_result_t -lwres_gabnrequest_render(lwres_context_t *ctx, lwres_gabnrequest_t *req, - lwres_lwpacket_t *pkt, lwres_buffer_t *b); - -lwres_result_t -lwres_gabnresponse_render(lwres_context_t *ctx, lwres_gabnresponse_t *req, - lwres_lwpacket_t *pkt, lwres_buffer_t *b); - -lwres_result_t -lwres_gabnrequest_parse(lwres_context_t *ctx, lwres_buffer_t *b, - lwres_lwpacket_t *pkt, lwres_gabnrequest_t **structp); - -lwres_result_t -lwres_gabnresponse_parse(lwres_context_t *ctx, lwres_buffer_t *b, - lwres_lwpacket_t *pkt, - lwres_gabnresponse_t **structp); - -void -lwres_gabnrequest_free(lwres_context_t *ctx, lwres_gabnrequest_t **structp); -/**< - * Frees any dynamically allocated memory for this structure. - * - * Requires: - * - * ctx != NULL, and be a context returned via lwres_context_create(). - * - * structp != NULL && *structp != NULL. - * - * Ensures: - * - * *structp == NULL. - * - * All memory allocated by this structure will be returned to the - * system via the context's free function. - */ - -void -lwres_gabnresponse_free(lwres_context_t *ctx, lwres_gabnresponse_t **structp); -/**< - * Frees any dynamically allocated memory for this structure. - * - * Requires: - * - * ctx != NULL, and be a context returned via lwres_context_create(). - * - * structp != NULL && *structp != NULL. - * - * Ensures: - * - * *structp == NULL. - * - * All memory allocated by this structure will be returned to the - * system via the context's free function. - */ - - -lwres_result_t -lwres_gnbarequest_render(lwres_context_t *ctx, lwres_gnbarequest_t *req, - lwres_lwpacket_t *pkt, lwres_buffer_t *b); - -lwres_result_t -lwres_gnbaresponse_render(lwres_context_t *ctx, lwres_gnbaresponse_t *req, - lwres_lwpacket_t *pkt, lwres_buffer_t *b); - -lwres_result_t -lwres_gnbarequest_parse(lwres_context_t *ctx, lwres_buffer_t *b, - lwres_lwpacket_t *pkt, lwres_gnbarequest_t **structp); - -lwres_result_t -lwres_gnbaresponse_parse(lwres_context_t *ctx, lwres_buffer_t *b, - lwres_lwpacket_t *pkt, - lwres_gnbaresponse_t **structp); - -void -lwres_gnbarequest_free(lwres_context_t *ctx, lwres_gnbarequest_t **structp); -/**< - * Frees any dynamically allocated memory for this structure. - * - * Requires: - * - * ctx != NULL, and be a context returned via lwres_context_create(). - * - * structp != NULL && *structp != NULL. - * - * Ensures: - * - * *structp == NULL. - * - * All memory allocated by this structure will be returned to the - * system via the context's free function. - */ - -void -lwres_gnbaresponse_free(lwres_context_t *ctx, lwres_gnbaresponse_t **structp); -/**< - * Frees any dynamically allocated memory for this structure. - * - * Requires: - * - * ctx != NULL, and be a context returned via lwres_context_create(). - * - * structp != NULL && *structp != NULL. - * - * Ensures: - * - * *structp == NULL. - * - * All memory allocated by this structure will be returned to the - * system via the context's free function. - */ - -lwres_result_t -lwres_grbnrequest_render(lwres_context_t *ctx, lwres_grbnrequest_t *req, - lwres_lwpacket_t *pkt, lwres_buffer_t *b); - -lwres_result_t -lwres_grbnresponse_render(lwres_context_t *ctx, lwres_grbnresponse_t *req, - lwres_lwpacket_t *pkt, lwres_buffer_t *b); - -lwres_result_t -lwres_grbnrequest_parse(lwres_context_t *ctx, lwres_buffer_t *b, - lwres_lwpacket_t *pkt, lwres_grbnrequest_t **structp); - -lwres_result_t -lwres_grbnresponse_parse(lwres_context_t *ctx, lwres_buffer_t *b, - lwres_lwpacket_t *pkt, - lwres_grbnresponse_t **structp); - -void -lwres_grbnrequest_free(lwres_context_t *ctx, lwres_grbnrequest_t **structp); -/**< - * Frees any dynamically allocated memory for this structure. - * - * Requires: - * - * ctx != NULL, and be a context returned via lwres_context_create(). - * - * structp != NULL && *structp != NULL. - * - * Ensures: - * - * *structp == NULL. - * - * All memory allocated by this structure will be returned to the - * system via the context's free function. - */ - -void -lwres_grbnresponse_free(lwres_context_t *ctx, lwres_grbnresponse_t **structp); -/**< - * Frees any dynamically allocated memory for this structure. - * - * Requires: - * - * ctx != NULL, and be a context returned via lwres_context_create(). - * - * structp != NULL && *structp != NULL. - * - * Ensures: - * - * *structp == NULL. - * - * All memory allocated by this structure will be returned to the - * system via the context's free function. - */ - -lwres_result_t -lwres_nooprequest_render(lwres_context_t *ctx, lwres_nooprequest_t *req, - lwres_lwpacket_t *pkt, lwres_buffer_t *b); -/**< - * Allocate space and render into wire format a noop request packet. - * - * Requires: - * - * ctx != NULL, and be a context returned via lwres_context_create(). - * - * b != NULL, and points to a lwres_buffer_t. The contents of the - * buffer structure will be initialized to contain the wire-format - * noop request packet. - * - * Caller needs to fill in parts of "pkt" before calling: - * serial, maxrecv, result. - * - * Returns: - * - * Returns 0 on success, non-zero on failure. - * - * On successful return, *b will contain data about the wire-format - * packet. It can be transmitted in any way, including lwres_sendblock(). - */ - -lwres_result_t -lwres_noopresponse_render(lwres_context_t *ctx, lwres_noopresponse_t *req, - lwres_lwpacket_t *pkt, lwres_buffer_t *b); - -lwres_result_t -lwres_nooprequest_parse(lwres_context_t *ctx, lwres_buffer_t *b, - lwres_lwpacket_t *pkt, lwres_nooprequest_t **structp); -/**< - * Parse a noop request. Note that to get here, the lwpacket must have - * already been parsed and removed by the caller, otherwise it would be - * pretty hard for it to know this is the right function to call. - * - * The function verifies bits of the header, but does not modify it. - */ - -lwres_result_t -lwres_noopresponse_parse(lwres_context_t *ctx, lwres_buffer_t *b, - lwres_lwpacket_t *pkt, - lwres_noopresponse_t **structp); - -void -lwres_nooprequest_free(lwres_context_t *ctx, lwres_nooprequest_t **structp); - -void -lwres_noopresponse_free(lwres_context_t *ctx, lwres_noopresponse_t **structp); - -/**< - * Frees any dynamically allocated memory for this structure. - * - * Requires: - * - * ctx != NULL, and be a context returned via lwres_context_create(). - * - * structp != NULL && *structp != NULL. - * - * Ensures: - * - * *structp == NULL. - * - * All memory allocated by this structure will be returned to the - * system via the context's free function. - */ - -lwres_result_t -lwres_conf_parse(lwres_context_t *ctx, const char *filename); -/**< - * parses a resolv.conf-format file and stores the results in the structure - * pointed to by *ctx. - * - * Requires: - * ctx != NULL - * filename != NULL && strlen(filename) > 0 - * - * Returns: - * LWRES_R_SUCCESS on a successful parse. - * Anything else on error, although the structure may be partially filled - * in. - */ - -lwres_result_t -lwres_conf_print(lwres_context_t *ctx, FILE *fp); -/**< - * Prints a resolv.conf-format of confdata output to fp. - * - * Requires: - * ctx != NULL - */ - -void -lwres_conf_init(lwres_context_t *ctx); -/**< - * sets all internal fields to a default state. Used to initialize a new - * lwres_conf_t structure (not reset a used on). - * - * Requires: - * ctx != NULL - */ - -void -lwres_conf_clear(lwres_context_t *ctx); -/**< - * frees all internally allocated memory in confdata. Uses the memory - * routines supplied by ctx. - * - * Requires: - * ctx != NULL - */ - -lwres_conf_t * -lwres_conf_get(lwres_context_t *ctx); -/**< - * Be extremely cautions in modifying the contents of this structure; it - * needs an API to return the various bits of data, walk lists, etc. - * - * Requires: - * ctx != NULL - */ - -/* - * Helper functions - */ - -lwres_result_t -lwres_data_parse(lwres_buffer_t *b, unsigned char **p, lwres_uint16_t *len); - -lwres_result_t -lwres_string_parse(lwres_buffer_t *b, char **c, lwres_uint16_t *len); - -lwres_result_t -lwres_addr_parse(lwres_buffer_t *b, lwres_addr_t *addr); - -lwres_result_t -lwres_getaddrsbyname(lwres_context_t *ctx, const char *name, - lwres_uint32_t addrtypes, lwres_gabnresponse_t **structp); - -lwres_result_t -lwres_getnamebyaddr(lwres_context_t *ctx, lwres_uint32_t addrtype, - lwres_uint16_t addrlen, const unsigned char *addr, - lwres_gnbaresponse_t **structp); - -lwres_result_t -lwres_getrdatabyname(lwres_context_t *ctx, const char *name, - lwres_uint16_t rdclass, lwres_uint16_t rdtype, - lwres_uint32_t flags, lwres_grbnresponse_t **structp); - -LWRES_LANG_ENDDECLS - -#endif /* LWRES_LWRES_H */ diff --git a/contrib/bind9/lib/lwres/include/lwres/netdb.h.in b/contrib/bind9/lib/lwres/include/lwres/netdb.h.in deleted file mode 100644 index eaef63b9066d..000000000000 --- a/contrib/bind9/lib/lwres/include/lwres/netdb.h.in +++ /dev/null @@ -1,520 +0,0 @@ -/* - * Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC") - * Copyright (C) 2000, 2001 Internet Software Consortium. - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH - * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, - * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE - * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -/* $Id: netdb.h.in,v 1.35.18.2 2005/04/29 00:17:22 marka Exp $ */ - -/*! \file */ - -#ifndef LWRES_NETDB_H -#define LWRES_NETDB_H 1 - -#include <stddef.h> /* Required on FreeBSD (and others?) for size_t. */ -#include <netdb.h> /* Contractual provision. */ - -#include <lwres/lang.h> - -/* - * Define if <netdb.h> does not declare struct addrinfo. - */ -@ISC_LWRES_NEEDADDRINFO@ - -#ifdef ISC_LWRES_NEEDADDRINFO -struct addrinfo { - int ai_flags; /* AI_PASSIVE, AI_CANONNAME */ - int ai_family; /* PF_xxx */ - int ai_socktype; /* SOCK_xxx */ - int ai_protocol; /* 0 or IPPROTO_xxx for IPv4 and IPv6 */ - size_t ai_addrlen; /* Length of ai_addr */ - char *ai_canonname; /* Canonical name for hostname */ - struct sockaddr *ai_addr; /* Binary address */ - struct addrinfo *ai_next; /* Next structure in linked list */ -}; -#endif - -/* - * Undefine all #defines we are interested in as <netdb.h> may or may not have - * defined them. - */ - -/* - * Error return codes from gethostbyname() and gethostbyaddr() - * (left in extern int h_errno). - */ - -#undef NETDB_INTERNAL -#undef NETDB_SUCCESS -#undef HOST_NOT_FOUND -#undef TRY_AGAIN -#undef NO_RECOVERY -#undef NO_DATA -#undef NO_ADDRESS - -#define NETDB_INTERNAL -1 /* see errno */ -#define NETDB_SUCCESS 0 /* no problem */ -#define HOST_NOT_FOUND 1 /* Authoritative Answer Host not found */ -#define TRY_AGAIN 2 /* Non-Authoritive Host not found, or SERVERFAIL */ -#define NO_RECOVERY 3 /* Non recoverable errors, FORMERR, REFUSED, NOTIMP */ -#define NO_DATA 4 /* Valid name, no data record of requested type */ -#define NO_ADDRESS NO_DATA /* no address, look for MX record */ - -/* - * Error return codes from getaddrinfo() - */ - -#undef EAI_ADDRFAMILY -#undef EAI_AGAIN -#undef EAI_BADFLAGS -#undef EAI_FAIL -#undef EAI_FAMILY -#undef EAI_MEMORY -#undef EAI_NODATA -#undef EAI_NONAME -#undef EAI_SERVICE -#undef EAI_SOCKTYPE -#undef EAI_SYSTEM -#undef EAI_BADHINTS -#undef EAI_PROTOCOL -#undef EAI_MAX - -#define EAI_ADDRFAMILY 1 /* address family for hostname not supported */ -#define EAI_AGAIN 2 /* temporary failure in name resolution */ -#define EAI_BADFLAGS 3 /* invalid value for ai_flags */ -#define EAI_FAIL 4 /* non-recoverable failure in name resolution */ -#define EAI_FAMILY 5 /* ai_family not supported */ -#define EAI_MEMORY 6 /* memory allocation failure */ -#define EAI_NODATA 7 /* no address associated with hostname */ -#define EAI_NONAME 8 /* hostname nor servname provided, or not known */ -#define EAI_SERVICE 9 /* servname not supported for ai_socktype */ -#define EAI_SOCKTYPE 10 /* ai_socktype not supported */ -#define EAI_SYSTEM 11 /* system error returned in errno */ -#define EAI_BADHINTS 12 -#define EAI_PROTOCOL 13 -#define EAI_MAX 14 - -/* - * Flag values for getaddrinfo() - */ -#undef AI_PASSIVE -#undef AI_CANONNAME -#undef AI_NUMERICHOST - -#define AI_PASSIVE 0x00000001 -#define AI_CANONNAME 0x00000002 -#define AI_NUMERICHOST 0x00000004 - -/* - * Flag values for getipnodebyname() - */ -#undef AI_V4MAPPED -#undef AI_ALL -#undef AI_ADDRCONFIG -#undef AI_DEFAULT - -#define AI_V4MAPPED 0x00000008 -#define AI_ALL 0x00000010 -#define AI_ADDRCONFIG 0x00000020 -#define AI_DEFAULT (AI_V4MAPPED|AI_ADDRCONFIG) - -/* - * Constants for lwres_getnameinfo() - */ -#undef NI_MAXHOST -#undef NI_MAXSERV - -#define NI_MAXHOST 1025 -#define NI_MAXSERV 32 - -/* - * Flag values for lwres_getnameinfo() - */ -#undef NI_NOFQDN -#undef NI_NUMERICHOST -#undef NI_NAMEREQD -#undef NI_NUMERICSERV -#undef NI_DGRAM -#undef NI_NUMERICSCOPE - -#define NI_NOFQDN 0x00000001 -#define NI_NUMERICHOST 0x00000002 -#define NI_NAMEREQD 0x00000004 -#define NI_NUMERICSERV 0x00000008 -#define NI_DGRAM 0x00000010 -#define NI_NUMERICSCOPE 0x00000020 /*2553bis-00*/ - -/* - * Define if <netdb.h> does not declare struct rrsetinfo. - */ -@ISC_LWRES_NEEDRRSETINFO@ - -#ifdef ISC_LWRES_NEEDRRSETINFO -/* - * Structures for getrrsetbyname() - */ -struct rdatainfo { - unsigned int rdi_length; - unsigned char *rdi_data; -}; - -struct rrsetinfo { - unsigned int rri_flags; - int rri_rdclass; - int rri_rdtype; - unsigned int rri_ttl; - unsigned int rri_nrdatas; - unsigned int rri_nsigs; - char *rri_name; - struct rdatainfo *rri_rdatas; - struct rdatainfo *rri_sigs; -}; - -/* - * Flags for getrrsetbyname() - */ -#define RRSET_VALIDATED 0x00000001 - /* Set was dnssec validated */ - -/* - * Return codes for getrrsetbyname() - */ -#define ERRSET_SUCCESS 0 -#define ERRSET_NOMEMORY 1 -#define ERRSET_FAIL 2 -#define ERRSET_INVAL 3 -#define ERRSET_NONAME 4 -#define ERRSET_NODATA 5 -#endif - -/* - * Define to map into lwres_ namespace. - */ - -#define LWRES_NAMESPACE - -#ifdef LWRES_NAMESPACE - -/* - * Use our versions not the ones from the C library. - */ - -#ifdef getnameinfo -#undef getnameinfo -#endif -#define getnameinfo lwres_getnameinfo - -#ifdef getaddrinfo -#undef getaddrinfo -#endif -#define getaddrinfo lwres_getaddrinfo - -#ifdef freeaddrinfo -#undef freeaddrinfo -#endif -#define freeaddrinfo lwres_freeaddrinfo - -#ifdef gai_strerror -#undef gai_strerror -#endif -#define gai_strerror lwres_gai_strerror - -#ifdef herror -#undef herror -#endif -#define herror lwres_herror - -#ifdef hstrerror -#undef hstrerror -#endif -#define hstrerror lwres_hstrerror - -#ifdef getipnodebyname -#undef getipnodebyname -#endif -#define getipnodebyname lwres_getipnodebyname - -#ifdef getipnodebyaddr -#undef getipnodebyaddr -#endif -#define getipnodebyaddr lwres_getipnodebyaddr - -#ifdef freehostent -#undef freehostent -#endif -#define freehostent lwres_freehostent - -#ifdef gethostbyname -#undef gethostbyname -#endif -#define gethostbyname lwres_gethostbyname - -#ifdef gethostbyname2 -#undef gethostbyname2 -#endif -#define gethostbyname2 lwres_gethostbyname2 - -#ifdef gethostbyaddr -#undef gethostbyaddr -#endif -#define gethostbyaddr lwres_gethostbyaddr - -#ifdef gethostent -#undef gethostent -#endif -#define gethostent lwres_gethostent - -#ifdef sethostent -#undef sethostent -#endif -#define sethostent lwres_sethostent - -#ifdef endhostent -#undef endhostent -#endif -#define endhostent lwres_endhostent - -/* #define sethostfile lwres_sethostfile */ - -#ifdef gethostbyname_r -#undef gethostbyname_r -#endif -#define gethostbyname_r lwres_gethostbyname_r - -#ifdef gethostbyaddr_r -#undef gethostbyaddr_r -#endif -#define gethostbyaddr_r lwres_gethostbyaddr_r - -#ifdef gethostent_r -#undef gethostent_r -#endif -#define gethostent_r lwres_gethostent_r - -#ifdef sethostent_r -#undef sethostent_r -#endif -#define sethostent_r lwres_sethostent_r - -#ifdef endhostent_r -#undef endhostent_r -#endif -#define endhostent_r lwres_endhostent_r - -#ifdef getrrsetbyname -#undef getrrsetbyname -#endif -#define getrrsetbyname lwres_getrrsetbyname - -#ifdef freerrset -#undef freerrset -#endif -#define freerrset lwres_freerrset - -#ifdef notyet -#define getservbyname lwres_getservbyname -#define getservbyport lwres_getservbyport -#define getservent lwres_getservent -#define setservent lwres_setservent -#define endservent lwres_endservent - -#define getservbyname_r lwres_getservbyname_r -#define getservbyport_r lwres_getservbyport_r -#define getservent_r lwres_getservent_r -#define setservent_r lwres_setservent_r -#define endservent_r lwres_endservent_r - -#define getprotobyname lwres_getprotobyname -#define getprotobynumber lwres_getprotobynumber -#define getprotoent lwres_getprotoent -#define setprotoent lwres_setprotoent -#define endprotoent lwres_endprotoent - -#define getprotobyname_r lwres_getprotobyname_r -#define getprotobynumber_r lwres_getprotobynumber_r -#define getprotoent_r lwres_getprotoent_r -#define setprotoent_r lwres_setprotoent_r -#define endprotoent_r lwres_endprotoent_r - -#ifdef getnetbyname -#undef getnetbyname -#endif -#define getnetbyname lwres_getnetbyname - -#ifdef getnetbyaddr -#undef getnetbyaddr -#endif -#define getnetbyaddr lwres_getnetbyaddr - -#ifdef getnetent -#undef getnetent -#endif -#define getnetent lwres_getnetent - -#ifdef setnetent -#undef setnetent -#endif -#define setnetent lwres_setnetent - -#ifdef endnetent -#undef endnetent -#endif -#define endnetent lwres_endnetent - - -#ifdef getnetbyname_r -#undef getnetbyname_r -#endif -#define getnetbyname_r lwres_getnetbyname_r - -#ifdef getnetbyaddr_r -#undef getnetbyaddr_r -#endif -#define getnetbyaddr_r lwres_getnetbyaddr_r - -#ifdef getnetent_r -#undef getnetent_r -#endif -#define getnetent_r lwres_getnetent_r - -#ifdef setnetent_r -#undef setnetent_r -#endif -#define setnetent_r lwres_setnetent_r - -#ifdef endnetent_r -#undef endnetent_r -#endif -#define endnetent_r lwres_endnetent_r -#endif /* notyet */ - -#ifdef h_errno -#undef h_errno -#endif -#define h_errno lwres_h_errno - -#endif /* LWRES_NAMESPACE */ - -LWRES_LANG_BEGINDECLS - -extern int lwres_h_errno; - -int lwres_getaddrinfo(const char *, const char *, - const struct addrinfo *, struct addrinfo **); -int lwres_getnameinfo(const struct sockaddr *, size_t, char *, - size_t, char *, size_t, int); -void lwres_freeaddrinfo(struct addrinfo *); -char *lwres_gai_strerror(int); - -struct hostent *lwres_gethostbyaddr(const char *, int, int); -struct hostent *lwres_gethostbyname(const char *); -struct hostent *lwres_gethostbyname2(const char *, int); -struct hostent *lwres_gethostent(void); -struct hostent *lwres_getipnodebyname(const char *, int, int, int *); -struct hostent *lwres_getipnodebyaddr(const void *, size_t, int, int *); -void lwres_endhostent(void); -void lwres_sethostent(int); -/* void lwres_sethostfile(const char *); */ -void lwres_freehostent(struct hostent *); - -int lwres_getrrsetbyname(const char *, unsigned int, unsigned int, - unsigned int, struct rrsetinfo **); -void lwres_freerrset(struct rrsetinfo *); - -#ifdef notyet -struct netent *lwres_getnetbyaddr(unsigned long, int); -struct netent *lwres_getnetbyname(const char *); -struct netent *lwres_getnetent(void); -void lwres_endnetent(void); -void lwres_setnetent(int); - -struct protoent *lwres_getprotobyname(const char *); -struct protoent *lwres_getprotobynumber(int); -struct protoent *lwres_getprotoent(void); -void lwres_endprotoent(void); -void lwres_setprotoent(int); - -struct servent *lwres_getservbyname(const char *, const char *); -struct servent *lwres_getservbyport(int, const char *); -struct servent *lwres_getservent(void); -void lwres_endservent(void); -void lwres_setservent(int); -#endif /* notyet */ - -void lwres_herror(const char *); -const char *lwres_hstrerror(int); - - -struct hostent *lwres_gethostbyaddr_r(const char *, int, int, struct hostent *, - char *, int, int *); -struct hostent *lwres_gethostbyname_r(const char *, struct hostent *, - char *, int, int *); -struct hostent *lwres_gethostent_r(struct hostent *, char *, int, int *); -void lwres_sethostent_r(int); -void lwres_endhostent_r(void); - -#ifdef notyet -struct netent *lwres_getnetbyname_r(const char *, struct netent *, - char *, int); -struct netent *lwres_getnetbyaddr_r(long, int, struct netent *, - char *, int); -struct netent *lwres_getnetent_r(struct netent *, char *, int); -void lwres_setnetent_r(int); -void lwres_endnetent_r(void); - -struct protoent *lwres_getprotobyname_r(const char *, - struct protoent *, char *, int); -struct protoent *lwres_getprotobynumber_r(int, - struct protoent *, char *, int); -struct protoent *lwres_getprotoent_r(struct protoent *, char *, int); -void lwres_setprotoent_r(int); -void lwres_endprotoent_r(void); - -struct servent *lwres_getservbyname_r(const char *name, const char *, - struct servent *, char *, int); -struct servent *lwres_getservbyport_r(int port, const char *, - struct servent *, char *, int); -struct servent *lwres_getservent_r(struct servent *, char *, int); -void lwres_setservent_r(int); -void lwres_endservent_r(void); -#endif /* notyet */ - -LWRES_LANG_ENDDECLS - -#ifdef notyet -/* This is nec'y to make this include file properly replace the sun version. */ -#ifdef sun -#ifdef __GNU_LIBRARY__ -#include <rpc/netdb.h> /* Required. */ -#else /* !__GNU_LIBRARY__ */ -struct rpcent { - char *r_name; /* name of server for this rpc program */ - char **r_aliases; /* alias list */ - int r_number; /* rpc program number */ -}; -struct rpcent *lwres_getrpcbyname(); -struct rpcent *lwres_getrpcbynumber(), -struct rpcent *lwres_getrpcent(); -#endif /* __GNU_LIBRARY__ */ -#endif /* sun */ -#endif /* notyet */ - -/* - * Tell Emacs to use C mode on this file. - * Local variables: - * mode: c - * End: - */ - -#endif /* LWRES_NETDB_H */ diff --git a/contrib/bind9/lib/lwres/include/lwres/platform.h.in b/contrib/bind9/lib/lwres/include/lwres/platform.h.in deleted file mode 100644 index f69e09fcfd39..000000000000 --- a/contrib/bind9/lib/lwres/include/lwres/platform.h.in +++ /dev/null @@ -1,120 +0,0 @@ -/* - * Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC") - * Copyright (C) 2000, 2001 Internet Software Consortium. - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH - * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, - * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE - * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -/* $Id: platform.h.in,v 1.14.18.5 2005/06/08 02:07:59 marka Exp $ */ - -/*! \file */ - -#ifndef LWRES_PLATFORM_H -#define LWRES_PLATFORM_H 1 - -/***** - ***** Platform-dependent defines. - *****/ - -/*** - *** Network. - ***/ - -/* - * Define if this system needs the <netinet/in6.h> header file for IPv6. - */ -@LWRES_PLATFORM_NEEDNETINETIN6H@ - -/* - * Define if this system needs the <netinet6/in6.h> header file for IPv6. - */ -@LWRES_PLATFORM_NEEDNETINET6IN6H@ - -/* - * If sockaddrs on this system have an sa_len field, LWRES_PLATFORM_HAVESALEN - * will be defined. - */ -@LWRES_PLATFORM_HAVESALEN@ - -/* - * If this system has the IPv6 structure definitions, LWRES_PLATFORM_HAVEIPV6 - * will be defined. - */ -@LWRES_PLATFORM_HAVEIPV6@ - -/* - * If this system is missing in6addr_any, LWRES_PLATFORM_NEEDIN6ADDRANY will - * be defined. - */ -@LWRES_PLATFORM_NEEDIN6ADDRANY@ - -/* - * If this system is missing in6addr_loopback, - * LWRES_PLATFORM_NEEDIN6ADDRLOOPBACK will be defined. - */ -@LWRES_PLATFORM_NEEDIN6ADDRLOOPBACK@ - -/* - * If this system has in_addr6, rather than in6_addr, - * LWRES_PLATFORM_HAVEINADDR6 will be defined. - */ -@LWRES_PLATFORM_HAVEINADDR6@ - -/* - * Defined if unistd.h does not cause fd_set to be delared. - */ -@LWRES_PLATFORM_NEEDSYSSELECTH@ - -/* - * Used to control how extern data is linked; needed for Win32 platforms. - */ -@LWRES_PLATFORM_USEDECLSPEC@ - -/* - * Defined this system needs vsnprintf() and snprintf(). - */ -@LWRES_PLATFORM_NEEDVSNPRINTF@ - -/* - * If this system need a modern sprintf() that returns (int) not (char*). - */ -@LWRES_PLATFORM_NEEDSPRINTF@ - -/* - * The printf format string modifier to use with lwres_uint64_t values. - */ -@LWRES_PLATFORM_QUADFORMAT@ - -/*! \brief - * Define if this system needs strtoul. - */ -@LWRES_PLATFORM_NEEDSTRTOUL@ - -#ifndef LWRES_PLATFORM_USEDECLSPEC -#define LIBLWRES_EXTERNAL_DATA -#else -#ifdef LIBLWRES_EXPORTS -#define LIBLWRES_EXTERNAL_DATA __declspec(dllexport) -#else -#define LIBLWRES_EXTERNAL_DATA __declspec(dllimport) -#endif -#endif - -/* - * Tell Emacs to use C mode on this file. - * Local Variables: - * mode: c - * End: - */ - -#endif /* LWRES_PLATFORM_H */ diff --git a/contrib/bind9/lib/lwres/include/lwres/result.h b/contrib/bind9/lib/lwres/include/lwres/result.h deleted file mode 100644 index 6253fb28a2ee..000000000000 --- a/contrib/bind9/lib/lwres/include/lwres/result.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC") - * Copyright (C) 2000, 2001 Internet Software Consortium. - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH - * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, - * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE - * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -/* $Id: result.h,v 1.15.18.2 2005/04/29 00:17:23 marka Exp $ */ - -#ifndef LWRES_RESULT_H -#define LWRES_RESULT_H 1 - -/*! \file */ - -typedef unsigned int lwres_result_t; - -#define LWRES_R_SUCCESS 0 -#define LWRES_R_NOMEMORY 1 -#define LWRES_R_TIMEOUT 2 -#define LWRES_R_NOTFOUND 3 -#define LWRES_R_UNEXPECTEDEND 4 /* unexpected end of input */ -#define LWRES_R_FAILURE 5 /* generic failure */ -#define LWRES_R_IOERROR 6 -#define LWRES_R_NOTIMPLEMENTED 7 -#define LWRES_R_UNEXPECTED 8 -#define LWRES_R_TRAILINGDATA 9 -#define LWRES_R_INCOMPLETE 10 -#define LWRES_R_RETRY 11 -#define LWRES_R_TYPENOTFOUND 12 -#define LWRES_R_TOOLARGE 13 - -#endif /* LWRES_RESULT_H */ diff --git a/contrib/bind9/lib/lwres/include/lwres/stdlib.h b/contrib/bind9/lib/lwres/include/lwres/stdlib.h deleted file mode 100644 index 6855fcf49a76..000000000000 --- a/contrib/bind9/lib/lwres/include/lwres/stdlib.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC") - * Copyright (C) 2003 Internet Software Consortium. - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH - * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, - * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE - * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -/* $Id: stdlib.h,v 1.2.2.1 2005/06/08 02:08:01 marka Exp $ */ - -#ifndef LWRES_STDLIB_H -#define LWRES_STDLIB_H 1 - -/*! \file */ - -#include <stdlib.h> - -#include <lwres/lang.h> -#include <lwres/platform.h> - -#ifdef LWRES_PLATFORM_NEEDSTRTOUL -#define strtoul lwres_strtoul -#endif - -LWRES_LANG_BEGINDECLS - -unsigned long lwres_strtoul(const char *, char **, int); - -LWRES_LANG_ENDDECLS - -#endif diff --git a/contrib/bind9/lib/lwres/include/lwres/version.h b/contrib/bind9/lib/lwres/include/lwres/version.h deleted file mode 100644 index 252b9031c87a..000000000000 --- a/contrib/bind9/lib/lwres/include/lwres/version.h +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC") - * Copyright (C) 2001 Internet Software Consortium. - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH - * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, - * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE - * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -/* $Id: version.h,v 1.3.18.2 2005/04/29 00:17:23 marka Exp $ */ - -/*! \file */ - -#include <lwres/platform.h> - -LIBLWRES_EXTERNAL_DATA extern const char lwres_version[]; - -LIBLWRES_EXTERNAL_DATA extern const unsigned int lwres_libinterface; -LIBLWRES_EXTERNAL_DATA extern const unsigned int lwres_librevision; -LIBLWRES_EXTERNAL_DATA extern const unsigned int lwres_libage; |