pkgsrc/net/bind9/Makefile
adrianp d1991b97c2 Fixes for CVE-2006-4095 and CVE-2006-4096 from bind-9.3.2-P1
* Assertion failure in ISC BIND SIG query processing (CVE-2006-4095)

- Recursive servers
Queries for SIG records will trigger an assertion failure if more
than one RRset is returned. However exposure can be minimized by
restricting which sources can ask for recursion.

- Authoritative servers
If a nameserver is serving a RFC 2535 DNSSEC zone and is queried
for the SIG records where there are multiple RRsets, then the
named program will trigger an assertion failure when it tries
to construct the response.

* INSIST failure in ISC BIND recursive query handling code (CVE-2006-4096)

It is possible to trigger an INSIST failure by sending enough
recursive queries such that the response to the query arrives after
all the clients waiting for the response have left the recursion
queue. However exposure can be minimized by restricting which sources
can ask for recursion.
2006-09-05 20:45:32 +00:00

82 lines
2.8 KiB
Makefile

# $NetBSD: Makefile,v 1.82 2006/09/05 20:45:32 adrianp Exp $
DISTNAME= bind-${BIND_VERSION}
PKGREVISION= 2
CATEGORIES= net
MASTER_SITES= ftp://ftp.isc.org/isc/bind9/${BIND_VERSION}/
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= http://www.isc.org/sw/bind/
COMMENT= Version 9 of the Berkeley Internet Name Daemon, implementation of DNS
BIND_VERSION= 9.3.2
# IPv6 ready, automatically detected
.include "../../mk/bsd.prefs.mk"
BUILD_DEFS+= USE_INET6
# No need to set USE_INET6, will auto-detect.
BUILD_DEFS+= BIND_USER BIND_GROUP BIND_DIR VARBASE
USE_LIBTOOL= yes
GNU_CONFIGURE= yes
CONFIGURE_ARGS+=--with-libtool=yes \
--sysconfdir=/etc \
--localstatedir=${VARBASE:Q}
#LDFLAGS+= ${COMPILER_RPATH_FLAG}${LOCALBASE}/pthreads/lib -L${LOCALBASE}/pthreads/lib
# use external OpenSSL. comment out the following line and the buildlink
# include at the bottom to use OpenSSL shipped with BIND9.
CONFIGURE_ARGS+=--with-openssl=${SSLBASE:Q}
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
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}
# include/isc/ipv6.h is installed on non-ipv6 platforms
.if defined(USE_INET6) && (${USE_INET6} == "YES")
PLIST_SUBST+= IPV6H="@comment "
.else
PLIST_SUBST+= IPV6H=
.endif
PLIST_SRC= ${WRKDIR}/PLIST
RCD_SCRIPTS= lwresd named9
post-install:
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/bind9
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/bind9/arm
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/bind9/draft
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/bind9/misc
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/bind9/rfc
${INSTALL_DATA} ${WRKSRC}/README ${PREFIX}/share/doc/bind9
${INSTALL_DATA} ${WRKSRC}/doc/arm/* ${PREFIX}/share/doc/bind9/arm
${INSTALL_DATA} ${WRKSRC}/doc/draft/* ${PREFIX}/share/doc/bind9/draft
${INSTALL_DATA} ${WRKSRC}/doc/misc/* ${PREFIX}/share/doc/bind9/misc
${INSTALL_DATA} ${WRKSRC}/doc/rfc/* ${PREFIX}/share/doc/bind9/rfc
${CP} ${PKGDIR}/PLIST ${PLIST_SRC}
(cd ${PREFIX}; ${FIND} share/doc/bind9 -type f -print ) >> ${PLIST_SRC}
(cd ${PREFIX}; ${FIND} share/doc/bind9 -type d -print ) | \
${SED} -e 's/^/@dirrm /' | ${SORT} -r >> ${PLIST_SRC}
(cd ${PREFIX}; ${FIND} include/bind -type f -print ) >> ${PLIST_SRC}
(cd ${PREFIX}; ${FIND} include/bind -type d -print ) | \
${SED} -e 's/^/@dirrm /' | ${SORT} -r >> ${PLIST_SRC}
.include "../../mk/pthread.buildlink3.mk"
.include "../../security/openssl/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
.if defined(PTHREAD_TYPE) && (${PTHREAD_TYPE} == "none") || \
!empty(MACHINE_PLATFORM:MNetBSD-*-vax) || \
!empty(MACHINE_PLATFORM:MNetBSD-*-m68k)
CONFIGURE_ARGS+= --disable-threads
.else
CONFIGURE_ARGS+= --enable-threads
.endif