Commit c5b102d4 authored by Internet Software Consortium, Inc's avatar Internet Software Consortium, Inc Committed by Lamont Jones

9.0.0b5

parent fc0b5c90
This diff is collapsed.
# Copyright (C) 1998, 1999, 2000 Internet Software Consortium.
# Copyright (C) 1998-2000 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
......@@ -13,6 +13,8 @@
# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
# SOFTWARE.
# $Id: Makefile.in,v 1.21.2.2 2000/06/27 00:46:05 explorer Exp $
srcdir = @srcdir@
VPATH = @srcdir@
top_srcdir = @top_srcdir@
......@@ -24,23 +26,33 @@ TARGETS =
DISTFILES = CHANGES Makefile.in README \
acconfig.h aclocal.m4 config.guess config.h.in config.h.win32 \
config.status.win32 config.sub configure configure.in \
install-sh libtool.m4 ltconfig ltmain.sh \
bin lib make contrib \
isc-config.sh.in install-sh libtool.m4 ltconfig ltmain.sh \
lib make contrib \
version
DOCDIRS = arm draft misc rfc
DOCDISTFILES = arm draft misc rfc
BINDISTFILES = Makefile.in dig dnssec named nsupdate rndc tests
@BIND9_MAKE_RULES@
distclean::
rm -f config.cache config.h config.log config.status libtool TAGS
rm -f config.cache config.h config.log config.status TAGS
rm -f libtool isc-config.sh
rm -f util/conf.sh
cleandir: distclean
install:: isc-config.sh
${INSTALL_PROGRAM} isc-config.sh ${DESTDIR}${bindir}
kit: kitclean
mkdir bind-${VERSION}
@(cd bind-${VERSION}; for i in ${DISTFILES}; do ln -s ../$$i $$i; done)
mkdir bind-${VERSION}/doc
@(cd bind-${VERSION}/doc; for i in ${DOCDIRS}; do ln -s ../../doc/$$i $$i; done)
@(cd bind-${VERSION}/doc; for i in ${DOCDISTFILES}; do \
ln -s ../../doc/$$i $$i; done)
mkdir bind-${VERSION}/bin
@(cd bind-${VERSION}/bin; for i in ${BINDISTFILES}; do \
ln -s ../../bin/$$i $$i; done)
gtar -c -v -z -h --exclude '*CVS*' -f bind-${VERSION}.tar.gz \
bind-${VERSION}
rm -rf bind-${VERSION}
......
......@@ -68,67 +68,81 @@ BIND 9
Stichting NLnet - NLnet Foundation
BIND 9.0.0b4
BIND 9.0.0b5
BIND 9.0.0b4 is the fourth public release of BIND 9 code. It will
be most useful to advanced users working with IPv6 or DNSSEC.
BIND 9.0.0b5 is the fifth public release of BIND 9 code. It
contains the final set of features for the upcoming 9.0.0 release,
but it is not considered a release candidate due to a number
of known problems, in particular with the "nsupdate" and "dig"
programs.
BIND 9.0.0b4 has almost all the functionality of the upcoming
9.0.0 release. It is not a release candidate for BIND 9.0.0.
ISC anticipates at least one more beta release between now and
the release of BIND 9.0.0.
This release is aimed at early adopters and those
who wish to make use of new 9.0 features, such as IPv6 and
DNSSEC secure resolution support.
ISC does not recommend using BIND 9.0.0b4 for "production"
services.
We are running 9.0.0b5 in production, but it has not been
extensively tested in large installations or under heavy load,
We welcome your feedback about how it performs in the real
world.
We hope users of BIND 9.0.0b4 will provide feedback and bug fixes.
The distribution includes a new lightweight resolver library
and associated resolver daemon. These should still be considered
experimental.
There have been many changes since beta 3; the highlights are:
The server-side support for DNSSEC secured zones is stable and
complete with the exception of the handling of wildcard records.
The support for secure resolution is still to be considered
experimental.
Stub zones have been implemented.
There have been some changes since beta 4; the highlights are:
Additional configuration options have been implemented,
such as "max-cache-ttl" and "max-ncache-ttl".
The default value of the 'transfer-format' option is
now 'many-answers'.
More configuration options can be specified separately
for each view, including the "key" and "server" statements.
The default value of the 'listen-on-v6' option is
now '{ none; }'.
The 'lwresd' program is now a link to 'named'.
The DNSSEC key generation and signing tools now
generate randomness from keyboard input on systems
that lack /dev/random.
A plain text version of the Administratior Reference
Manual has been added.
Various bug fixes and cleanups.
Numerous bugs have been fixed and the code has been cleaned
up.
There are a few known bugs:
The "nsupdate" program is almost completely broken.
The "dig" program is somewhat unstable.
The option "query-source * port 53;" will not work as
expected. Instead of the wildcard address "*", you need
to use an explicit source IP address.
On some systems, IPv6 and IPv4 sockets interact in
unexpected ways. For details, see doc/misc/ipv6.
If your system supports IPv6 but you do not wish to
use it, you can avoid these problems by specifying
"listen-on-v6 { none; };" in the named.conf
options statement to turn off listening on IPv6
sockets.
To reduce the impact of these problems, the server
no longer listens for requests on IPv6 addresses
by default. If you need to accept DNS queries over
IPv6, you must specify "listen-on-v6 { any; };"
in the named.conf options statement.
There are known problems with thread signal handling
under SunOS 5.6.
For a detailed list of user-visible changes since beta 3, see
the CHANGES file.
Some of the more significant items that will be implemented or
enhanced in a future beta are
under Solaris 2.6.
Selective forwarding
Documentation
For a detailed list of user-visible changes since beta 4, see
the CHANGES file.
Future releases will contain a lot more documentation,
but a preliminary version of the Administrator's
Reference Manual is in the doc/arm subdirectory in
HTML format. A plain text version will be added
in a future release.
BIND 9.0.0 will support most but not all BIND 8 features. Among
the missing features are selective (per-domain) forwarding,
sortlists, statistics, and process limits. We plan to implement
most of the missing ones in BIND 9.1.
Building
......@@ -140,18 +154,14 @@ Building
AIX 4.3
COMPAQ Tru64 UNIX 4.0D
COMPAQ Tru64 UNIX 5 (with IPv6 EAK)
FreeBSD 3.4-STABLE
HP-UX 11
IRIX64 6.5
NetBSD-current (with "unproven" pthreads, foreground only)
NetBSD-current (with "unproven" pthreads)
Red Hat Linux 6.0, 6.1, 6.2
Solaris 2.6, 7, 8 (beta)
We've also had reports of successful builds on the following
systems, though we do not have tested these platforms ourselves:
COMPAQ Tru64 UNIX 5 (with IPv6 EAK)
To build, just
./configure
......@@ -256,12 +266,7 @@ Bug Reports and Mailing Lists
to bind() to privileged ports.
On systems with more than one CPU, the "-n" option should be used
to indicate how many CPUs there are.
to indicate how many CPUs there are. If the "-n" option is not
provided, named will attempt to determine the number of available
CPUs and use all of them.
Note to Programmers
The APIs for the libraries in BIND 9 are not yet frozen.
We expect the existing library interfaces in the release to be
quite stable, however, and unless we've specifically indicated that
an interface is temporary, we don't anticipate major changes in
future releases.
......@@ -15,6 +15,8 @@
* SOFTWARE.
*/
/* $Id: acconfig.h,v 1.23 2000/06/22 21:48:56 tale Exp $ */
/***
*** This file is not to be included by any public header files, because
*** it does not get installed.
......@@ -39,6 +41,9 @@
/* define if LinuxThreads is in use */
#undef HAVE_LINUXTHREADS
/* define if sysconf() is available */
#undef HAVE_SYSCONF
/* define if catgets() is available */
#undef HAVE_CATGETS
......@@ -56,6 +61,17 @@
/* define if chroot() is available */
#undef HAVE_CHROOT
/* define if struct addrinfo exists */
#undef HAVE_ADDRINFO
/* define is getaddrinfo() exists */
#undef HAVE_GETADDRINFO
/* define if pthread_setconcurrency() should be called to tell the
* OS how many threads we might want to run.
*/
#undef CALL_PTHREAD_SETCONCURRENCY
/* Shut up warnings about sputaux in stdio.h on BSD/OS pre-4.1 */
#undef SHUTUP_SPUTAUX
#ifdef SHUTUP_SPUTAUX
......
# Copyright (C) 1998, 1999, 2000 Internet Software Consortium.
# Copyright (C) 1998-2000 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
......@@ -13,11 +13,13 @@
# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
# SOFTWARE.
# $Id: Makefile.in,v 1.15.2.2 2000/06/29 00:05:25 gson Exp $
srcdir = @srcdir@
VPATH = @srcdir@
top_srcdir = @top_srcdir@
SUBDIRS = named lwresd rndc dig dnssec tests
SUBDIRS = named rndc dig dnssec tests nsupdate
TARGETS =
@BIND9_MAKE_RULES@
......@@ -13,6 +13,8 @@
# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
# SOFTWARE.
# $Id: Makefile.in,v 1.10.2.1 2000/06/28 16:33:42 tale Exp $
srcdir = @srcdir@
VPATH = @srcdir@
top_srcdir = @top_srcdir@
......@@ -38,13 +40,13 @@ LIBS = ${DNSLIBS} ${ISCLIBS} @LIBS@
SUBDIRS =
TARGETS = dig host
TARGETS = dig host nslookup
OBJS = dig.@O@ dighost.@O@ host.@O@
OBJS = dig.@O@ dighost.@O@ host.@O@ nslookup.@O@
UOBJS =
SRCS = dig.c dighost.c host.c
SRCS = dig.c dighost.c host.c nslookup.c
@BIND9_MAKE_RULES@
......@@ -61,9 +63,10 @@ clean distclean::
rm -f ${TARGETS}
installdirs:
if [ ! -d ${DESTDIR}${sbindir} ]; then \
mkdir ${DESTDIR}${sbindir}; \
if [ ! -d ${DESTDIR}${bindir} ]; then \
mkdir ${DESTDIR}${bindir}; \
fi
install:: dig host installdirs
${LIBTOOL} ${INSTALL_PROGRAM} dig ${DESTDIR}${sbindir}
${LIBTOOL} ${INSTALL_PROGRAM} dig ${DESTDIR}${bindir}
${LIBTOOL} ${INSTALL_PROGRAM} host ${DESTDIR}${bindir}
......@@ -15,10 +15,9 @@
* SOFTWARE.
*/
/* $Id: dig.c,v 1.43 2000/06/07 00:13:54 mws Exp $ */
/* $Id: dig.c,v 1.51.2.1 2000/06/28 19:40:12 gson Exp $ */
#include <config.h>
#include <stdlib.h>
extern int h_errno;
......@@ -32,7 +31,6 @@ extern int h_errno;
#include <dns/rdata.h>
#include <dns/rdataset.h>
#include <dns/rdatatype.h>
#include <dns/message.h>
#include <dig/dig.h>
......@@ -59,9 +57,6 @@ extern int ndots;
extern int tries;
extern int lookup_counter;
extern char fixeddomain[MXNAME];
#ifdef TWIDDLE
extern isc_boolean_t twiddle;
#endif
extern int exitcode;
extern isc_sockaddr_t bind_address;
extern char keynametext[MXNAME];
......@@ -81,7 +76,8 @@ isc_boolean_t identify = ISC_FALSE,
comments = ISC_TRUE, section_question = ISC_TRUE,
section_answer = ISC_TRUE, section_authority = ISC_TRUE,
section_additional = ISC_TRUE, recurse = ISC_TRUE,
defname = ISC_TRUE, aaonly = ISC_FALSE, tcpmode = ISC_FALSE;
defname = ISC_TRUE, aaonly = ISC_FALSE, tcpmode = ISC_FALSE,
adflag = ISC_FALSE, cdflag = ISC_FALSE;
static const char *opcodetext[] = {
......@@ -152,9 +148,6 @@ show_usage(void) {
" +[no]recursive (Recursive mode)\n"
" +[no]aaonly (Set AA flag in query)\n"
" +[no]details (Show details of all requests)\n"
#ifdef TWIDDLE
" +twiddle (Intentionally form bad requests)\n"
#endif
" +ndots=### (Set NDOTS value)\n"
" +[no]comments (Control display of comment lines)\n"
" +[no]question (Control display of question)\n"
......@@ -164,10 +157,10 @@ show_usage(void) {
" +[no]short (Disable everything except short\n"
" form of answer)\n"
" +qr (Print question before sending)\n"
" Additional d-opts subject to removal before release:\n"
" +[no]cdflag (Set or clear CD flag in query)\n"
" +[no]adflag (Set or clear AD flag in query)\n"
" +[no]nssearch (Search all authorative nameservers)\n"
" +[no]identify (ID responders in short answers)\n"
" Available but not yet completed:\n"
" +[no]trace (Trace delegation down from root)\n"
" global d-opts and servers (before host name) affect all queries.\n"
" local d-opts and servers (after host name) affect only that lookup.\n"
......@@ -307,6 +300,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
isc_result_t result;
dns_messagetextflag_t flags;
isc_buffer_t *buf = NULL;
unsigned int len = OUTPUTBUF;
UNUSED (query);
......@@ -314,7 +308,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
/*
* Exitcode 9 means we timed out, but if we're printing a message,
* we much have recovered. Go ahead and reset it to code 0, and
* we must have recovered. Go ahead and reset it to code 0, and
* call this a success.
*/
if (exitcode == 9)
......@@ -330,7 +324,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
result = ISC_R_SUCCESS;
result = isc_buffer_allocate(mctx, &buf, OUTPUTBUF);
result = isc_buffer_allocate(mctx, &buf, len);
check_result (result, "isc_buffer_allocate");
if (query->lookup->comments && !short_form) {
......@@ -392,17 +386,33 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
if (query->lookup->section_question && headers) {
if (!short_form) {
question_again:
result = dns_message_sectiontotext(msg,
DNS_SECTION_QUESTION,
flags, buf);
if (result == ISC_R_NOSPACE) {
len += OUTPUTBUF;
isc_buffer_free(&buf);
result = isc_buffer_allocate(mctx, &buf, len);
if (result == ISC_R_SUCCESS)
goto question_again;
}
check_result(result, "dns_message_sectiontotext");
}
}
if (query->lookup->section_answer) {
if (!short_form) {
answer_again:
result = dns_message_sectiontotext(msg,
DNS_SECTION_ANSWER,
flags, buf);
if (result == ISC_R_NOSPACE) {
len += OUTPUTBUF;
isc_buffer_free(&buf);
result = isc_buffer_allocate(mctx, &buf, len);
if (result == ISC_R_SUCCESS)
goto answer_again;
}
check_result(result, "dns_message_sectiontotext");
}
else {
......@@ -412,17 +422,33 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
}
if (query->lookup->section_authority) {
if (!short_form) {
authority_again:
result = dns_message_sectiontotext(msg,
DNS_SECTION_AUTHORITY,
flags, buf);
if (result == ISC_R_NOSPACE) {
len += OUTPUTBUF;
isc_buffer_free(&buf);
result = isc_buffer_allocate(mctx, &buf, len);
if (result == ISC_R_SUCCESS)
goto authority_again;
}
check_result(result, "dns_message_sectiontotext");
}
}
if (query->lookup->section_additional) {
if (!short_form) {