diff options
author | taca <taca@pkgsrc.org> | 2011-03-04 03:52:14 +0000 |
---|---|---|
committer | taca <taca@pkgsrc.org> | 2011-03-04 03:52:14 +0000 |
commit | 3a280d6cc7ec2581128938b18734971bac02e42b (patch) | |
tree | e3cc4bfaf4feb392a560636fc48ec624a7f37848 /net | |
parent | 2c500c89ddfb878db5b35708c2b283c288fbfe99 (diff) | |
download | pkgsrc-3a280d6cc7ec2581128938b18734971bac02e42b.tar.gz |
Importing BIND 9.8.0 as net/bind98.
Full release note:
http://ftp.isc.org/isc/bind9/9.8.0/RELEASE-NOTES-BIND-9.8.html
New Features
9.8.0
* The ADB hash table stores informations about which authoritative
servers to query about particular domains. Previous versions of
BIND had the hash table size as a fixed value. On a busy recursive
server, this could lead to hash table collisions in the ADB cache,
resulting in degraded response time to queries. Bind 9.8 now has a
dynamically scalable ADB hash table, which helps a busy server to
avoid hash table collisions and maintain a consistent query
response time. [RT #21186]
* BIND now supports a new zone type, static-stub. This allows the
administrator of a recursive nameserver to force queries for a
particular zone to go to IP addresses of the administrator's
choosing, on a per zone basis, both globally or per view. I.e. if
the administrator wishes to have their recursive server query
192.0.2.1 and 192.0.2.2 for zone example.com rather than the
servers listed by the .com gTLDs, they would configure example.com
as a static-stub zone in their recursive server. [RT #21474]
* BIND now supports Response Policy Zones, a way of expressing
"reputation" in real time via specially constructed DNS zones. See
the draft specification here:
http://ftp.isc.org/isc/dnsrpz/isc-tn-2010-1.txt [RT #21726]
* BIND 9.8.0 now has DNS64 support. named synthesizes AAAA records
from specified A records if no AAAA record exists. IP6.ARPA CNAME
records will be synthesized from corresponding IN-ADDR.ARPA. [RT
#21991/22769]
* Dynamically Loadable Zones (DLZ) now support dynamic updates.
Contributed by Andrew Tridgell of the Samba Project. [RT #22629]
* Added a "dlopen" DLZ driver, allowing the creation of external DLZ
drivers that can be loaded as shared objects at runtime rather than
having to be linked with named at compile time. Currently this is
switched on via a compile-time option, "configure
--with-dlz-dlopen". Note: the syntax for configuring DLZ zones is
likely to be refined in future releases. Contributed by Andrew
Tridgell of the Samba Project. [RT #22629]
* named now retains GSS-TSIG keys across restarts. This is for
compatibility with Microsoft DHCP servers doing dynamic DNS updates
for clients, which don't know to renegotiate the GSS-TSIG session
key when named restarts. [RT #22639]
* There is a new update-policy match type "external". This allows
named to decide whether to allow a dynamic update by checking with
an external daemon. Contributed by Andrew Tridgell of the Samba
Project. [RT #22758]
* There have been a number of bug fixes and ease of use enhancements
for configuring BIND to support GSS-TSIG [RT #22629/22795]. These
include:
+ Added a "tkey-gssapi-keytab" option. If set, dynamic updates
will be allowed for any key matching a Kerberos principal in
the specified keytab file. "tkey-gssapi-credential" is no
longer required and is expected to be deprecated. Contributed
by Andrew Tridgell of the Samba Project. [RT #22629]
+ It is no longer necessary to have a valid /etc/krb5.conf file.
Using the syntax DNS/hostname@REALM in nsupdate is sufficient
for to correctly set the default realm. [RT #22795]
+ Documentation updated new gssapi configuration options (new
option tkey-gssapi-keytab and changes in
tkey-gssapi-credential and tkey-domain behavior). [RT 22795]
+ DLZ correctly deals with NULL zone in a query. [RT 22795]
+ TSIG correctly deals with a NULL tkey->creator. [RT 22795]
* A new test has been added to check the apex NSEC3 records after
DNSKEY records have been added via dynamic update. [RT #23229]
* RTT banding (randomized server selection on queries) was introduced
in BIND releases in 2008, due to the Kaminsky cache poisoning bug.
Instead of always picking the authoritative server with the lowest
RTT to the caching resolver, all the authoritative servers within
an RTT range were randomly used by the recursive server.
While this did add an extra bit of randomness that an attacker had
to overcome to poison a recursive server's cache, it also impacts
the resolver's speed in answering end customer queries, since it's
no longer the fastest auth server that gets asked. This means that
performance optimizations, such using topologically close
authoritative servers, are rendered ineffective.
ISC has evaluated the amount of security added versus the
performance hit to end users and has decided that RTT banding is
causing more harm than good. Therefore, with this release, BIND is
going back to the server selection used prior to adding RTT
banding. [RT #23310]
Feature Changes
9.8.0
* There is a new option in dig, +onesoa, that allows the final SOA
record in an AXFR response to be suppressed. [RT #20929
* There is additional information displayed in the recursing log
(qtype, qclass, qid and whether we are following the original
name). [RT #22043]
* Added option 'resolver-query-timeout' in named.conf (max query
timeout in seconds) to set a different value than the default (30
seconds). A value of 0 means 'use the compiled in default';
anything longer than 30 will be silently set to 30. [RT #22852]
* For Mac OS X, you can now have the test interfaces used during
"make test" stay beyond reboot. See bin/tests/system/README for
details.
Diffstat (limited to 'net')
-rw-r--r-- | net/bind98/DESCR | 13 | ||||
-rw-r--r-- | net/bind98/MESSAGE | 10 | ||||
-rw-r--r-- | net/bind98/Makefile | 83 | ||||
-rw-r--r-- | net/bind98/PLIST | 519 | ||||
-rw-r--r-- | net/bind98/buildlink3.mk | 12 | ||||
-rw-r--r-- | net/bind98/builtin.mk | 92 | ||||
-rw-r--r-- | net/bind98/distinfo | 10 | ||||
-rw-r--r-- | net/bind98/files/lwresd.sh | 25 | ||||
-rw-r--r-- | net/bind98/files/named9.sh | 66 | ||||
-rw-r--r-- | net/bind98/options.mk | 89 | ||||
-rw-r--r-- | net/bind98/patches/patch-config.threads.in | 13 | ||||
-rw-r--r-- | net/bind98/patches/patch-configure | 34 | ||||
-rw-r--r-- | net/bind98/patches/patch-lib_dns_rbt.c | 15 | ||||
-rw-r--r-- | net/bind98/patches/patch-lib_lwres_getaddrinfo.c | 39 | ||||
-rw-r--r-- | net/bind98/patches/patch-lib_lwres_getnameinfo.c | 32 |
15 files changed, 1052 insertions, 0 deletions
diff --git a/net/bind98/DESCR b/net/bind98/DESCR new file mode 100644 index 00000000000..33cb13d89a2 --- /dev/null +++ b/net/bind98/DESCR @@ -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 diff --git a/net/bind98/MESSAGE b/net/bind98/MESSAGE new file mode 100644 index 00000000000..ffc0a9ac839 --- /dev/null +++ b/net/bind98/MESSAGE @@ -0,0 +1,10 @@ +=========================================================================== +$NetBSD: MESSAGE,v 1.1.1.1 2011/03/04 03:52:15 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}". + +=========================================================================== diff --git a/net/bind98/Makefile b/net/bind98/Makefile new file mode 100644 index 00000000000..0b1bca9d491 --- /dev/null +++ b/net/bind98/Makefile @@ -0,0 +1,83 @@ +# $NetBSD: Makefile,v 1.1.1.1 2011/03/04 03:52:14 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 of the Berkeley Internet Name Daemon, implementation of DNS + +CONFLICTS+= bind<9.8.0 + +PKG_DESTDIR_SUPPORT= user-destdir + +MAKE_JOBS_SAFE= no + +BIND_VERSION= 9.8.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 + +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 share/doc/bind9/draft \ + share/doc/bind9/rfc + +post-install: + ${INSTALL_DATA} ${WRKSRC}/README ${DOCDIR} + ${INSTALL_DATA} ${WRKSRC}/doc/arm/*.html ${DOCDIR}/arm + ${INSTALL_DATA} ${WRKSRC}/doc/arm/*.html ${DOCDIR}/arm + ${INSTALL_DATA} ${WRKSRC}/doc/draft/draft-*.txt ${DOCDIR}/draft + ${INSTALL_DATA} ${WRKSRC}/doc/rfc/rfc*.txt ${DOCDIR}/rfc + +.include "../../security/openssl/buildlink3.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/net/bind98/PLIST b/net/bind98/PLIST new file mode 100644 index 00000000000..1f966fce3fe --- /dev/null +++ b/net/bind98/PLIST @@ -0,0 +1,519 @@ +@comment $NetBSD: PLIST,v 1.1.1.1 2011/03/04 03:52:15 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/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/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/README +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/doc/bind9/draft/draft-ietf-6man-text-addr-representation-07.txt +share/doc/bind9/draft/draft-ietf-behave-address-format-07.txt +share/doc/bind9/draft/draft-ietf-behave-dns64-11.txt +share/doc/bind9/draft/draft-ietf-dnsext-axfr-clarify-14.txt +share/doc/bind9/draft/draft-ietf-dnsext-dns-tcp-requirements-03.txt +share/doc/bind9/draft/draft-ietf-dnsext-dnssec-bis-updates-12.txt +share/doc/bind9/draft/draft-ietf-dnsext-dnssec-registry-fixes-06.txt +share/doc/bind9/draft/draft-ietf-dnsext-ecc-key-07.txt +share/doc/bind9/draft/draft-ietf-dnsext-interop3597-02.txt +share/doc/bind9/draft/draft-ietf-dnsext-rfc2671bis-edns0-02.txt +share/doc/bind9/draft/draft-ietf-dnsext-rfc2672bis-dname-19.txt +share/doc/bind9/draft/draft-ietf-dnsext-rfc3597-bis-02.txt +share/doc/bind9/draft/draft-ietf-dnsext-tsig-md5-deprecated-03.txt +share/doc/bind9/draft/draft-ietf-dnsop-bad-dns-res-05.txt +share/doc/bind9/draft/draft-ietf-dnsop-default-local-zones-10.txt +share/doc/bind9/draft/draft-ietf-dnsop-dnssec-key-timing-00.txt +share/doc/bind9/draft/draft-ietf-dnsop-dnssec-trust-history-01.txt +share/doc/bind9/draft/draft-ietf-dnsop-inaddr-required-07.txt +share/doc/bind9/draft/draft-ietf-dnsop-name-server-management-reqs-02.txt +share/doc/bind9/draft/draft-ietf-dnsop-respsize-06.txt +share/doc/bind9/draft/draft-kato-dnsop-local-zones-00.txt +share/doc/bind9/draft/draft-kerr-ixfr-only-01.txt +share/doc/bind9/draft/draft-mekking-dnsop-auto-cpsync-00.txt +share/doc/bind9/draft/draft-yao-dnsext-bname-04.txt +share/doc/bind9/rfc/rfc1032.txt +share/doc/bind9/rfc/rfc1033.txt +share/doc/bind9/rfc/rfc1034.txt +share/doc/bind9/rfc/rfc1035.txt +share/doc/bind9/rfc/rfc1101.txt +share/doc/bind9/rfc/rfc1122.txt +share/doc/bind9/rfc/rfc1123.txt +share/doc/bind9/rfc/rfc1183.txt +share/doc/bind9/rfc/rfc1348.txt +share/doc/bind9/rfc/rfc1535.txt +share/doc/bind9/rfc/rfc1536.txt +share/doc/bind9/rfc/rfc1537.txt +share/doc/bind9/rfc/rfc1591.txt +share/doc/bind9/rfc/rfc1611.txt +share/doc/bind9/rfc/rfc1612.txt +share/doc/bind9/rfc/rfc1706.txt +share/doc/bind9/rfc/rfc1712.txt +share/doc/bind9/rfc/rfc1750.txt +share/doc/bind9/rfc/rfc1876.txt +share/doc/bind9/rfc/rfc1886.txt +share/doc/bind9/rfc/rfc1912.txt +share/doc/bind9/rfc/rfc1982.txt +share/doc/bind9/rfc/rfc1995.txt +share/doc/bind9/rfc/rfc1996.txt +share/doc/bind9/rfc/rfc2052.txt +share/doc/bind9/rfc/rfc2104.txt +share/doc/bind9/rfc/rfc2119.txt +share/doc/bind9/rfc/rfc2133.txt +share/doc/bind9/rfc/rfc2136.txt +share/doc/bind9/rfc/rfc2137.txt +share/doc/bind9/rfc/rfc2163.txt +share/doc/bind9/rfc/rfc2168.txt +share/doc/bind9/rfc/rfc2181.txt +share/doc/bind9/rfc/rfc2230.txt +share/doc/bind9/rfc/rfc2308.txt +share/doc/bind9/rfc/rfc2317.txt +share/doc/bind9/rfc/rfc2373.txt +share/doc/bind9/rfc/rfc2374.txt +share/doc/bind9/rfc/rfc2375.txt +share/doc/bind9/rfc/rfc2418.txt +share/doc/bind9/rfc/rfc2535.txt +share/doc/bind9/rfc/rfc2536.txt +share/doc/bind9/rfc/rfc2537.txt +share/doc/bind9/rfc/rfc2538.txt +share/doc/bind9/rfc/rfc2539.txt +share/doc/bind9/rfc/rfc2540.txt +share/doc/bind9/rfc/rfc2541.txt +share/doc/bind9/rfc/rfc2553.txt +share/doc/bind9/rfc/rfc2671.txt +share/doc/bind9/rfc/rfc2672.txt +share/doc/bind9/rfc/rfc2673.txt +share/doc/bind9/rfc/rfc2782.txt +share/doc/bind9/rfc/rfc2825.txt +share/doc/bind9/rfc/rfc2826.txt +share/doc/bind9/rfc/rfc2845.txt +share/doc/bind9/rfc/rfc2874.txt +share/doc/bind9/rfc/rfc2915.txt +share/doc/bind9/rfc/rfc2929.txt +share/doc/bind9/rfc/rfc2930.txt +share/doc/bind9/rfc/rfc2931.txt +share/doc/bind9/rfc/rfc3007.txt +share/doc/bind9/rfc/rfc3008.txt +share/doc/bind9/rfc/rfc3071.txt +share/doc/bind9/rfc/rfc3090.txt +share/doc/bind9/rfc/rfc3110.txt +share/doc/bind9/rfc/rfc3123.txt +share/doc/bind9/rfc/rfc3152.txt +share/doc/bind9/rfc/rfc3197.txt +share/doc/bind9/rfc/rfc3225.txt +share/doc/bind9/rfc/rfc3226.txt +share/doc/bind9/rfc/rfc3258.txt +share/doc/bind9/rfc/rfc3363.txt +share/doc/bind9/rfc/rfc3364.txt +share/doc/bind9/rfc/rfc3425.txt +share/doc/bind9/rfc/rfc3445.txt +share/doc/bind9/rfc/rfc3467.txt +share/doc/bind9/rfc/rfc3490.txt +share/doc/bind9/rfc/rfc3491.txt +share/doc/bind9/rfc/rfc3492.txt +share/doc/bind9/rfc/rfc3493.txt +share/doc/bind9/rfc/rfc3513.txt +share/doc/bind9/rfc/rfc3596.txt +share/doc/bind9/rfc/rfc3597.txt +share/doc/bind9/rfc/rfc3645.txt +share/doc/bind9/rfc/rfc3655.txt +share/doc/bind9/rfc/rfc3658.txt +share/doc/bind9/rfc/rfc3755.txt +share/doc/bind9/rfc/rfc3757.txt +share/doc/bind9/rfc/rfc3833.txt +share/doc/bind9/rfc/rfc3845.txt +share/doc/bind9/rfc/rfc3901.txt +share/doc/bind9/rfc/rfc4025.txt +share/doc/bind9/rfc/rfc4033.txt +share/doc/bind9/rfc/rfc4034.txt +share/doc/bind9/rfc/rfc4035.txt +share/doc/bind9/rfc/rfc4074.txt +share/doc/bind9/rfc/rfc4159.txt +share/doc/bind9/rfc/rfc4193.txt +share/doc/bind9/rfc/rfc4255.txt +share/doc/bind9/rfc/rfc4294.txt +share/doc/bind9/rfc/rfc4339.txt +share/doc/bind9/rfc/rfc4343.txt +share/doc/bind9/rfc/rfc4367.txt +share/doc/bind9/rfc/rfc4398.txt +share/doc/bind9/rfc/rfc4408.txt +share/doc/bind9/rfc/rfc4431.txt +share/doc/bind9/rfc/rfc4470.txt +share/doc/bind9/rfc/rfc4471.txt +share/doc/bind9/rfc/rfc4472.txt +share/doc/bind9/rfc/rfc4509.txt +share/doc/bind9/rfc/rfc4634.txt +share/doc/bind9/rfc/rfc4635.txt +share/doc/bind9/rfc/rfc4641.txt +share/doc/bind9/rfc/rfc4648.txt +share/doc/bind9/rfc/rfc4697.txt +share/doc/bind9/rfc/rfc4701.txt +share/doc/bind9/rfc/rfc4892.txt +share/doc/bind9/rfc/rfc4955.txt +share/doc/bind9/rfc/rfc4956.txt +share/doc/bind9/rfc/rfc5001.txt +share/doc/bind9/rfc/rfc5011.txt +share/doc/bind9/rfc/rfc5155.txt +share/doc/bind9/rfc/rfc5205.txt +share/doc/bind9/rfc/rfc5452.txt +share/doc/bind9/rfc/rfc5507.txt +share/doc/bind9/rfc/rfc5625.txt +share/doc/bind9/rfc/rfc5702.txt +share/doc/bind9/rfc/rfc5933.txt +share/doc/bind9/rfc/rfc952.txt +share/examples/rc.d/lwresd +share/examples/rc.d/named9 diff --git a/net/bind98/buildlink3.mk b/net/bind98/buildlink3.mk new file mode 100644 index 00000000000..b4a222663f9 --- /dev/null +++ b/net/bind98/buildlink3.mk @@ -0,0 +1,12 @@ +# $NetBSD: buildlink3.mk,v 1.1.1.1 2011/03/04 03:52:15 taca Exp $ + +BUILDLINK_TREE+= bind + +.if !defined(BIND_BUILDLINK3_MK) +BIND_BUILDLINK3_MK:= + +BUILDLINK_API_DEPENDS.bind+= bind>=9.8.0 +BUILDLINK_PKGSRCDIR.bind?= ../../net/bind98 +.endif # BIND_BUILDLINK3_MK + +BUILDLINK_TREE+= -bind diff --git a/net/bind98/builtin.mk b/net/bind98/builtin.mk new file mode 100644 index 00000000000..62b8d89c268 --- /dev/null +++ b/net/bind98/builtin.mk @@ -0,0 +1,92 @@ +# $NetBSD: builtin.mk,v 1.1.1.1 2011/03/04 03:52:15 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 diff --git a/net/bind98/distinfo b/net/bind98/distinfo new file mode 100644 index 00000000000..7012190b429 --- /dev/null +++ b/net/bind98/distinfo @@ -0,0 +1,10 @@ +$NetBSD: distinfo,v 1.1.1.1 2011/03/04 03:52:14 taca Exp $ + +SHA1 (bind-9.8.0.tar.gz) = 33019694ef3119d9daa1e8ff5117a6688e188528 +RMD160 (bind-9.8.0.tar.gz) = 648ed29a16a0bb3202e177ea3762301ed00f1cde +Size (bind-9.8.0.tar.gz) = 7760161 bytes +SHA1 (patch-config.threads.in) = 3d8ee03230fdb6aca545a67759ba7aacda52bb61 +SHA1 (patch-configure) = edf5a32b5c05aea110316f877264c22a2c4344ba +SHA1 (patch-lib_dns_rbt.c) = 29fb5c24ff3558f1621e93ea16419e32dbc695b7 +SHA1 (patch-lib_lwres_getaddrinfo.c) = 9585a26a376d32f80ac8266eb7967c00b433f14d +SHA1 (patch-lib_lwres_getnameinfo.c) = c26dcff4637b7beb16b66c32b304d0f187390eed diff --git a/net/bind98/files/lwresd.sh b/net/bind98/files/lwresd.sh new file mode 100644 index 00000000000..185943ec500 --- /dev/null +++ b/net/bind98/files/lwresd.sh @@ -0,0 +1,25 @@ +#!/bin/sh +# +# $NetBSD: lwresd.sh,v 1.1.1.1 2011/03/04 03:52:15 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" diff --git a/net/bind98/files/named9.sh b/net/bind98/files/named9.sh new file mode 100644 index 00000000000..23b98012d3d --- /dev/null +++ b/net/bind98/files/named9.sh @@ -0,0 +1,66 @@ +#!@RCD_SCRIPTS_SHELL@ +# +# $NetBSD: named9.sh,v 1.1.1.1 2011/03/04 03:52:15 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" diff --git a/net/bind98/options.mk b/net/bind98/options.mk new file mode 100644 index 00000000000..d811c1e8066 --- /dev/null +++ b/net/bind98/options.mk @@ -0,0 +1,89 @@ +# $NetBSD: options.mk,v 1.1.1.1 2011/03/04 03:52:15 taca Exp $ + +PKG_OPTIONS_VAR= PKG_OPTIONS.bind98 +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 bind98 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 diff --git a/net/bind98/patches/patch-config.threads.in b/net/bind98/patches/patch-config.threads.in new file mode 100644 index 00000000000..789b7445e39 --- /dev/null +++ b/net/bind98/patches/patch-config.threads.in @@ -0,0 +1,13 @@ +$NetBSD: patch-config.threads.in,v 1.1.1.1 2011/03/04 03:52:15 taca Exp $ + +--- config.threads.in.orig 2010-12-21 04:20:23.000000000 +0000 ++++ config.threads.in +@@ -44,6 +44,8 @@ case $host in + use_threads=false ;; + *-freebsd*) + use_threads=false ;; ++*-dragonfly*) ++ use_threads=false ;; + *-bsdi[234]*) + # Thread signals do not work reliably on some versions of BSD/OS. + use_threads=false ;; diff --git a/net/bind98/patches/patch-configure b/net/bind98/patches/patch-configure new file mode 100644 index 00000000000..8b13fd62fd4 --- /dev/null +++ b/net/bind98/patches/patch-configure @@ -0,0 +1,34 @@ +$NetBSD: patch-configure,v 1.1.1.1 2011/03/04 03:52:15 taca Exp $ + +--- configure.orig 2011-02-03 05:52:35.000000000 +0000 ++++ configure +@@ -21402,6 +21402,8 @@ case $host in + use_threads=false ;; + *-freebsd*) + use_threads=false ;; ++*-dragonfly*) ++ use_threads=false ;; + *-bsdi234*) + # Thread signals do not work reliably on some versions of BSD/OS. + use_threads=false ;; +@@ -22718,9 +22720,9 @@ case $use_libtool in + O=lo + A=la + LIBTOOL_MKDEP_SED='s;\.o;\.lo;' +- LIBTOOL_MODE_COMPILE='--mode=compile' ++ LIBTOOL_MODE_COMPILE='--mode=compile --tag=CC' + LIBTOOL_MODE_INSTALL='--mode=install' +- LIBTOOL_MODE_LINK='--mode=link' ++ LIBTOOL_MODE_LINK='--mode=link --tag=CC' + case "$host" in + *) LIBTOOL_ALLOW_UNDEFINED= ;; + esac +@@ -26132,7 +26134,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 + + diff --git a/net/bind98/patches/patch-lib_dns_rbt.c b/net/bind98/patches/patch-lib_dns_rbt.c new file mode 100644 index 00000000000..956730561cc --- /dev/null +++ b/net/bind98/patches/patch-lib_dns_rbt.c @@ -0,0 +1,15 @@ +$NetBSD: patch-lib_dns_rbt.c,v 1.1.1.1 2011/03/04 03:52:15 taca Exp $ + +--- lib/dns/rbt.c.orig 2009-10-27 04:46:58.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; diff --git a/net/bind98/patches/patch-lib_lwres_getaddrinfo.c b/net/bind98/patches/patch-lib_lwres_getaddrinfo.c new file mode 100644 index 00000000000..1ef4fb54569 --- /dev/null +++ b/net/bind98/patches/patch-lib_lwres_getaddrinfo.c @@ -0,0 +1,39 @@ +$NetBSD: patch-lib_lwres_getaddrinfo.c,v 1.1.1.1 2011/03/04 03:52:15 taca Exp $ + +--- 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 { diff --git a/net/bind98/patches/patch-lib_lwres_getnameinfo.c b/net/bind98/patches/patch-lib_lwres_getnameinfo.c new file mode 100644 index 00000000000..96b19630abf --- /dev/null +++ b/net/bind98/patches/patch-lib_lwres_getnameinfo.c @@ -0,0 +1,32 @@ +$NetBSD: patch-lib_lwres_getnameinfo.c,v 1.1.1.1 2011/03/04 03:52:15 taca Exp $ + +--- lib/lwres/getnameinfo.c.orig 2007-06-19 23:47:22.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 +@@ -271,13 +275,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) { |