Importing BIND 9.9.0 as pkgsrc/net/bind99.

Introduction

   BIND 9.9.0 is the first production release of BIND 9.9.

   This document summarizes changes from BIND 9.8 to BIND 9.9.
   Please see the CHANGES file in the source code release for a
   complete list of all changes.

New Features

* The new "inline-signing" option
* NXDOMAIN redirection
* "rndc flushtree <name>" command
* "rndc sync" command
* The new "rndc signing" command
* "auto-dnssec" zones
* Improves the startup time

And more.
This commit is contained in:
taca 2012-03-07 14:25:00 +00:00
parent 9872cc90aa
commit b8e71188a0
23 changed files with 1146 additions and 0 deletions

13
net/bind99/DESCR Normal file
View file

@ -0,0 +1,13 @@
BIND, the Berkeley Internet Name Daemon, version 9 is a major rewrite
of nearly all aspects of the underlying BIND architecture. Some
of the important features of BIND-9 are:
- DNS Security
- IP version 6
- DNS Protocol Enhancements
- Views
- Multiprocessor Support
- Improved Portability Architecture
- Full NSEC3 support
- Automatic zone re-signing
- New update-policy methods tcp-self and 6to4-self

10
net/bind99/MESSAGE Normal file
View file

@ -0,0 +1,10 @@
===========================================================================
$NetBSD: MESSAGE,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
Please consider running BIND under the pseudo user account "${BIND_USER}"
in a chroot environment for security reasons.
To achieve this, set the variable "named_chrootdir" in /etc/rc.conf to
the directory with the chroot environment e.g. "${BIND_DIR}".
===========================================================================

82
net/bind99/Makefile Normal file
View file

@ -0,0 +1,82 @@
# $NetBSD: Makefile,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
DISTNAME= bind-${BIND_VERSION}
PKGNAME= ${DISTNAME:S/-P/pl/}
CATEGORIES= net
MASTER_SITES= ftp://ftp.isc.org/isc/bind9/${BIND_VERSION}/ \
http://ftp.belnet.be/pub/mirror/ftp.isc.org/isc/bind9/${BIND_VERSION}/
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= http://www.isc.org/software/bind
COMMENT= Version 9.9 of the Berkeley Internet Name Daemon, implementation of DNS
CONFLICTS+= bind<9.9.0
PKG_DESTDIR_SUPPORT= user-destdir
MAKE_JOBS_SAFE= no
BIND_VERSION= 9.9.0
.include "../../mk/bsd.prefs.mk"
BUILD_DEFS+= BIND_DIR VARBASE
.include "options.mk"
USE_TOOLS+= pax perl
USE_LIBTOOL= yes
GNU_CONFIGURE= yes
#CONFIG_SHELL= sh -x
CONFIGURE_ARGS+= --with-libtool
CONFIGURE_ARGS+= --sysconfdir=/etc
CONFIGURE_ARGS+= --localstatedir=${VARBASE:Q}
CONFIGURE_ARGS+= --disable-openssl-version-check
CONFIGURE_ARGS+= --with-openssl=${SSLBASE:Q}
.if ${MACHINE_PLATFORM:MNetBSD-*-mipsel} != ""
CONFIGURE_ARGS+= --disable-atomic
.endif
.if ${MACHINE_PLATFORM:MNetBSD-*-powerpc} != ""
CONFIGURE_ARGS+= --disable-threads
.endif
.if ${OPSYS} == "DragonFly"
CONFIGURE_ARGS+= --disable-kqueue
.endif
PKG_GROUPS_VARS+= BIND_GROUP
PKG_USERS_VARS+= BIND_USER
PKG_GROUPS= ${BIND_GROUP}
PKG_USERS= ${BIND_USER}:${BIND_GROUP}
PKG_GECOS.${BIND_USER}= Named pseudo-user
PKG_HOME.${BIND_USER}= ${BIND_DIR}
PTHREAD_OPTS+= native
PTHREAD_AUTO_VARS= yes
DOCS= CHANGES FAQ README REDIRECT-NOTES
FILES_SUBST+= BIND_GROUP=${BIND_GROUP:Q} \
BIND_USER=${BIND_USER:Q} PAX=${PAX:Q}
MESSAGE_SUBST+= BIND_DIR=${BIND_DIR} BIND_USER=${BIND_USER}
DOCDIR= ${DESTDIR}${PREFIX}/share/doc/bind9
# include/isc/ipv6.h is installed on non-ipv6 platforms
PLIST_VARS+= inet6
.if !empty(MISSING_FEATURES:Minet6)
PLIST.inet6= yes
.endif
RCD_SCRIPTS= lwresd named9
INSTALLATION_DIRS= ${DOCDIR} share/doc/bind9/arm
post-install:
.for f in ${DOCS}
${INSTALL_DATA} ${WRKSRC}/${f} ${DOCDIR}
.endfor
${INSTALL_DATA} ${WRKSRC}/doc/arm/*.html ${DOCDIR}/arm
.include "../../security/openssl/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"

371
net/bind99/PLIST Normal file
View file

@ -0,0 +1,371 @@
@comment $NetBSD: PLIST,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
bin/dig
bin/host
bin/isc-config.sh
bin/nslookup
bin/nsupdate
${PLIST.inet6}include/isc/ipv6.h
include/bind9/check.h
include/bind9/getaddresses.h
include/bind9/version.h
include/dns/acl.h
include/dns/adb.h
include/dns/byaddr.h
include/dns/cache.h
include/dns/callbacks.h
include/dns/cert.h
include/dns/clientinfo.h
include/dns/compress.h
include/dns/db.h
include/dns/dbiterator.h
include/dns/dbtable.h
include/dns/diff.h
include/dns/dispatch.h
include/dns/dlz.h
include/dns/dnssec.h
include/dns/ds.h
include/dns/enumclass.h
include/dns/enumtype.h
include/dns/events.h
include/dns/fixedname.h
include/dns/iptable.h
include/dns/journal.h
include/dns/keyflags.h
include/dns/keytable.h
include/dns/keyvalues.h
include/dns/lib.h
include/dns/log.h
include/dns/master.h
include/dns/masterdump.h
include/dns/message.h
include/dns/name.h
include/dns/ncache.h
include/dns/nsec.h
include/dns/peer.h
include/dns/portlist.h
include/dns/private.h
include/dns/rbt.h
include/dns/rcode.h
include/dns/rdata.h
include/dns/rdataclass.h
include/dns/rdatalist.h
include/dns/rdataset.h
include/dns/rdatasetiter.h
include/dns/rdataslab.h
include/dns/rdatastruct.h
include/dns/rdatatype.h
include/dns/request.h
include/dns/resolver.h
include/dns/result.h
include/dns/rootns.h
include/dns/rpz.h
include/dns/sdb.h
include/dns/sdlz.h
include/dns/secalg.h
include/dns/secproto.h
include/dns/soa.h
include/dns/ssu.h
include/dns/tcpmsg.h
include/dns/time.h
include/dns/tkey.h
include/dns/tsig.h
include/dns/ttl.h
include/dns/types.h
include/dns/validator.h
include/dns/version.h
include/dns/view.h
include/dns/xfrin.h
include/dns/zone.h
include/dns/zonekey.h
include/dns/zt.h
include/dst/dst.h
include/dst/gssapi.h
include/dst/lib.h
include/dst/result.h
include/isc/app.h
include/isc/assertions.h
include/isc/atomic.h
include/isc/base64.h
include/isc/bind9.h
include/isc/bitstring.h
include/isc/boolean.h
include/isc/buffer.h
include/isc/bufferlist.h
include/isc/commandline.h
include/isc/condition.h
include/isc/dir.h
include/isc/entropy.h
include/isc/error.h
include/isc/event.h
include/isc/eventclass.h
include/isc/file.h
include/isc/formatcheck.h
include/isc/fsaccess.h
include/isc/hash.h
include/isc/heap.h
include/isc/hex.h
include/isc/hmacmd5.h
include/isc/httpd.h
include/isc/int.h
include/isc/interfaceiter.h
include/isc/iterated_hash.h
include/isc/lang.h
include/isc/lex.h
include/isc/lfsr.h
include/isc/lib.h
include/isc/list.h
include/isc/log.h
include/isc/magic.h
include/isc/md5.h
include/isc/mem.h
include/isc/msgcat.h
include/isc/msgs.h
include/isc/mutex.h
include/isc/mutexblock.h
include/isc/namespace.h
include/isc/net.h
include/isc/netaddr.h
include/isc/netdb.h
include/isc/offset.h
include/isc/once.h
include/isc/ondestroy.h
include/isc/os.h
include/isc/parseint.h
include/isc/platform.h
include/isc/print.h
include/isc/quota.h
include/isc/radix.h
include/isc/random.h
include/isc/ratelimiter.h
include/isc/refcount.h
include/isc/region.h
include/isc/resource.h
include/isc/result.h
include/isc/resultclass.h
include/isc/rwlock.h
include/isc/serial.h
include/isc/sha1.h
include/isc/sha2.h
include/isc/sockaddr.h
include/isc/socket.h
include/isc/stdio.h
include/isc/stdlib.h
include/isc/stdtime.h
include/isc/string.h
include/isc/symtab.h
include/isc/syslog.h
include/isc/task.h
include/isc/taskpool.h
include/isc/thread.h
include/isc/time.h
include/isc/timer.h
include/isc/types.h
include/isc/util.h
include/isc/version.h
include/isc/xml.h
include/isccc/alist.h
include/isccc/base64.h
include/isccc/cc.h
include/isccc/ccmsg.h
include/isccc/events.h
include/isccc/lib.h
include/isccc/result.h
include/isccc/sexpr.h
include/isccc/symtab.h
include/isccc/symtype.h
include/isccc/types.h
include/isccc/util.h
include/isccc/version.h
include/isccfg/aclconf.h
include/isccfg/cfg.h
include/isccfg/grammar.h
include/isccfg/log.h
include/isccfg/namedconf.h
include/isccfg/version.h
include/lwres/context.h
include/lwres/int.h
include/lwres/ipv6.h
include/lwres/lang.h
include/lwres/list.h
include/lwres/lwbuffer.h
include/lwres/lwpacket.h
include/lwres/lwres.h
include/lwres/net.h
include/lwres/netdb.h
include/lwres/platform.h
include/lwres/result.h
include/lwres/version.h
lib/libbind9.la
lib/libdns.la
lib/libisc.la
lib/libisccc.la
lib/libisccfg.la
lib/liblwres.la
man/man1/arpaname.1
man/man1/dig.1
man/man1/host.1
man/man1/isc-config.sh.1
man/man1/nslookup.1
man/man1/nsupdate.1
man/man3/lwres.3
man/man3/lwres_addr_parse.3
man/man3/lwres_buffer.3
man/man3/lwres_buffer_add.3
man/man3/lwres_buffer_back.3
man/man3/lwres_buffer_clear.3
man/man3/lwres_buffer_first.3
man/man3/lwres_buffer_forward.3
man/man3/lwres_buffer_getmem.3
man/man3/lwres_buffer_getuint16.3
man/man3/lwres_buffer_getuint32.3
man/man3/lwres_buffer_getuint8.3
man/man3/lwres_buffer_init.3
man/man3/lwres_buffer_invalidate.3
man/man3/lwres_buffer_putmem.3
man/man3/lwres_buffer_putuint16.3
man/man3/lwres_buffer_putuint32.3
man/man3/lwres_buffer_putuint8.3
man/man3/lwres_buffer_subtract.3
man/man3/lwres_conf_clear.3
man/man3/lwres_conf_get.3
man/man3/lwres_conf_init.3
man/man3/lwres_conf_parse.3
man/man3/lwres_conf_print.3
man/man3/lwres_config.3
man/man3/lwres_context.3
man/man3/lwres_context_allocmem.3
man/man3/lwres_context_create.3
man/man3/lwres_context_destroy.3
man/man3/lwres_context_freemem.3
man/man3/lwres_context_initserial.3
man/man3/lwres_context_nextserial.3
man/man3/lwres_context_sendrecv.3
man/man3/lwres_endhostent.3
man/man3/lwres_endhostent_r.3
man/man3/lwres_freeaddrinfo.3
man/man3/lwres_freehostent.3
man/man3/lwres_gabn.3
man/man3/lwres_gabnrequest_free.3
man/man3/lwres_gabnrequest_parse.3
man/man3/lwres_gabnrequest_render.3
man/man3/lwres_gabnresponse_free.3
man/man3/lwres_gabnresponse_parse.3
man/man3/lwres_gabnresponse_render.3
man/man3/lwres_gai_strerror.3
man/man3/lwres_getaddrinfo.3
man/man3/lwres_getaddrsbyname.3
man/man3/lwres_gethostbyaddr.3
man/man3/lwres_gethostbyaddr_r.3
man/man3/lwres_gethostbyname.3
man/man3/lwres_gethostbyname2.3
man/man3/lwres_gethostbyname_r.3
man/man3/lwres_gethostent.3
man/man3/lwres_gethostent_r.3
man/man3/lwres_getipnode.3
man/man3/lwres_getipnodebyaddr.3
man/man3/lwres_getipnodebyname.3
man/man3/lwres_getnamebyaddr.3
man/man3/lwres_getnameinfo.3
man/man3/lwres_getrrsetbyname.3
man/man3/lwres_gnba.3
man/man3/lwres_gnbarequest_free.3
man/man3/lwres_gnbarequest_parse.3
man/man3/lwres_gnbarequest_render.3
man/man3/lwres_gnbaresponse_free.3
man/man3/lwres_gnbaresponse_parse.3
man/man3/lwres_gnbaresponse_render.3
man/man3/lwres_herror.3
man/man3/lwres_hstrerror.3
man/man3/lwres_inetntop.3
man/man3/lwres_lwpacket_parseheader.3
man/man3/lwres_lwpacket_renderheader.3
man/man3/lwres_net_ntop.3
man/man3/lwres_noop.3
man/man3/lwres_nooprequest_free.3
man/man3/lwres_nooprequest_parse.3
man/man3/lwres_nooprequest_render.3
man/man3/lwres_noopresponse_free.3
man/man3/lwres_noopresponse_parse.3
man/man3/lwres_noopresponse_render.3
man/man3/lwres_packet.3
man/man3/lwres_resutil.3
man/man3/lwres_sethostent.3
man/man3/lwres_sethostent_r.3
man/man3/lwres_string_parse.3
man/man5/named.conf.5
man/man5/rndc.conf.5
man/man8/ddns-confgen.8
man/man8/dnssec-dsfromkey.8
man/man8/dnssec-keyfromlabel.8
man/man8/dnssec-keygen.8
man/man8/dnssec-revoke.8
man/man8/dnssec-settime.8
man/man8/dnssec-signzone.8
man/man8/genrandom.8
man/man8/isc-hmac-fixup.8
man/man8/lwresd.8
man/man8/named-checkconf.8
man/man8/named-checkzone.8
man/man8/named-compilezone.8
man/man8/named-journalprint.8
man/man8/named.8
man/man8/nsec3hash.8
man/man8/rndc-confgen.8
man/man8/rndc.8
sbin/arpaname
sbin/ddns-confgen
sbin/dnssec-dsfromkey
sbin/dnssec-keyfromlabel
sbin/dnssec-keygen
sbin/dnssec-revoke
sbin/dnssec-settime
sbin/dnssec-signzone
sbin/genrandom
sbin/isc-hmac-fixup
sbin/lwresd
sbin/named
sbin/named-checkconf
sbin/named-checkzone
sbin/named-compilezone
sbin/named-journalprint
sbin/nsec3hash
sbin/rndc
sbin/rndc-confgen
share/doc/bind9/CHANGES
share/doc/bind9/FAQ
share/doc/bind9/README
share/doc/bind9/REDIRECT-NOTES
share/doc/bind9/arm/Bv9ARM.ch01.html
share/doc/bind9/arm/Bv9ARM.ch02.html
share/doc/bind9/arm/Bv9ARM.ch03.html
share/doc/bind9/arm/Bv9ARM.ch04.html
share/doc/bind9/arm/Bv9ARM.ch05.html
share/doc/bind9/arm/Bv9ARM.ch06.html
share/doc/bind9/arm/Bv9ARM.ch07.html
share/doc/bind9/arm/Bv9ARM.ch08.html
share/doc/bind9/arm/Bv9ARM.ch09.html
share/doc/bind9/arm/Bv9ARM.ch10.html
share/doc/bind9/arm/Bv9ARM.html
share/doc/bind9/arm/man.arpaname.html
share/doc/bind9/arm/man.ddns-confgen.html
share/doc/bind9/arm/man.dig.html
share/doc/bind9/arm/man.dnssec-dsfromkey.html
share/doc/bind9/arm/man.dnssec-keyfromlabel.html
share/doc/bind9/arm/man.dnssec-keygen.html
share/doc/bind9/arm/man.dnssec-revoke.html
share/doc/bind9/arm/man.dnssec-settime.html
share/doc/bind9/arm/man.dnssec-signzone.html
share/doc/bind9/arm/man.genrandom.html
share/doc/bind9/arm/man.host.html
share/doc/bind9/arm/man.isc-hmac-fixup.html
share/doc/bind9/arm/man.named-checkconf.html
share/doc/bind9/arm/man.named-checkzone.html
share/doc/bind9/arm/man.named-journalprint.html
share/doc/bind9/arm/man.named.html
share/doc/bind9/arm/man.nsec3hash.html
share/doc/bind9/arm/man.nsupdate.html
share/doc/bind9/arm/man.rndc-confgen.html
share/doc/bind9/arm/man.rndc.conf.html
share/doc/bind9/arm/man.rndc.html
share/examples/rc.d/lwresd
share/examples/rc.d/named9

12
net/bind99/buildlink3.mk Normal file
View file

@ -0,0 +1,12 @@
# $NetBSD: buildlink3.mk,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
BUILDLINK_TREE+= bind
.if !defined(BIND_BUILDLINK3_MK)
BIND_BUILDLINK3_MK:=
BUILDLINK_API_DEPENDS.bind+= bind>=9.9.0
BUILDLINK_PKGSRCDIR.bind?= ../../net/bind99
.endif # BIND_BUILDLINK3_MK
BUILDLINK_TREE+= -bind

92
net/bind99/builtin.mk Normal file
View file

@ -0,0 +1,92 @@
# $NetBSD: builtin.mk,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
BUILTIN_PKG:= bind
BUILTIN_FIND_FILES_VAR:= EXE_NAMED
BUILTIN_FIND_FILES.EXE_NAMED= /usr/sbin/named
BUILTIN_FIND_LIBS:= bind
.include "../../mk/buildlink3/bsd.builtin.mk"
###
### Figure out the version of BIND if an ISC BIND named exists on the
### system.
###
.if !defined(BUILTIN_VERSION.bind) && \
empty(EXE_NAMED:M__nonexistent__) && \
empty(EXE_NAMED:M${LOCALBASE}/*)
BUILTIN_VERSION.bind!= \
${EXE_NAMED} -v 2>/dev/null | ${HEAD} -1 | \
${AWK} 'BEGIN { v = "4.9.11"; } \
/^BIND / { v = $$2; sub("-.*", "", v); } \
/^named / { v = $$2; sub("-.*", "", v); } \
END { print v; }'
.endif
MAKEVARS+= BUILTIN_VERSION.bind
###
### Determine if there is a built-in implementation of the package and
### set IS_BUILTIN.<pkg> appropriately ("yes" or "no").
###
.if !defined(IS_BUILTIN.bind)
IS_BUILTIN.bind= no
. if defined(BUILTIN_VERSION.bind)
IS_BUILTIN.bind= yes
. endif
.endif
MAKEVARS+= IS_BUILTIN.bind
###
### If there is a built-in implementation, then set BUILTIN_PKG.<pkg> to
### a package name to represent the built-in package.
###
.if !defined(BUILTIN_PKG.bind) && \
!empty(IS_BUILTIN.bind:M[yY][eE][sS]) && \
defined(BUILTIN_VERSION.bind)
BUILTIN_PKG.bind= bind-${BUILTIN_VERSION.bind}
.endif
MAKEVARS+= BUILTIN_PKG.bind
###
### Determine whether we should use the built-in implementation if it
### exists, and set USE_BUILTIN.<pkg> appropriate ("yes" or "no").
###
.if !defined(USE_BUILTIN.bind)
. if ${PREFER.bind} == "pkgsrc"
USE_BUILTIN.bind= no
. else
USE_BUILTIN.bind= ${IS_BUILTIN.bind}
. if defined(BUILTIN_PKG.bind) && \
!empty(IS_BUILTIN.bind:M[yY][eE][sS])
USE_BUILTIN.bind= yes
. for dep in ${BUILDLINK_API_DEPENDS.bind}
. if !empty(USE_BUILTIN.bind:M[yY][eE][sS])
USE_BUILTIN.bind!= \
if ${PKG_ADMIN} pmatch ${dep:Q} ${BUILTIN_PKG.bind:Q}; then \
${ECHO} yes; \
else \
${ECHO} no; \
fi
. endif
. endfor
. endif
. endif # PREFER.bind
.endif
MAKEVARS+= USE_BUILTIN.bind
###
### The section below only applies if we are not including this file
### solely to determine whether a built-in implementation exists.
###
CHECK_BUILTIN.bind?= no
.if !empty(CHECK_BUILTIN.bind:M[nN][oO])
. if !empty(USE_BUILTIN.bind:M[yY][eE][sS])
. if !empty(BUILTIN_LIB_FOUND.bind:M[yY][eE][sS])
BUILDLINK_LDADD.bind?= -lbind
. endif
. elif !empty(USE_BUILTIN.bind:M[nN][oO])
BUILDLINK_LDADD.bind?= -lbind
. endif
.endif # CHECK_BUILTIN.bind

18
net/bind99/distinfo Normal file
View file

@ -0,0 +1,18 @@
$NetBSD: distinfo,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
SHA1 (bind-9.9.0.tar.gz) = 6be77c75c8649088b0ae7124d819b5f412bb0094
RMD160 (bind-9.9.0.tar.gz) = 5fda36a3aa84062f7936978cb540e8ad3f1c4e08
Size (bind-9.9.0.tar.gz) = 7114050 bytes
SHA1 (patch-bin_dig_dighost.c) = 186cdc70605242afb0211dc8802ec75677a65614
SHA1 (patch-config.threads.in) = 227b83efe9cb3e301aaac9b97cf42f1fb8ad06b2
SHA1 (patch-configure) = 6a8b709d8369864c397d4315348c9c96753618f6
SHA1 (patch-lib_bind9_Makefile.in) = 89e21d21fa512f11a2fdb8d7455abd5d95f20ba5
SHA1 (patch-lib_dns_Makefile.in) = 1770a8bd86901c618b11d255f3af54748d04b759
SHA1 (patch-lib_dns_rbt.c) = df4b029369d9fa3b250d8505b5f7590e2cd86654
SHA1 (patch-lib_dns_zone.c) = e01378ee95bf7c5b903a2c3a90acf83a3a4cae52
SHA1 (patch-lib_isc_Makefile.in) = 5e0739d19957b1f26bcc24a6c76bcab6248cbff5
SHA1 (patch-lib_isccc_Makefile.in) = a31831872b7724cb84f663ed70a82335d812f95f
SHA1 (patch-lib_isccfg_Makefile.in) = 5ce4a85c1a13eca255804850b18b421418a2a01b
SHA1 (patch-lib_lwres_Makefile.in) = 40fd0ed1d699cb2f6258f33888a9495899373767
SHA1 (patch-lib_lwres_getaddrinfo.c) = ccc00e446867785e401eb92e63e05505dfd01087
SHA1 (patch-lib_lwres_getnameinfo.c) = 418ad349cf52925c9e8051b5c71d9d51ea8d2fb1

View file

@ -0,0 +1,25 @@
#!@RCD_SCRIPTS_SHELL@
#
# $NetBSD: lwresd.sh,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
#
# PROVIDE: lwresd
# REQUIRE: SERVERS
. /etc/rc.subr
name="lwresd"
rcvar=${name}
command="@PREFIX@/sbin/${name}"
pidfile="@VARBASE@/run/lwresd/${name}.pid"
extra_commands="reload"
start_precmd="lwresd_precmd"
lwresd_precmd()
{
if [ ! -d @VARBASE@/run/lwresd ]; then
@MKDIR@ @VARBASE@/run/lwresd
fi
}
load_rc_config ${name} # check /etc/rc.conf.d/named9
run_rc_command "$1"

View file

@ -0,0 +1,66 @@
#!@RCD_SCRIPTS_SHELL@
#
# $NetBSD: named9.sh,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
#
# PROVIDE: named
# REQUIRE: NETWORKING mountcritremote syslogd
# BEFORE: DAEMON
# KEYWORD: chrootdir
. /etc/rc.subr
name="named"
rcvar="${name}9"
command="@PREFIX@/sbin/${name}"
pidfile="@VARBASE@/run/named/${name}.pid"
start_precmd="named_precmd"
extra_commands="reload"
required_dirs="$named_chrootdir" # if it is set, it must exist
named_precmd()
{
# Die if $named is also set (i.e. the system's named is not disabled
if checkyesno named ; then
warn \
"disable 'named' when setting 'named9'!"
return 1
fi
if [ ! -d @VARBASE@/run/named ]; then
@MKDIR@ @VARBASE@/run/named
fi
if [ -z "$named_chrootdir" ]; then
return 0;
fi
for i in null random
do
if [ ! -c "${named_chrootdir}/dev/$i" ]; then
@RM@ -f "${named_chrootdir}/dev/$i"
(cd /dev &&
@PAX@ -rw -pe "$i" "${named_chrootdir}/dev")
fi
done
if [ -f /etc/localtime ]; then
@CMP@ -s /etc/localtime "${named_chrootdir}/etc/localtime" || \
@CP@ -p /etc/localtime "${named_chrootdir}/etc/localtime"
fi
if [ ! -d ${named_chrootdir}@VARBASE@/run/named ]; then
@MKDIR@ ${named_chrootdir}@VARBASE@/run/named
@CHOWN@ @BIND_USER@ ${named_chrootdir}@VARBASE@/run/named
fi
@RM@ -f ${pidfile}
@LN@ -s "${named_chrootdir}${pidfile}" ${pidfile}
# Change run_rc_commands()'s internal copy of $named_flags
#
rc_flags="-u @BIND_USER@ -t ${named_chrootdir} $rc_flags"
}
load_rc_config "$rcvar"
run_rc_command "$1"

89
net/bind99/options.mk Normal file
View file

@ -0,0 +1,89 @@
# $NetBSD: options.mk,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
PKG_OPTIONS_VAR= PKG_OPTIONS.bind99
PKG_SUPPORTED_OPTIONS= bind-dig-sigchase bind-xml-statistics-server
PKG_SUPPORTED_OPTIONS+= inet6 threads mysql pgsql ldap dlz-filesystem
.include "../../mk/pthread.buildlink3.mk"
.if defined(PTHREAD_TYPE) && (${PTHREAD_TYPE} == "none") || \
!empty(MACHINE_PLATFORM:MNetBSD-*-vax) || \
!empty(MACHINE_PLATFORM:MNetBSD-*-sparc) || \
!empty(MACHINE_PLATFORM:MNetBSD-*-sparc64) || \
!empty(MACHINE_PLATFORM:MNetBSD-*-m68k)
# don't touch PKG_SUGGESTED_OPTIONS
.else
PKG_SUGGESTED_OPTIONS+= threads
.endif
.if empty(MISSING_FEATURES:Minet6)
PKG_SUGGESTED_OPTIONS+= inet6
.endif
.include "../../mk/bsd.options.mk"
###
### The mysql pgsql ldap dlz-filesystem options are all for BIND
### DLZ (Dynamically Loadable Zones) functionality
###
### NOTE: bdb is excluded on purpose as pkgsrc does not contain
### a bdb v4.1 or 4.2 package which is what BIND needs.
### The majority of these are compile tested only
###
.if !empty(PKG_OPTIONS:Mmysql)
.include "../../mk/mysql.buildlink3.mk"
CONFIGURE_ARGS+= --with-dlz-mysql=${BUILDLINK_PREFIX.mysql-client}
.endif
.if !empty(PKG_OPTIONS:Mpgsql)
.include "../../mk/pgsql.buildlink3.mk"
CONFIGURE_ARGS+= --with-dlz-postgres=${BUILDLINK_PREFIX.${PGSQL_TYPE}}
CONFIGURE_ENV+= ac_cv_path_PG_CONFIG=${PREFIX}/bin/pg_config
.endif
.if !empty(PKG_OPTIONS:Mldap)
.include "../../databases/openldap-client/buildlink3.mk"
CONFIGURE_ARGS+= --with-dlz-ldap=${BUILDLINK_PREFIX.openldap-client}
.endif
.if !empty(PKG_OPTIONS:Mdlz-filesystem)
CONFIGURE_ARGS+= --with-dlz-filesystem
.endif
###
### The statistics server in bind99 and later needs libxml2
###
.if !empty(PKG_OPTIONS:Mbind-xml-statistics-server)
.include "../../textproc/libxml2/buildlink3.mk"
CONFIGURE_ARGS+= --with-libxml2
.else
CONFIGURE_ARGS+= --without-libxml2
.endif
###
### IPv6 support
###
.if !empty(PKG_OPTIONS:Minet6)
CONFIGURE_ARGS+= --enable-ipv6
.else
CONFIGURE_ARGS+= --disable-ipv6
.endif
###
### pthreads support (also see magic above)
###
.if !empty(PKG_OPTIONS:Mthreads)
CONFIGURE_ARGS+= --enable-threads
.else
CONFIGURE_ARGS+= --disable-threads
.endif
###
### dig(1) option +sigchase for DNSSEC signature chasing
###
.if !empty(PKG_OPTIONS:Mbind-dig-sigchase)
# If anything else needs to add entries to STD_CDEFINES, this will need
# to be changed so that the two can cooperate.
CONFIGURE_ENV+= STD_CDEFINES=-DDIG_SIGCHASE=1
.endif

View file

@ -0,0 +1,128 @@
$NetBSD: patch-bin_dig_dighost.c,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
* Avoid to use true as variable name.
--- bin/dig/dighost.c.orig 2011-12-07 17:23:28.000000000 +0000
+++ bin/dig/dighost.c
@@ -4369,7 +4369,7 @@ prepare_lookup(dns_name_t *name)
isc_result_t result;
isc_region_t r;
dns_rdataset_t *rdataset = NULL;
- isc_boolean_t true = ISC_TRUE;
+ isc_boolean_t isc_true = ISC_TRUE;
#endif
memset(namestr, 0, DNS_NAME_FORMATSIZE);
@@ -4383,7 +4383,7 @@ prepare_lookup(dns_name_t *name)
result = advanced_rrsearch(&rdataset, &ns.name,
dns_rdatatype_aaaa,
- dns_rdatatype_any, &true);
+ dns_rdatatype_any, &isc_true);
if (result == ISC_R_SUCCESS) {
for (result = dns_rdataset_first(rdataset);
result == ISC_R_SUCCESS;
@@ -4412,7 +4412,7 @@ prepare_lookup(dns_name_t *name)
rdataset = NULL;
result = advanced_rrsearch(&rdataset, &ns.name, dns_rdatatype_a,
- dns_rdatatype_any, &true);
+ dns_rdatatype_any, &isc_true);
if (result == ISC_R_SUCCESS) {
for (result = dns_rdataset_first(rdataset);
result == ISC_R_SUCCESS;
@@ -4531,11 +4531,11 @@ isc_result_t
initialization(dns_name_t *name)
{
isc_result_t result;
- isc_boolean_t true = ISC_TRUE;
+ isc_boolean_t isc_true = ISC_TRUE;
chase_nsrdataset = NULL;
result = advanced_rrsearch(&chase_nsrdataset, name, dns_rdatatype_ns,
- dns_rdatatype_any, &true);
+ dns_rdatatype_any, &isc_true);
if (result != ISC_R_SUCCESS) {
printf("\n;; NS RRset is missing to continue validation:"
" FAILED\n\n");
@@ -4888,7 +4888,7 @@ sigchase_td(dns_message_t *msg)
isc_result_t result;
dns_name_t *name = NULL;
isc_boolean_t have_answer = ISC_FALSE;
- isc_boolean_t true = ISC_TRUE;
+ isc_boolean_t isc_true = ISC_TRUE;
if ((result = dns_message_firstname(msg, DNS_SECTION_ANSWER))
== ISC_R_SUCCESS) {
@@ -4897,7 +4897,7 @@ sigchase_td(dns_message_t *msg)
initialization(name);
return;
}
- have_answer = true;
+ have_answer = isc_true;
} else {
if (!current_lookup->trace_root_sigchase) {
result = dns_message_firstname(msg,
@@ -5015,7 +5015,7 @@ sigchase_td(dns_message_t *msg)
dns_rdatatype_rrsig,
current_lookup
->rdtype_sigchase,
- &true);
+ &isc_true);
if (result == ISC_R_FAILURE) {
printf("\n;; RRset is missing to continue"
" validation SHOULD NOT APPEND:"
@@ -5028,7 +5028,7 @@ sigchase_td(dns_message_t *msg)
&chase_authority_name,
dns_rdatatype_rrsig,
dns_rdatatype_any,
- &true);
+ &isc_true);
if (result == ISC_R_FAILURE) {
printf("\n;; RRSIG is missing to continue"
" validation SHOULD NOT APPEND:"
@@ -5104,7 +5104,7 @@ sigchase_td(dns_message_t *msg)
&chase_authority_name,
dns_rdatatype_rrsig,
dns_rdatatype_ds,
- &true);
+ &isc_true);
if (result != ISC_R_SUCCESS) {
printf("\n;; DSset is missing to continue validation:"
" FAILED\n\n");
@@ -5192,7 +5192,7 @@ sigchase_td(dns_message_t *msg)
result = advanced_rrsearch(&chase_rdataset, &chase_name,
current_lookup->rdtype_sigchase,
dns_rdatatype_any ,
- &true);
+ &isc_true);
if (result == ISC_R_FAILURE) {
printf("\n;; RRsig of RRset is missing to continue validation"
" SHOULD NOT APPEND: FAILED\n\n");
@@ -5235,7 +5235,7 @@ getneededrr(dns_message_t *msg)
dns_name_t *name = NULL;
dns_rdata_t sigrdata = DNS_RDATA_INIT;
dns_rdata_sig_t siginfo;
- isc_boolean_t true = ISC_TRUE;
+ isc_boolean_t isc_true = ISC_TRUE;
if ((result = dns_message_firstname(msg, DNS_SECTION_ANSWER))
!= ISC_R_SUCCESS) {
@@ -5251,7 +5251,7 @@ getneededrr(dns_message_t *msg)
if (chase_rdataset == NULL) {
result = advanced_rrsearch(&chase_rdataset, name,
dns_rdatatype_any,
- dns_rdatatype_any, &true);
+ dns_rdatatype_any, &isc_true);
if (result != ISC_R_SUCCESS) {
printf("\n;; No Answers: Validation FAILED\n\n");
return (ISC_R_NOTFOUND);
@@ -5371,7 +5371,7 @@ getneededrr(dns_message_t *msg)
result = advanced_rrsearch(&chase_sigdsrdataset,
&chase_signame,
dns_rdatatype_rrsig,
- dns_rdatatype_ds, &true);
+ dns_rdatatype_ds, &isc_true);
if (result == ISC_R_FAILURE) {
printf(";; WARNING : NO RRSIG DS : RRSIG DS"
" should come with DS\n");

View file

@ -0,0 +1,15 @@
$NetBSD: patch-config.threads.in,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
* Add DragonFly support.
--- config.threads.in.orig 2012-01-30 07:08:34.000000000 +0000
+++ config.threads.in
@@ -50,6 +50,8 @@ case $host in
use_threads=false ;;
*-freebsd*)
use_threads=true ;;
+*-dragonfly*)
+ use_threads=false ;;
[*-bsdi[234]*])
# Thread signals do not work reliably on some versions of BSD/OS.
use_threads=false ;;

View file

@ -0,0 +1,25 @@
$NetBSD: patch-configure,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
* Add DragonFly support.
* Link proper postgresql library.
--- configure.orig 2012-01-30 10:09:37.000000000 +0000
+++ configure
@@ -22166,6 +22166,8 @@ case $host in
use_threads=false ;;
*-freebsd*)
use_threads=true ;;
+*-dragonfly*)
+ use_threads=false ;;
*-bsdi[234]*)
# Thread signals do not work reliably on some versions of BSD/OS.
use_threads=false ;;
@@ -27148,7 +27150,7 @@ $as_echo "no" >&6; }
fi
if test -n "-L$use_dlz_postgres_lib -lpq"
then
- DLZ_DRIVER_LIBS="$DLZ_DRIVER_LIBS -L$use_dlz_postgres_lib -lpq"
+ DLZ_DRIVER_LIBS="$DLZ_DRIVER_LIBS -L${PREFIX}/lib -lpq"
fi

View file

@ -0,0 +1,15 @@
$NetBSD: patch-lib_bind9_Makefile.in,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
* XXX: Install with proper permission.
--- lib/bind9/Makefile.in.orig 2009-12-05 23:31:40.000000000 +0000
+++ lib/bind9/Makefile.in
@@ -78,7 +78,7 @@ installdirs:
$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${libdir}
install:: timestamp installdirs
- ${LIBTOOL_MODE_INSTALL} ${INSTALL_DATA} libbind9.@A@ ${DESTDIR}${libdir}
+ ${LIBTOOL_MODE_INSTALL} ${INSTALL_SCRIPT} libbind9.@A@ ${DESTDIR}${libdir}
clean distclean::
rm -f libbind9.@A@ timestamp

View file

@ -0,0 +1,15 @@
$NetBSD: patch-lib_dns_Makefile.in,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
* XXX: Install with proper permission.
--- lib/dns/Makefile.in.orig 2011-10-11 00:09:03.000000000 +0000
+++ lib/dns/Makefile.in
@@ -135,7 +135,7 @@ installdirs:
$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${libdir}
install:: timestamp installdirs
- ${LIBTOOL_MODE_INSTALL} ${INSTALL_DATA} libdns.@A@ ${DESTDIR}${libdir}
+ ${LIBTOOL_MODE_INSTALL} ${INSTALL_SCRIPT} libdns.@A@ ${DESTDIR}${libdir}
clean distclean::
rm -f libdns.@A@ timestamp

View file

@ -0,0 +1,17 @@
$NetBSD: patch-lib_dns_rbt.c,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
* Disable inline on powerpc.
--- lib/dns/rbt.c.orig 2011-08-25 05:56:50.000000000 +0000
+++ lib/dns/rbt.c
@@ -177,6 +177,10 @@ Name(dns_rbtnode_t *node) {
static void dns_rbt_printnodename(dns_rbtnode_t *node);
#endif
+#if !defined(inline) && defined(__powerpc__)
+#define inline /**/
+#endif
+
static inline dns_rbtnode_t *
find_up(dns_rbtnode_t *node) {
dns_rbtnode_t *root;

View file

@ -0,0 +1,18 @@
$NetBSD: patch-lib_dns_zone.c,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
* Avoid to use bool as variable name.
--- lib/dns/zone.c.orig 2012-02-23 07:09:02.000000000 +0000
+++ lib/dns/zone.c
@@ -15780,9 +15780,9 @@ dns_zone_setrefreshkeyinterval(dns_zone_
}
void
-dns_zone_setrequestixfr(dns_zone_t *zone, isc_boolean_t bool) {
+dns_zone_setrequestixfr(dns_zone_t *zone, isc_boolean_t isc_bool) {
REQUIRE(DNS_ZONE_VALID(zone));
- zone->requestixfr = bool;
+ zone->requestixfr = isc_bool;
}
isc_boolean_t

View file

@ -0,0 +1,15 @@
$NetBSD: patch-lib_isc_Makefile.in,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
* XXX: Install with proper permission.
--- lib/isc/Makefile.in.orig 2011-07-07 23:47:49.000000000 +0000
+++ lib/isc/Makefile.in
@@ -127,7 +127,7 @@ installdirs:
$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${libdir}
install:: timestamp installdirs
- ${LIBTOOL_MODE_INSTALL} ${INSTALL_DATA} libisc.@A@ ${DESTDIR}${libdir}
+ ${LIBTOOL_MODE_INSTALL} ${INSTALL_SCRIPT} libisc.@A@ ${DESTDIR}${libdir}
clean distclean::
rm -f libisc.@A@ libisc-nosymtbl.@A@ libisc.la \

View file

@ -0,0 +1,15 @@
$NetBSD: patch-lib_isccc_Makefile.in,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
* XXX: Install with proper permission.
--- lib/isccc/Makefile.in.orig 2011-02-19 23:47:38.000000000 +0000
+++ lib/isccc/Makefile.in
@@ -80,7 +80,7 @@ installdirs:
$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${libdir}
install:: timestamp installdirs
- ${LIBTOOL_MODE_INSTALL} ${INSTALL_DATA} libisccc.@A@ ${DESTDIR}${libdir}
+ ${LIBTOOL_MODE_INSTALL} ${INSTALL_SCRIPT} libisccc.@A@ ${DESTDIR}${libdir}
clean distclean::
rm -f libisccc.@A@ timestamp

View file

@ -0,0 +1,15 @@
$NetBSD: patch-lib_isccfg_Makefile.in,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
* XXX: Install with proper permission.
--- lib/isccfg/Makefile.in.orig 2011-03-10 04:36:16.000000000 +0000
+++ lib/isccfg/Makefile.in
@@ -77,7 +77,7 @@ installdirs:
$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${libdir}
install:: timestamp installdirs
- ${LIBTOOL_MODE_INSTALL} ${INSTALL_DATA} libisccfg.@A@ ${DESTDIR}${libdir}
+ ${LIBTOOL_MODE_INSTALL} ${INSTALL_SCRIPT} libisccfg.@A@ ${DESTDIR}${libdir}
clean distclean::
rm -f libisccfg.@A@ timestamp

View file

@ -0,0 +1,15 @@
$NetBSD: patch-lib_lwres_Makefile.in,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
* XXX: Install with proper permission.
--- lib/lwres/Makefile.in.orig 2007-06-19 23:47:22.000000000 +0000
+++ lib/lwres/Makefile.in
@@ -78,7 +78,7 @@ installdirs:
$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${libdir}
install:: timestamp installdirs
- ${LIBTOOL_MODE_INSTALL} ${INSTALL_DATA} liblwres.@A@ ${DESTDIR}${libdir}
+ ${LIBTOOL_MODE_INSTALL} ${INSTALL_SCRIPT} liblwres.@A@ ${DESTDIR}${libdir}
clean distclean::
rm -f liblwres.@A@ liblwres.la timestamp

View file

@ -0,0 +1,41 @@
$NetBSD: patch-lib_lwres_getaddrinfo.c,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
* Add fix for KAME based implementation.
--- lib/lwres/getaddrinfo.c.orig 2008-11-25 23:47:23.000000000 +0000
+++ lib/lwres/getaddrinfo.c
@@ -142,6 +142,10 @@
#include <lwres/netdb.h>
#include <lwres/stdlib.h>
+#ifdef __KAME__
+#include <net/if.h>
+#endif
+
#define SA(addr) ((struct sockaddr *)(addr))
#define SIN(addr) ((struct sockaddr_in *)(addr))
#define SIN6(addr) ((struct sockaddr_in6 *)(addr))
@@ -366,14 +370,22 @@ lwres_getaddrinfo(const char *hostname,
p = strchr(ntmp, '%');
ep = NULL;
+#ifdef __KAME__
+ if (p != NULL) {
+ scopeid = if_nametoindex(p + 1);
+ if (scopeid)
+ p = NULL;
+ }
+#endif
/*
* Vendors may want to support non-numeric
* scopeid around here.
*/
- if (p != NULL)
+ if (p != NULL) {
scopeid = (lwres_uint32_t)strtoul(p + 1,
&ep, 10);
+ }
if (p != NULL && ep != NULL && ep[0] == '\0')
*p = '\0';
else {

View file

@ -0,0 +1,34 @@
$NetBSD: patch-lib_lwres_getnameinfo.c,v 1.1.1.1 2012/03/07 14:25:00 taca Exp $
* Add fix for KAME based implementation.
--- lib/lwres/getnameinfo.c.orig 2011-08-30 23:46:53.000000000 +0000
+++ lib/lwres/getnameinfo.c
@@ -121,6 +121,10 @@
#include <lwres/netdb.h>
#include "print_p.h"
+#ifdef __KAME__
+#include <net/if.h>
+#endif
+
#include "assert_p.h"
#define SUCCESS 0
@@ -272,13 +276,9 @@ lwres_getnameinfo(const struct sockaddr
((const struct sockaddr_in6 *)sa)->sin6_scope_id) {
char *p = numaddr + strlen(numaddr);
const char *stringscope = NULL;
-#if 0
- if ((flags & NI_NUMERICSCOPE) == 0) {
- /*
- * Vendors may want to add support for
- * non-numeric scope identifier.
- */
- stringscope = foo;
+#ifdef __KAME__
+ stringscope = if_indextoname(
+ ((const struct sockaddr_in6 *)sa)->sin6_scope_id);
}
#endif
if (stringscope == NULL) {