diff --git a/net/bind9/Makefile b/net/bind9/Makefile new file mode 100644 index 00000000000..3bec9cc07c8 --- /dev/null +++ b/net/bind9/Makefile @@ -0,0 +1,52 @@ +# $OpenBSD: Makefile,v 1.1.1.1 2000/09/16 07:36:52 jakob Exp $ + +VERSION= 9.0.0 +DISTNAME= bind-${VERSION} +CATEGORIES= net +NEED_VERSION= 1.302 + +MASTER_SITES= ftp://ftp.isc.org/isc/bind9/${VERSION}/ \ + ftp://ftp.sunet.se/pub/network/isc/bind9/${VERSION} + +HOMEPAGE= http://www.isc.org/products/BIND/ + +MAINTAINER= jakob@openbsd.org + +PERMIT_PACKAGE_CDROM= Yes +PERMIT_PACKAGE_FTP= Yes +PERMIT_DISTFILES_CDROM= Yes +PERMIT_DISTFILES_FTP= Yes + +CONFIGURE_STYLE= gnu +CONFIGURE_ARGS= --prefix=${PREFIX} \ + --sysconfdir=/etc \ + --localstatedir=/var +SEPARATE_BUILD= concurrent +FAKE_FLAGS+= MAKEDEFS='DESTDIR=${WRKINST}' + +EXAMPLEFILES= named.conf named.root \ + named.localhost named.loopback + +FLAVORS= debug +FLAVOR?= +.if ${FLAVOR:L} == "debug" +CONFIGURE_ENV+= CFLAGS=-g +.endif + +post-install: + ${INSTALL_PROGRAM} ${FILESDIR}/bind9-enable ${PREFIX}/sbin + ${INSTALL_MAN} ${WRKSRC}/doc/man/bin/*.1 ${PREFIX}/man/man1 + ${INSTALL_MAN} ${WRKSRC}/doc/man/bin/*.5 ${PREFIX}/man/man5 + ${INSTALL_MAN} ${WRKSRC}/doc/man/bin/*.8 ${PREFIX}/man/man8 + ${INSTALL_MAN} ${WRKSRC}/doc/man/dnssec/*.8 ${PREFIX}/man/man8 + ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/bind9 + ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/bind9/arm + ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/bind9/misc + ${INSTALL_DATA} ${WRKSRC}/doc/arm/* ${PREFIX}/share/doc/bind9/arm + ${INSTALL_DATA} ${WRKSRC}/doc/misc/* ${PREFIX}/share/doc/bind9/misc + ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/bind9 +.for file in ${EXAMPLEFILES} + ${INSTALL_DATA} ${FILESDIR}/${file} ${PREFIX}/share/examples/bind9 +.endfor + +.include diff --git a/net/bind9/files/bind9-enable b/net/bind9/files/bind9-enable new file mode 100644 index 00000000000..2fb14851bd6 --- /dev/null +++ b/net/bind9/files/bind9-enable @@ -0,0 +1,127 @@ +#!/bin/sh +# +# $OpenBSD: bind9-enable,v 1.1.1.1 2000/09/16 07:36:53 jakob Exp $ + +PREFIX=`dirname $0`/.. +BINDIR=/usr/sbin +INSTALL_PROGRAM="/usr/bin/install -c -s -o root -g wheel -m 555" +INSTALL_MAN="/usr/bin/install -c -o root -g wheel -m 444" + + +echo "This script will replace the OpenBSD named with BIND v9" +echo "" +echo -n "Are you sure you want to to this (y/[n])? " + +read answer +echo "" + +if [ X$answer != Xy ]; then + echo "exit" + exit +fi + +###################################################################### +echo -n "Removing obsolete binaries:" + +for file in \ + ndc +do + echo -n " $file" + rm -f $BINDIR/$file +done + +echo -n " named-xfer" +rm -f /var/named/named-xfer + +echo "" +echo done. + +###################################################################### +echo -n "Installing binaries:" + +for file in \ + dig host nslookup nsupdate +do + echo -n " $file" + $INSTALL_PROGRAM $PREFIX/bin/$file $BINDIR +done + +for file in \ + named rndc lwresd \ + dnssec-keygen dnssec-makekeyset dnssec-signkey dnssec-signzone +do + echo -n " $file" + $INSTALL_PROGRAM $PREFIX/sbin/$file $BINDIR +done + +echo "" +echo done. + +###################################################################### +echo -n "Removing obsolete man-pages:" + +for file in \ + dig.0 host.0 +do + echo -n " $file" + rm -f /usr/share/man/cat1/$file +done + +for file in \ + named.conf.0 +do + echo -n " $file" + rm -f /usr/share/man/cat5/$file +done + +for file in \ + named.0 named.reload.0 named.restart.0 nslookup.0 +do + echo -n " $file" + rm -f /usr/share/man/cat8/$file +done + +echo "" +echo done. + +###################################################################### +echo -n "Installing man-pages:" + +for file in \ + host.1 +do + echo -n " $file" + $INSTALL_MAN $PREFIX/man/man1/$file /usr/share/man/man1 +done + +for file in \ + rndc.conf.5 +do + echo -n " $file" + $INSTALL_MAN $PREFIX/man/man5/$file /usr/share/man/man5 +done + +for file in \ + named.8 rndc.8 lwresd.8 \ + dnssec-keygen.8 dnssec-makekeyset.8 dnssec-signkey.8 dnssec-signzone.8 +do + echo -n " $file" + $INSTALL_MAN $PREFIX/man/man8/$file /usr/share/man/man8 +done + +echo "" +echo done. + +###################################################################### +config=/var/named/etc/named.conf +echo -n "Symlink $config:" + +if [ ! -L $config -a ! -e $config ]; then + echo -n " $config->../named.conf" + ln -s ../named.conf $config +else + echo -n " not needed" +fi + +echo "" +echo done. diff --git a/net/bind9/files/md5 b/net/bind9/files/md5 new file mode 100644 index 00000000000..b30bd2a537e --- /dev/null +++ b/net/bind9/files/md5 @@ -0,0 +1,3 @@ +MD5 (bind-9.0.0.tar.gz) = 04d09c518c154ce22a004d670b0fdaf4 +RMD160 (bind-9.0.0.tar.gz) = 29b238c474f1622c04a01adb4458fd54cea2ba8b +SHA1 (bind-9.0.0.tar.gz) = dde475e3954be105885c7f41e9a12f376f14abaf diff --git a/net/bind9/files/named.conf b/net/bind9/files/named.conf new file mode 100644 index 00000000000..d359383024d --- /dev/null +++ b/net/bind9/files/named.conf @@ -0,0 +1,45 @@ +// $OpenBSD: named.conf,v 1.1.1.1 2000/09/16 07:36:53 jakob Exp $ + +// NOTE: If you are not chroot'ing named, change directory to +// /var/named as OpenBSD chroot's named by default +options { + directory "/"; + //directory "/var/named"; + + // Don't reveal BIND version + version ""; +}; + +// Standard zones +// +zone "localhost" IN { + type master; + file "named.localhost"; + allow-transfer { localhost; }; +}; + +zone "0.0.127.in-addr.arpa" IN { + type master; + file "named.loopback"; + allow-transfer { localhost; }; +}; + +zone "." IN { + type hint; + file "named.root"; +}; + +// Master zones +// +//zone "myzone.net" IN { +// type master; +// file "master/myzone.net"; +//}; + +// Slave zones +// +//zone "otherzone.net" IN { +// type slave; +// file "slave/otherzone.net"; +// masters { 192.168.1.10; [...;] }; +//}; diff --git a/net/bind9/files/named.localhost b/net/bind9/files/named.localhost new file mode 100644 index 00000000000..0fbe6ac7c5c --- /dev/null +++ b/net/bind9/files/named.localhost @@ -0,0 +1,14 @@ +; $OpenBSD: named.localhost,v 1.1.1.1 2000/09/16 07:36:53 jakob Exp $ +; +$ORIGIN localhost. +$TTL 6h +; +@ IN SOA localhost. postmaster.localhost. ( + 1999061400 ; serial + 1h ; refresh + 30m ; retry + 7d ; expiration + 1h ) ; minimum +; + NS localhost. + A 127.0.0.1 diff --git a/net/bind9/files/named.loopback b/net/bind9/files/named.loopback new file mode 100644 index 00000000000..d2da4b2dff4 --- /dev/null +++ b/net/bind9/files/named.loopback @@ -0,0 +1,14 @@ +; $OpenBSD: named.loopback,v 1.1.1.1 2000/09/16 07:36:53 jakob Exp $ +; +$ORIGIN 0.0.127.in-addr.arpa. +$TTL 6h +; +@ IN SOA localhost. postmaster.localhost. ( + 1999061400 ; serial + 1h ; refresh + 30m ; retry + 7d ; expiration + 1h ) ; minimum +; + NS localhost. +1 PTR localhost. diff --git a/net/bind9/files/named.root b/net/bind9/files/named.root new file mode 100644 index 00000000000..3882124571a --- /dev/null +++ b/net/bind9/files/named.root @@ -0,0 +1,85 @@ +; $OpenBSD; +; +; This file holds the information on root name servers needed to +; initialize cache of Internet domain name servers +; (e.g. reference this file in the "cache . " +; configuration file of BIND domain name servers). +; +; This file is made available by InterNIC registration services +; under anonymous FTP as +; file /domain/named.root +; on server FTP.RS.INTERNIC.NET +; -OR- under Gopher at RS.INTERNIC.NET +; under menu InterNIC Registration Services (NSI) +; submenu InterNIC Registration Archives +; file named.root +; +; last update: Aug 22, 1997 +; related version of root zone: 1997082200 +; +; +; formerly NS.INTERNIC.NET +; +. 3600000 IN NS A.ROOT-SERVERS.NET. +A.ROOT-SERVERS.NET. 3600000 A 198.41.0.4 +; +; formerly NS1.ISI.EDU +; +. 3600000 NS B.ROOT-SERVERS.NET. +B.ROOT-SERVERS.NET. 3600000 A 128.9.0.107 +; +; formerly C.PSI.NET +; +. 3600000 NS C.ROOT-SERVERS.NET. +C.ROOT-SERVERS.NET. 3600000 A 192.33.4.12 +; +; formerly TERP.UMD.EDU +; +. 3600000 NS D.ROOT-SERVERS.NET. +D.ROOT-SERVERS.NET. 3600000 A 128.8.10.90 +; +; formerly NS.NASA.GOV +; +. 3600000 NS E.ROOT-SERVERS.NET. +E.ROOT-SERVERS.NET. 3600000 A 192.203.230.10 +; +; formerly NS.ISC.ORG +; +. 3600000 NS F.ROOT-SERVERS.NET. +F.ROOT-SERVERS.NET. 3600000 A 192.5.5.241 +; +; formerly NS.NIC.DDN.MIL +; +. 3600000 NS G.ROOT-SERVERS.NET. +G.ROOT-SERVERS.NET. 3600000 A 192.112.36.4 +; +; formerly AOS.ARL.ARMY.MIL +; +. 3600000 NS H.ROOT-SERVERS.NET. +H.ROOT-SERVERS.NET. 3600000 A 128.63.2.53 +; +; formerly NIC.NORDU.NET +; +. 3600000 NS I.ROOT-SERVERS.NET. +I.ROOT-SERVERS.NET. 3600000 A 192.36.148.17 +; +; temporarily housed at NSI (InterNIC) +; +. 3600000 NS J.ROOT-SERVERS.NET. +J.ROOT-SERVERS.NET. 3600000 A 198.41.0.10 +; +; housed in LINX, operated by RIPE NCC +; +. 3600000 NS K.ROOT-SERVERS.NET. +K.ROOT-SERVERS.NET. 3600000 A 193.0.14.129 +; +; temporarily housed at ISI (IANA) +; +. 3600000 NS L.ROOT-SERVERS.NET. +L.ROOT-SERVERS.NET. 3600000 A 198.32.64.12 +; +; housed in Japan, operated by WIDE +; +. 3600000 NS M.ROOT-SERVERS.NET. +M.ROOT-SERVERS.NET. 3600000 A 202.12.27.33 +; End of File diff --git a/net/bind9/patches/patch-randomdev b/net/bind9/patches/patch-randomdev new file mode 100644 index 00000000000..3b80e19a047 --- /dev/null +++ b/net/bind9/patches/patch-randomdev @@ -0,0 +1,32 @@ +--- bin/dnssec/dnssectool.c.orig Mon Aug 7 18:41:38 2000 ++++ bin/dnssec/dnssectool.c Thu Aug 17 13:20:17 2000 +@@ -187,7 +187,7 @@ + if (!wantkeyboard) { + fprintf(stderr, "You must use the keyboard to create " + "entropy, since your system is lacking\n"); +- fprintf(stderr, "/dev/random\n\n"); ++ fprintf(stderr, "/dev/srandom\n\n"); + } + first = ISC_FALSE; + } +@@ -257,7 +257,7 @@ + else { + if (randomfile == NULL) { + result = isc_entropy_createfilesource(*ectx, +- "/dev/random"); ++ "/dev/srandom"); + if (result == ISC_R_SUCCESS) + return; + } + +--- bin/named/main.c.orig Tue Jul 11 19:23:02 2000 ++++ bin/named/main.c Thu Aug 17 13:20:21 2000 +@@ -378,7 +378,7 @@ + return (ISC_R_UNEXPECTED); + } + +- (void)isc_entropy_createfilesource(ns_g_entropy, "/dev/random"); ++ (void)isc_entropy_createfilesource(ns_g_entropy, "/dev/srandom"); + + return (ISC_R_SUCCESS); + } diff --git a/net/bind9/pkg/COMMENT b/net/bind9/pkg/COMMENT new file mode 100644 index 00000000000..f67587d7d0f --- /dev/null +++ b/net/bind9/pkg/COMMENT @@ -0,0 +1 @@ +Berkeley Internet Name Daemon diff --git a/net/bind9/pkg/DESCR b/net/bind9/pkg/DESCR new file mode 100644 index 00000000000..a9570f76dd1 --- /dev/null +++ b/net/bind9/pkg/DESCR @@ -0,0 +1,66 @@ +BIND version 9 is a major rewrite of nearly all aspects of the underlying +BIND architecture. This re-architecting of BIND was necessitated by the +expected demands of: + + - Domain name system growth, particularly in very large + zones such as .COM + - Protocol enhancements necessary to securely query and + update zones + - Protocol enhancements necessary to take advantage of + certain architectural features of IP version 6 + +These demands implied performance requirements that were not necessarily +easy to attain with the BIND version 8 architecture. In particular, BIND +must not only be able to run on multi-processor multi-threaded systems, +but must take full advantage of the performance enhancements these +architectures can provide. In addition, the underlying data storage +architecture of BIND version 8 does not lend itself to implementing +alternative back end databases, such as would be desirable for the support +of multi-gigabyte zones. As such zones are easily foreseeable in the +relatively near future, the data storage architecture needed revision. The +feature requirements for BIND version 9 included: + + - Scalability + Thread safety + Multi-processor scalability + Support for very large zones + + - Security + Support for DNSSEC + Support for TSIG + Auditability (code and operation) + Firewall support (split DNS) + + - Portability + + - Maintainability + + - Protocol Enhancements + IXFR, DDNS, Notify, EDNS0 + Improved standards conformance + + - Operational enhancements + High availability and reliability + Support for alternative back end databases + + - IP version 6 support + IPv6 resource records (A6, DNAME, etc.) + Bitstring labels + APIs + +BIND version 9 development has been underwritten by the following +organizations: + + Sun Microsystems, Inc. + Hewlett Packard + Compaq Computer Corporation + IBM + Process Software Corporation + Silicon Graphics, Inc. + Network Associates, Inc. + U.S. Defense Information Systems Agency + USENIX Association + Stichting NLnet - NLnet Foundation + +WWW: ${HOMEPAGE} + diff --git a/net/bind9/pkg/MESSAGE b/net/bind9/pkg/MESSAGE new file mode 100644 index 00000000000..f89ca395d0a --- /dev/null +++ b/net/bind9/pkg/MESSAGE @@ -0,0 +1,7 @@ +If you want to replace the OpenBSD named, use the following command: + + ${PREFIX}/sbin/bind9-enable + +PLEASE NOTE that there is no bind9-disable command. Sample configuration +files can be found in ${PREFIX}/share/examples/bind9 and should be copied +to /var/named if used. diff --git a/net/bind9/pkg/PLIST b/net/bind9/pkg/PLIST new file mode 100644 index 00000000000..54ee6941dd6 --- /dev/null +++ b/net/bind9/pkg/PLIST @@ -0,0 +1,216 @@ +@comment $OpenBSD: PLIST,v 1.1.1.1 2000/09/16 07:36:53 jakob Exp $ +bin/dig +bin/host +bin/nslookup +bin/nsupdate +include/dns/a6.h +include/dns/acl.h +include/dns/aclconf.h +include/dns/adb.h +include/dns/byaddr.h +include/dns/cache.h +include/dns/callbacks.h +include/dns/cert.h +include/dns/compress.h +include/dns/confacl.h +include/dns/confcache.h +include/dns/confcommon.h +include/dns/confctl.h +include/dns/confctx.h +include/dns/confip.h +include/dns/confkeys.h +include/dns/conflog.h +include/dns/conflsn.h +include/dns/confparser.h +include/dns/confresolv.h +include/dns/confrrset.h +include/dns/confview.h +include/dns/confzone.h +include/dns/db.h +include/dns/dbiterator.h +include/dns/dbtable.h +include/dns/dispatch.h +include/dns/dnssec.h +include/dns/enumclass.h +include/dns/enumtype.h +include/dns/events.h +include/dns/fixedname.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/namedconf.h +include/dns/ncache.h +include/dns/nxt.h +include/dns/peer.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/secalg.h +include/dns/secproto.h +include/dns/ssu.h +include/dns/tcpmsg.h +include/dns/time.h +include/dns/tkey.h +include/dns/tkeyconf.h +include/dns/tsig.h +include/dns/ttl.h +include/dns/types.h +include/dns/validator.h +include/dns/view.h +include/dns/xfrin.h +include/dns/zone.h +include/dns/zoneconf.h +include/dns/zt.h +include/dst/dst.h +include/dst/lib.h +include/dst/result.h +include/isc/app.h +include/isc/assertions.h +include/isc/base64.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/error.h +include/isc/event.h +include/isc/eventclass.h +include/isc/file.h +include/isc/formatcheck.h +include/isc/fsaccess.h +include/isc/heap.h +include/isc/int.h +include/isc/interfaceiter.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/mutex.h +include/isc/mutexblock.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/platform.h +include/isc/print.h +include/isc/quota.h +include/isc/random.h +include/isc/ratelimiter.h +include/isc/region.h +include/isc/result.h +include/isc/resultclass.h +include/isc/rwlock.h +include/isc/serial.h +include/isc/sha1.h +include/isc/sockaddr.h +include/isc/socket.h +include/isc/stdio.h +include/isc/stdtime.h +include/isc/string.h +include/isc/symtab.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/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/omapi/compatibility.h +include/omapi/lib.h +include/omapi/omapi.h +include/omapi/private.h +include/omapi/result.h +include/omapi/types.h +lib/libdns.a +lib/libisc.a +lib/liblwres.a +lib/libomapi.a +man/man1/host.1 +man/man5/rndc.conf.5 +man/man8/dnssec-keygen.8 +man/man8/dnssec-makekeyset.8 +man/man8/dnssec-signkey.8 +man/man8/dnssec-signzone.8 +man/man8/lwresd.8 +man/man8/named.8 +man/man8/nsupdate.8 +man/man8/rndc.8 +sbin/bind9-enable +sbin/dnssec-keygen +sbin/dnssec-makekeyset +sbin/dnssec-signkey +sbin/dnssec-signzone +sbin/lwresd +sbin/named +sbin/rndc +share/doc/bind9/arm/Bv9ARM.1.html +share/doc/bind9/arm/Bv9ARM.2.html +share/doc/bind9/arm/Bv9ARM.3.html +share/doc/bind9/arm/Bv9ARM.4.html +share/doc/bind9/arm/Bv9ARM.5.html +share/doc/bind9/arm/Bv9ARM.6.html +share/doc/bind9/arm/Bv9ARM.7.html +share/doc/bind9/arm/Bv9ARM.8.html +share/doc/bind9/arm/Bv9ARM.9.html +share/doc/bind9/arm/Bv9ARM.css +share/doc/bind9/arm/Bv9ARM.html +share/doc/bind9/arm/Bv9ARM.txt +share/doc/bind9/arm/isc.color.gif +share/doc/bind9/misc/dnssec +share/doc/bind9/misc/ipv6 +share/doc/bind9/misc/migration +share/doc/bind9/misc/options +@dirrm share/doc/bind9/misc +@dirrm share/doc/bind9/arm +@dirrm share/doc/bind9 +share/examples/bind9/named.conf +share/examples/bind9/named.root +share/examples/bind9/named.localhost +share/examples/bind9/named.loopback +@dirrm share/examples/bind9 +@dirrm include/omapi +@dirrm include/lwres +@dirrm include/isc +@dirrm include/dst +@dirrm include/dns