MFC the upgrade to BIND 9.3.4

This commit is contained in:
dougb 2007-02-07 00:46:35 +00:00
parent 407638c786
commit 84bc9f6c86
15 changed files with 268 additions and 299 deletions

View File

@ -1,4 +1,11 @@
--- 9.3.4 released ---
2126. [security] Serialise validation of type ANY responses. [RT #16555]
2124. [security] It was possible to dereference a freed fetch
context. [RT #16584]
--- 9.3.3 released ---
2107. [bug] dighost.c: more cleanup of buffers. [RT #16499]

View File

@ -1,5 +1,9 @@
Frequently Asked Questions about BIND 9
Copyright © 2004-2007 Internet Systems Consortium, Inc. ("ISC")
Copyright © 2000-2003 Internet Software Consortium.
-------------------------------------------------------------------------------
Q: Why doesn't -u work on Linux 2.2.x when I build with --enable-threads?
@ -630,3 +634,42 @@ A: Red Hat Security Enhanced Linux (SELinux) policy security protections :
See these man-pages for more information : selinux(8), named_selinux(8), chcon
(1), setsebool(8)
Q: I want to forward all DNS queries from my caching nameserver to another server.
But there are some domains which have to be served locally, via rbldnsd.
How do I achieve this ?
A: options {
forward only;
forwarders { <ip.of.primary.nameserver>; };
};
zone "sbl-xbl.spamhaus.org" {
type forward; forward only;
forwarders { <ip.of.rbldns.server> port 530; };
};
zone "list.dsbl.org" {
type forward; forward only;
forwarders { <ip.of.rbldns.server> port 530; };
};
Q: Will named be affected by the 2007 changes to daylight savings rules in the US.
A: No, so long as the machines internal clock (as reported by "date -u") remains
at UTC. The only visible change if you fail to upgrade your OS, if you are in a
affected area, will be that log messages will be a hour out during the period
where the old rules do not match the new rules.
For most OS's this change just means that you need to update the conversion
rules from UTC to local time. Normally this involves updating a file in /etc
(which sets the default timezone for the machine) and possibly a directory
which has all the conversion rules for the world (e.g. /usr/share/zoneinfo).
When updating the OS do not forget to update any chroot areas as well. See your
OS's documetation for more details.
The local timezone conversion rules can also be done on a individual basis by
setting the TZ envirionment variable appropriately. See your OS's documentation
for more details.

View File

@ -1,7 +1,7 @@
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" []>
<!--
- Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2003 Internet Software Consortium.
-
- Permission to use, copy, modify, and distribute this software for any
@ -17,10 +17,26 @@
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id: FAQ.xml,v 1.4.6.5 2006/02/27 21:11:40 marka Exp $ -->
<!-- $Id: FAQ.xml,v 1.4.6.5.6.1 2007/01/12 02:28:00 marka Exp $ -->
<article class="faq">
<title>Frequently Asked Questions about BIND 9</title>
<articleinfo>
<copyright>
<year>2004</year>
<year>2005</year>
<year>2006</year>
<year>2007</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
<copyright>
<year>2000</year>
<year>2001</year>
<year>2002</year>
<year>2003</year>
<holder>Internet Software Consortium.</holder>
</copyright>
</articleinfo>
<qandaset defaultlabel='qanda'>
<qandaentry>
<question>
@ -1193,5 +1209,68 @@ named_cache_t: for files modifiable by named - $ROOTDIR/var/{tmp,named/{slaves,d
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
I want to forward all DNS queries from my caching nameserver to
another server. But there are some domains which have to be
served locally, via rbldnsd.
</para>
<para>
How do I achieve this ?
</para>
</question>
<answer>
<programlisting>
options {
forward only;
forwarders { &lt;ip.of.primary.nameserver&gt;; };
};
zone "sbl-xbl.spamhaus.org" {
type forward; forward only;
forwarders { &lt;ip.of.rbldns.server&gt; port 530; };
};
zone "list.dsbl.org" {
type forward; forward only;
forwarders { &lt;ip.of.rbldns.server&gt; port 530; };
};
</programlisting>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
Will named be affected by the 2007 changes to daylight savings
rules in the US.
</para>
</question>
<answer>
<para>
No, so long as the machines internal clock (as reported
by "date -u") remains at UTC. The only visible change
if you fail to upgrade your OS, if you are in a affected
area, will be that log messages will be a hour out during
the period where the old rules do not match the new rules.
</para>
<para>
For most OS's this change just means that you need to
update the conversion rules from UTC to local time.
Normally this involves updating a file in /etc (which
sets the default timezone for the machine) and possibly
a directory which has all the conversion rules for the
world (e.g. /usr/share/zoneinfo). When updating the OS
do not forget to update any chroot areas as well.
See your OS's documetation for more details.
</para>
<para>
The local timezone conversion rules can also be done on
a individual basis by setting the TZ envirionment variable
appropriately. See your OS's documentation for more
details.
</para>
</answer>
</qandaentry>
</qandaset>
</article>

View File

@ -42,6 +42,14 @@ BIND 9
Stichting NLnet - NLnet Foundation
Nominum, Inc.
BIND 9.3.4
BIND 9.3.4 is a security release.
BIND 9.3.3
BIND 9.3.3 is a maintenance release, containing fixes for
a number of bugs in 9.3.2.
BIND 9.3.2

View File

@ -1,3 +1,3 @@
LIBINTERFACE = 22
LIBREVISION = 7
LIBAGE = 0
LIBINTERFACE = 23
LIBREVISION = 0
LIBAGE = 1

View File

@ -15,7 +15,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: validator.h,v 1.18.12.11 2006/01/06 00:01:42 marka Exp $ */
/* $Id: validator.h,v 1.18.12.11.6.1 2007/01/11 04:51:39 marka Exp $ */
#ifndef DNS_VALIDATOR_H
#define DNS_VALIDATOR_H 1
@ -144,6 +144,7 @@ struct dns_validator {
* dns_validator_create() options.
*/
#define DNS_VALIDATOR_DLV 1U
#define DNS_VALIDATOR_DEFER 2U
ISC_LANG_BEGINDECLS
@ -191,6 +192,15 @@ dns_validator_create(dns_view_t *view, dns_name_t *name, dns_rdatatype_t type,
* the answer by looking for a appopriate DLV RRset.
*/
void
dns_validator_send(dns_validator_t *validator);
/*%<
* Send a deferred validation request
*
* Requires:
* 'validator' to points to a valid DNSSEC validator.
*/
void
dns_validator_cancel(dns_validator_t *validator);
/*%<

View File

@ -15,7 +15,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: resolver.c,v 1.218.2.18.4.64 2006/08/31 03:57:11 marka Exp $ */
/* $Id: resolver.c,v 1.218.2.18.4.64.4.2 2007/01/11 05:05:10 marka Exp $ */
#include <config.h>
@ -218,6 +218,11 @@ struct fetchctx {
dns_name_t nsname;
dns_fetch_t * nsfetch;
dns_rdataset_t nsrrset;
/*%
* Number of queries that reference this context.
*/
unsigned int nqueries;
};
#define FCTX_MAGIC ISC_MAGIC('F', '!', '!', '!')
@ -351,6 +356,7 @@ static isc_result_t ncache_adderesult(dns_message_t *message,
dns_rdataset_t *ardataset,
isc_result_t *eresultp);
static void validated(isc_task_t *task, isc_event_t *event);
static void maybe_destroy(fetchctx_t *fctx);
static isc_result_t
valcreate(fetchctx_t *fctx, dns_adbaddrinfo_t *addrinfo, dns_name_t *name,
@ -369,6 +375,9 @@ valcreate(fetchctx_t *fctx, dns_adbaddrinfo_t *addrinfo, dns_name_t *name,
valarg->fctx = fctx;
valarg->addrinfo = addrinfo;
if (!ISC_LIST_EMPTY(fctx->validators))
INSIST((valoptions & DNS_VALIDATOR_DEFER) != 0);
result = dns_validator_create(fctx->res->view, name, type, rdataset,
sigrdataset, fctx->rmessage,
valoptions, task, validated, valarg,
@ -515,6 +524,9 @@ resquery_destroy(resquery_t **queryp) {
INSIST(query->tcpsocket == NULL);
query->fctx->nqueries--;
if (SHUTTINGDOWN(query->fctx))
maybe_destroy(query->fctx); /* Locks bucket. */
query->magic = 0;
isc_mem_put(query->mctx, query, sizeof(*query));
*queryp = NULL;
@ -973,6 +985,8 @@ fctx_query(fetchctx_t *fctx, dns_adbaddrinfo_t *addrinfo,
if (result != ISC_R_SUCCESS)
return (result);
INSIST(ISC_LIST_EMPTY(fctx->validators));
dns_message_reset(fctx->rmessage, DNS_MESSAGE_INTENTPARSE);
query = isc_mem_get(res->mctx, sizeof(*query));
@ -1088,6 +1102,7 @@ fctx_query(fetchctx_t *fctx, dns_adbaddrinfo_t *addrinfo,
}
ISC_LIST_APPEND(fctx->queries, query, link);
query->fctx->nqueries++;
return (ISC_R_SUCCESS);
@ -1540,7 +1555,7 @@ fctx_finddone(isc_task_t *task, isc_event_t *event) {
want_done = ISC_TRUE;
}
} else if (SHUTTINGDOWN(fctx) && fctx->pending == 0 &&
ISC_LIST_EMPTY(fctx->validators)) {
fctx->nqueries == 0 && ISC_LIST_EMPTY(fctx->validators)) {
bucketnum = fctx->bucketnum;
LOCK(&res->buckets[bucketnum].lock);
/*
@ -2394,8 +2409,8 @@ fctx_destroy(fetchctx_t *fctx) {
REQUIRE(ISC_LIST_EMPTY(fctx->finds));
REQUIRE(ISC_LIST_EMPTY(fctx->altfinds));
REQUIRE(fctx->pending == 0);
REQUIRE(ISC_LIST_EMPTY(fctx->validators));
REQUIRE(fctx->references == 0);
REQUIRE(ISC_LIST_EMPTY(fctx->validators));
FCTXTRACE("destroy");
@ -2569,7 +2584,7 @@ fctx_doshutdown(isc_task_t *task, isc_event_t *event) {
}
if (fctx->references == 0 && fctx->pending == 0 &&
ISC_LIST_EMPTY(fctx->validators))
fctx->nqueries == 0 && ISC_LIST_EMPTY(fctx->validators))
bucket_empty = fctx_destroy(fctx);
UNLOCK(&res->buckets[bucketnum].lock);
@ -2610,6 +2625,7 @@ fctx_start(isc_task_t *task, isc_event_t *event) {
* pending ADB finds and no pending validations.
*/
INSIST(fctx->pending == 0);
INSIST(fctx->nqueries == 0);
INSIST(ISC_LIST_EMPTY(fctx->validators));
if (fctx->references == 0) {
/*
@ -2771,6 +2787,7 @@ fctx_create(dns_resolver_t *res, dns_name_t *name, dns_rdatatype_t type,
fctx->restarts = 0;
fctx->timeouts = 0;
fctx->attributes = 0;
fctx->nqueries = 0;
dns_name_init(&fctx->nsname, NULL);
fctx->nsfetch = NULL;
@ -3093,12 +3110,21 @@ maybe_destroy(fetchctx_t *fctx) {
unsigned int bucketnum;
isc_boolean_t bucket_empty = ISC_FALSE;
dns_resolver_t *res = fctx->res;
dns_validator_t *validator;
REQUIRE(SHUTTINGDOWN(fctx));
if (fctx->pending != 0 || !ISC_LIST_EMPTY(fctx->validators))
if (fctx->pending != 0 || fctx->nqueries != 0)
return;
for (validator = ISC_LIST_HEAD(fctx->validators);
validator != NULL;
validator = ISC_LIST_HEAD(fctx->validators)) {
ISC_LIST_UNLINK(fctx->validators, validator, link);
dns_validator_cancel(validator);
dns_validator_destroy(&validator);
}
bucketnum = fctx->bucketnum;
LOCK(&res->buckets[bucketnum].lock);
if (fctx->references == 0)
@ -3232,7 +3258,9 @@ validated(isc_task_t *task, isc_event_t *event) {
add_bad(fctx, &addrinfo->sockaddr, result);
isc_event_free(&event);
UNLOCK(&fctx->res->buckets[fctx->bucketnum].lock);
if (sentresponse)
if (!ISC_LIST_EMPTY(fctx->validators))
dns_validator_send(ISC_LIST_HEAD(fctx->validators));
else if (sentresponse)
fctx_done(fctx, result); /* Locks bucket. */
else
fctx_try(fctx); /* Locks bucket. */
@ -3330,6 +3358,7 @@ validated(isc_task_t *task, isc_event_t *event) {
* be validated.
*/
UNLOCK(&fctx->res->buckets[fctx->bucketnum].lock);
dns_validator_send(ISC_LIST_HEAD(fctx->validators));
goto cleanup_event;
}
@ -3640,6 +3669,13 @@ cache_name(fetchctx_t *fctx, dns_name_t *name, dns_adbaddrinfo_t *addrinfo,
rdataset,
sigrdataset,
valoptions, task);
/*
* Defer any further validations.
* This prevents multiple validators
* from manipulating fctx->rmessage
* simultaniously.
*/
valoptions |= DNS_VALIDATOR_DEFER;
}
} else if (CHAINING(rdataset)) {
if (rdataset->type == dns_rdatatype_cname)
@ -6371,7 +6407,8 @@ dns_resolver_destroyfetch(dns_fetch_t **fetchp) {
/*
* No one cares about the result of this fetch anymore.
*/
if (fctx->pending == 0 && ISC_LIST_EMPTY(fctx->validators) &&
if (fctx->pending == 0 && fctx->nqueries == 0 &&
ISC_LIST_EMPTY(fctx->validators) &&
SHUTTINGDOWN(fctx)) {
/*
* This fctx is already shutdown; we were just

View File

@ -15,7 +15,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: validator.c,v 1.91.2.5.8.27 2006/02/26 23:03:52 marka Exp $ */
/* $Id: validator.c,v 1.91.2.5.8.27.6.1 2007/01/11 04:51:39 marka Exp $ */
#include <config.h>
@ -2825,7 +2825,8 @@ dns_validator_create(dns_view_t *view, dns_name_t *name, dns_rdatatype_t type,
ISC_LINK_INIT(val, link);
val->magic = VALIDATOR_MAGIC;
isc_task_send(task, ISC_EVENT_PTR(&event));
if ((options & DNS_VALIDATOR_DEFER) == 0)
isc_task_send(task, ISC_EVENT_PTR(&event));
*validatorp = val;
@ -2842,6 +2843,21 @@ dns_validator_create(dns_view_t *view, dns_name_t *name, dns_rdatatype_t type,
return (result);
}
void
dns_validator_send(dns_validator_t *validator) {
isc_event_t *event;
REQUIRE(VALID_VALIDATOR(validator));
LOCK(&validator->lock);
INSIST((validator->options & DNS_VALIDATOR_DEFER) != 0);
event = (isc_event_t *)validator->event;
validator->options &= ~DNS_VALIDATOR_DEFER;
UNLOCK(&validator->lock);
isc_task_send(validator->task, ISC_EVENT_PTR(&event));
}
void
dns_validator_cancel(dns_validator_t *validator) {
REQUIRE(VALID_VALIDATOR(validator));
@ -2856,6 +2872,12 @@ dns_validator_cancel(dns_validator_t *validator) {
if (validator->subvalidator != NULL)
dns_validator_cancel(validator->subvalidator);
if ((validator->options & DNS_VALIDATOR_DEFER) != 0) {
isc_task_t *task = validator->event->ev_sender;
validator->options &= ~DNS_VALIDATOR_DEFER;
isc_event_free((isc_event_t **)&validator->event);
isc_task_detach(&task);
}
}
UNLOCK(&validator->lock);
}

View File

@ -1,10 +1,10 @@
# $Id: version,v 1.26.2.17.2.26 2006/11/28 00:52:38 marka Exp $
# $Id: version,v 1.26.2.17.2.26.4.1 2007/01/11 05:06:25 marka Exp $
#
# This file must follow /bin/sh rules. It is imported directly via
# configure.
#
MAJORVER=9
MINORVER=3
PATCHVER=3
PATCHVER=4
RELEASETYPE=
RELEASEVER=

View File

@ -1,98 +1,47 @@
/* $FreeBSD$ */
/* config.h. Generated by configure. */
/* config.h.in. Generated from configure.in by autoheader. */
/*
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 1999-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: acconfig.h,v 1.35.2.4.2.10 2004/12/04 06:50:02 marka Exp $ */
/***
*** This file is not to be included by any public header files, because
*** it does not get installed.
***/
/* define to `int' if <sys/types.h> doesn't define. */
/* #undef ssize_t */
/* define on DEC OSF to enable 4.4BSD style sa_len support */
/* #undef _SOCKADDR_LEN */
/* define if your system needs pthread_init() before using pthreads */
/* #undef NEED_PTHREAD_INIT */
/* define if your system has sigwait() */
/* #undef HAVE_SIGWAIT */
/* define if sigwait() is the UnixWare flavor */
/* #undef HAVE_UNIXWARE_SIGWAIT */
/* define on Solaris to get sigwait() to work using pthreads semantics */
#define HAVE_FCNTL_H 1
#define HAVE_PATHS_H 1
#define HAVE_INTTYPES_H 1
/* #undef HAVE_STROPTS_H */
#define HAVE_SYS_TIMERS_H 1
#define HAVE_SYS_SELECT_H 1
/* #undef SYS_CDEFS_H */
/* #undef _POSIX_PTHREAD_SEMANTICS */
/* #undef POSIX_GETPWUID_R */
/* #undef POSIX_GETPWNAM_R */
/* #undef POSIX_GETGRGID_R */
/* #undef POSIX_GETGRNAM_R */
/* define if LinuxThreads is in use */
/* #undef HAVE_LINUXTHREADS */
/* #undef NEED_SETGROUPENT */
/* #undef NEED_GETGROUPLIST */
/* define if sysconf() is available */
/* #undef HAVE_SYSCONF */
/* define if prototype for getgrnam_r() is required */
/* #undef NEED_GETGRNAM_R */
/* #undef NEED_GETGRGID_R */
/* #undef NEED_GETGRENT_R */
#define NEED_SETGRENT_R 1
#define NEED_ENDGRENT_R 1
/* define if sysctlbyname() is available */
#define HAVE_SYSCTLBYNAME 1
#define NEED_INNETGR_R 1
/* #undef NEED_SETNETGRENT_R */
#define NEED_ENDNETGRENT_R 1
/* define if catgets() is available */
#define HAVE_CATGETS 1
/* #undef NEED_GETPWNAM_R */
/* #undef NEED_GETPWUID_R */
#define NEED_SETPWENT_R 1
#define NEED_SETPASSENT_R 1
#define NEED_SETPWENT_R 1
/* #undef NEED_GETPWENT_R */
#define NEED_ENDPWENT_R 1
/* define if getifaddrs() exists */
#define HAVE_GETIFADDRS 1
/* #undef NEED_SETPASSENT */
/* define if you have the NET_RT_IFLIST sysctl variable and sys/sysctl.h */
#define HAVE_IFLIST_SYSCTL 1
#define HAS_PW_CLASS 1
/* define if chroot() is available */
#define HAVE_CHROOT 1
/* define if tzset() is available */
#define HAVE_TZSET 1
/* define if struct addrinfo exists */
#define HAVE_ADDRINFO 1
/* define if getaddrinfo() exists */
#define HAVE_GETADDRINFO 1
/* define if gai_strerror() exists */
#define HAVE_GAISTRERROR 1
/* define if arc4random() exists */
#define HAVE_ARC4RANDOM 1
/* define if pthread_setconcurrency() should be called to tell the
* OS how many threads we might want to run.
*/
/* #undef CALL_PTHREAD_SETCONCURRENCY */
/* define if IPv6 is not disabled */
/* #undef WANT_IPV6 */
/* define if flockfile() is available */
#define HAVE_FLOCKFILE 1
/* define if getc_unlocked() is available */
#define HAVE_GETCUNLOCKED 1
/* #undef uintptr_t */
/* Shut up warnings about sputaux in stdio.h on BSD/OS pre-4.1 */
/* #undef SHUTUP_SPUTAUX */
@ -100,199 +49,13 @@
struct __sFILE;
extern __inline int __sputaux(int _c, struct __sFILE *_p);
#endif
/* Shut up warnings about missing sigwait prototype on BSD/OS 4.0* */
/* #undef SHUTUP_SIGWAIT */
#ifdef SHUTUP_SIGWAIT
int sigwait(const unsigned int *set, int *sig);
/* #undef BROKEN_IN6ADDR_INIT_MACROS */
#define HAVE_STRLCAT 1
/* Shut up warnings about missing braces */
/* #undef SHUTUP_MUTEX_INITIALIZER */
#ifdef SHUTUP_MUTEX_INITIALIZER
#define LIBBIND_MUTEX_INITIALIZER { PTHREAD_MUTEX_INITIALIZER }
#else
#define LIBBIND_MUTEX_INITIALIZER PTHREAD_MUTEX_INITIALIZER
#endif
/* Shut up warnings from gcc -Wcast-qual on BSD/OS 4.1. */
/* #undef SHUTUP_STDARG_CAST */
#if defined(SHUTUP_STDARG_CAST) && defined(__GNUC__)
#include <stdarg.h> /* Grr. Must be included *every time*. */
/*
* The silly continuation line is to keep configure from
* commenting out the #undef.
*/
#undef \
va_start
#define va_start(ap, last) \
do { \
union { const void *konst; long *var; } _u; \
_u.konst = &(last); \
ap = (va_list)(_u.var + __va_words(__typeof(last))); \
} while (0)
#endif /* SHUTUP_STDARG_CAST && __GNUC__ */
/* define if the system has a random number generating device */
#define PATH_RANDOMDEV "/dev/random"
/* define if pthread_attr_getstacksize() is available */
/* #undef HAVE_PTHREAD_ATTR_GETSTACKSIZE */
/* define if pthread_attr_setstacksize() is available */
/* #undef HAVE_PTHREAD_ATTR_SETSTACKSIZE */
/* define if you have strerror in the C library. */
#define HAVE_STRERROR 1
/* Define if you are running under Compaq TruCluster. */
/* #undef HAVE_TRUCLUSTER */
/* Define if OpenSSL includes DSA support */
#define HAVE_OPENSSL_DSA 1
/* Define to the length type used by the socket API (socklen_t, size_t, int). */
#define ISC_SOCKADDR_LEN_T socklen_t
/* Define if threads need PTHREAD_SCOPE_SYSTEM */
/* #undef NEED_PTHREAD_SCOPE_SYSTEM */
/* Define if recvmsg() does not meet all of the BSD socket API specifications.
*/
/* #undef BROKEN_RECVMSG */
/* Define if you cannot bind() before connect() for TCP sockets. */
/* #undef BROKEN_TCP_BIND_BEFORE_CONNECT */
/* Define if libcrypto has DH_generate_parameters */
#define HAVE_DH_GENERATE_PARAMETERS 1
/* Define if libcrypto has DSA_generate_parameters */
#define HAVE_DSA_GENERATE_PARAMETERS 1
/* Define to 1 if you have the <fcntl.h> header file. */
#define HAVE_FCNTL_H 1
/* Define to 1 if you have the <inttypes.h> header file. */
#define HAVE_INTTYPES_H 1
/* Define to 1 if you have the `c' library (-lc). */
/* #undef HAVE_LIBC */
/* Define to 1 if you have the `c_r' library (-lc_r). */
/* #undef HAVE_LIBC_R */
/* Define to 1 if you have the `nsl' library (-lnsl). */
/* #undef HAVE_LIBNSL */
/* Define to 1 if you have the `pthread' library (-lpthread). */
/* #undef HAVE_LIBPTHREAD */
/* Define to 1 if you have the `scf' library (-lscf). */
/* #undef HAVE_LIBSCF */
/* Define to 1 if you have the `socket' library (-lsocket). */
/* #undef HAVE_LIBSOCKET */
/* Define to 1 if you have the `thr' library (-lthr). */
/* #undef HAVE_LIBTHR */
/* Define to 1 if you have the <linux/capability.h> header file. */
/* #undef HAVE_LINUX_CAPABILITY_H */
/* Define to 1 if you have the <memory.h> header file. */
#define HAVE_MEMORY_H 1
/* Define to 1 if you have the <net/if6.h> header file. */
/* #undef HAVE_NET_IF6_H */
/* Define if libcrypto has RSA_generate_key */
#define HAVE_RSA_GENERATE_KEY 1
/* Define to 1 if you have the <stdint.h> header file. */
#define HAVE_STDINT_H 1
/* Define to 1 if you have the <stdlib.h> header file. */
#define HAVE_STDLIB_H 1
/* Define to 1 if you have the <strings.h> header file. */
#define HAVE_STRINGS_H 1
/* Define to 1 if you have the <string.h> header file. */
#define HAVE_STRING_H 1
/* Define to 1 if you have the <sys/param.h> header file. */
#define HAVE_SYS_PARAM_H 1
/* Define to 1 if you have the <sys/prctl.h> header file. */
/* #undef HAVE_SYS_PRCTL_H */
/* Define to 1 if you have the <sys/select.h> header file. */
#define HAVE_SYS_SELECT_H 1
/* Define to 1 if you have the <sys/sockio.h> header file. */
#define HAVE_SYS_SOCKIO_H 1
/* Define to 1 if you have the <sys/stat.h> header file. */
#define HAVE_SYS_STAT_H 1
/* Define to 1 if you have the <sys/sysctl.h> header file. */
#define HAVE_SYS_SYSCTL_H 1
/* Define to 1 if you have the <sys/time.h> header file. */
#define HAVE_SYS_TIME_H 1
/* Define to 1 if you have the <sys/types.h> header file. */
#define HAVE_SYS_TYPES_H 1
/* Define if running under Compaq TruCluster */
/* #undef HAVE_TRUCLUSTER */
/* Define to 1 if you have the <unistd.h> header file. */
#define HAVE_UNISTD_H 1
/* Defined if extern char *optarg is not declared. */
/* #undef NEED_OPTARG */
/* Define to the address where bug reports for this package should be sent. */
#define PACKAGE_BUGREPORT ""
/* Define to the full name of this package. */
#define PACKAGE_NAME ""
/* Define to the full name and version of this package. */
#define PACKAGE_STRING ""
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME ""
/* Define to the version of this package. */
#define PACKAGE_VERSION ""
/* Sets which flag to pass to open/fcntl to make non-blocking
(O_NDELAY/O_NONBLOCK). */
#define PORT_NONBLOCK O_NONBLOCK
/* Define to 1 if you have the ANSI C header files. */
#define STDC_HEADERS 1
/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
#define TIME_WITH_SYS_TIME 1
/* Defined if you need to use ioctl(FIONBIO) instead a fcntl call to make
non-blocking. */
/* #undef USE_FIONBIO_IOCTL */
/* Define to 1 if your processor stores words with the most significant byte
first (like Motorola and SPARC, unlike Intel and VAX). */
/* #undef WORDS_BIGENDIAN */
/* Define to empty if `const' does not conform to ANSI C. */
/* #undef const */
/* Define to `__inline__' or `__inline' if that's what the C compiler
calls it, or to nothing if 'inline' is not supported under any name. */
#ifndef __cplusplus
/* #undef inline */
#endif
/* Define to `unsigned' if <sys/types.h> does not define. */
/* #undef size_t */
/* Define to `int' if <sys/types.h> does not define. */
/* #undef ssize_t */
/* Define to `unsigned long' if <sys/types.h> does not define. */
/* #undef uintptr_t */

View File

@ -285,7 +285,7 @@ int sigwait(const unsigned int *set, int *sig);
/* Define to `__inline__' or `__inline' if that's what the C compiler
calls it, or to nothing if 'inline' is not supported under any name. */
#ifndef __cplusplus
/* #undef inline */
#define inline
#endif
/* Define to `unsigned' if <sys/types.h> does not define. */

View File

@ -1,7 +1,7 @@
/* $FreeBSD$ */
/*
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 1998-2003 Internet Software Consortium.
*
* Permission to use, copy, modify, and distribute this software for any

View File

@ -1,7 +1,7 @@
/* $FreeBSD$ */
/*
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 1998-2003 Internet Software Consortium.
*
* Permission to use, copy, modify, and distribute this software for any

View File

@ -1,7 +1,7 @@
/* $FreeBSD$ */
/*
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 1998-2003 Internet Software Consortium.
*
* Permission to use, copy, modify, and distribute this software for any

View File

@ -1,7 +1,7 @@
/* $FreeBSD$ */
/*
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 1998-2003 Internet Software Consortium.
*
* Permission to use, copy, modify, and distribute this software for any