Module Name: src
Committed By: spz
Date: Sun May 29 15:17:10 UTC 2011
Modified Files:
src/distrib/sets/lists/base: ad.mips64eb ad.mips64el md.amd64
md.sparc64 shl.mi
src/external/bsd/bind/dist/bin/named: bind.keys.h query.c server.c
src/external/bsd/bind/dist/lib/dns: ncache.c rbtdb.c resolver.c
validator.c xfrin.c zone.c
src/external/bsd/bind/dist/lib/isc/unix: socket.c
src/external/bsd/bind/lib/libdns: shlib_version
src/external/bsd/bind/lib/libisc: shlib_version
Log Message:
merge 9.8.0-P2:
- fixes CVE-2011-1910: Large RRSIG RRsets and Negative Caching can crash named
- fixes CVE-2011-0414: bind lockup during IXFR
- return a more correct error in case of policy violation
bump version of libdns and libisc
To generate a diff of this commit:
cvs rdiff -u -r1.49 -r1.50 src/distrib/sets/lists/base/ad.mips64eb
cvs rdiff -u -r1.47 -r1.48 src/distrib/sets/lists/base/ad.mips64el
cvs rdiff -u -r1.122 -r1.123 src/distrib/sets/lists/base/md.amd64
cvs rdiff -u -r1.115 -r1.116 src/distrib/sets/lists/base/md.sparc64
cvs rdiff -u -r1.584 -r1.585 src/distrib/sets/lists/base/shl.mi
cvs rdiff -u -r1.2 -r1.3 src/external/bsd/bind/dist/bin/named/bind.keys.h
cvs rdiff -u -r1.3 -r1.4 src/external/bsd/bind/dist/bin/named/query.c
cvs rdiff -u -r1.8 -r1.9 src/external/bsd/bind/dist/bin/named/server.c
cvs rdiff -u -r1.2 -r1.3 src/external/bsd/bind/dist/lib/dns/ncache.c \
src/external/bsd/bind/dist/lib/dns/xfrin.c \
src/external/bsd/bind/dist/lib/dns/zone.c
cvs rdiff -u -r1.7 -r1.8 src/external/bsd/bind/dist/lib/dns/rbtdb.c
cvs rdiff -u -r1.8 -r1.9 src/external/bsd/bind/dist/lib/dns/resolver.c
cvs rdiff -u -r1.3 -r1.4 src/external/bsd/bind/dist/lib/dns/validator.c
cvs rdiff -u -r1.5 -r1.6 src/external/bsd/bind/dist/lib/isc/unix/socket.c
cvs rdiff -u -r1.6 -r1.7 src/external/bsd/bind/lib/libdns/shlib_version
cvs rdiff -u -r1.6 -r1.7 src/external/bsd/bind/lib/libisc/shlib_version
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/distrib/sets/lists/base/ad.mips64eb
diff -u src/distrib/sets/lists/base/ad.mips64eb:1.49 src/distrib/sets/lists/base/ad.mips64eb:1.50
--- src/distrib/sets/lists/base/ad.mips64eb:1.49 Fri May 13 01:56:27 2011
+++ src/distrib/sets/lists/base/ad.mips64eb Sun May 29 15:17:08 2011
@@ -1,4 +1,4 @@
-# $NetBSD: ad.mips64eb,v 1.49 2011/05/13 01:56:27 christos Exp $
+# $NetBSD: ad.mips64eb,v 1.50 2011/05/29 15:17:08 spz Exp $
./libexec/ld.elf_so-64 base-compat-shlib compat,pic
./libexec/ld.elf_so-o32 base-sysutil-bin compat,pic
./usr/lib/64 base-compat-lib
@@ -82,7 +82,7 @@
./usr/lib/64/libdm.so.0 base-compat-shlib compat,pic
./usr/lib/64/libdm.so.0.0 base-compat-shlib compat,pic
./usr/lib/64/libdns.so.5 base-compat-shlib compat,pic
-./usr/lib/64/libdns.so.5.3 base-compat-shlib compat,pic
+./usr/lib/64/libdns.so.5.4 base-compat-shlib compat,pic
./usr/lib/64/libdns_sd.so.0 base-compat-shlib compat,pic,mdns
./usr/lib/64/libdns_sd.so.0.0 base-compat-shlib compat,pic,mdns
./usr/lib/64/libdwarf.so.0 base-compat-shlib compat,pic
@@ -116,7 +116,7 @@
./usr/lib/64/libipsec.so.3 base-compat-shlib compat,pic
./usr/lib/64/libipsec.so.3.0 base-compat-shlib compat,pic
./usr/lib/64/libisc.so.5 base-compat-shlib compat,pic
-./usr/lib/64/libisc.so.5.3 base-compat-shlib compat,pic
+./usr/lib/64/libisc.so.5.4 base-compat-shlib compat,pic
./usr/lib/64/libisccc.so.5 base-compat-shlib compat,pic
./usr/lib/64/libisccc.so.5.3 base-compat-shlib compat,pic
./usr/lib/64/libisccfg.so.5 base-compat-shlib compat,pic
@@ -393,7 +393,7 @@
./usr/lib/o32/libipsec.so.3 base-compat-shlib compat,pic
./usr/lib/o32/libipsec.so.3.0 base-compat-shlib compat,pic
./usr/lib/o32/libisc.so.5 base-compat-shlib compat,pic
-./usr/lib/o32/libisc.so.5.3 base-compat-shlib compat,pic
+./usr/lib/o32/libisc.so.5.4 base-compat-shlib compat,pic
./usr/lib/o32/libisccc.so.5 base-compat-shlib compat,pic
./usr/lib/o32/libisccc.so.5.3 base-compat-shlib compat,pic
./usr/lib/o32/libisccfg.so.5 base-compat-shlib compat,pic
Index: src/distrib/sets/lists/base/ad.mips64el
diff -u src/distrib/sets/lists/base/ad.mips64el:1.47 src/distrib/sets/lists/base/ad.mips64el:1.48
--- src/distrib/sets/lists/base/ad.mips64el:1.47 Fri May 13 01:56:27 2011
+++ src/distrib/sets/lists/base/ad.mips64el Sun May 29 15:17:09 2011
@@ -1,4 +1,4 @@
-# $NetBSD: ad.mips64el,v 1.47 2011/05/13 01:56:27 christos Exp $
+# $NetBSD: ad.mips64el,v 1.48 2011/05/29 15:17:09 spz Exp $
./libexec/ld.elf_so-64 base-compat-shlib compat,pic
./libexec/ld.elf_so-o32 base-sysutil-bin compat,pic
./usr/lib/64 base-compat-lib
@@ -82,7 +82,7 @@
./usr/lib/64/libdm.so.0 base-compat-shlib compat,pic
./usr/lib/64/libdm.so.0.0 base-compat-shlib compat,pic
./usr/lib/64/libdns.so.5 base-compat-shlib compat,pic
-./usr/lib/64/libdns.so.5.3 base-compat-shlib compat,pic
+./usr/lib/64/libdns.so.5.4 base-compat-shlib compat,pic
./usr/lib/64/libdns_sd.so.0 base-compat-shlib compat,pic,mdns
./usr/lib/64/libdns_sd.so.0.0 base-compat-shlib compat,pic,mdns
./usr/lib/64/libdwarf.so.0 base-compat-shlib compat,pic
@@ -116,7 +116,7 @@
./usr/lib/64/libipsec.so.3 base-compat-shlib compat,pic
./usr/lib/64/libipsec.so.3.0 base-compat-shlib compat,pic
./usr/lib/64/libisc.so.5 base-compat-shlib compat,pic
-./usr/lib/64/libisc.so.5.3 base-compat-shlib compat,pic
+./usr/lib/64/libisc.so.5.4 base-compat-shlib compat,pic
./usr/lib/64/libisccc.so.5 base-compat-shlib compat,pic
./usr/lib/64/libisccc.so.5.3 base-compat-shlib compat,pic
./usr/lib/64/libisccfg.so.5 base-compat-shlib compat,pic
@@ -359,7 +359,7 @@
./usr/lib/o32/libdm.so.0 base-compat-shlib compat,pic
./usr/lib/o32/libdm.so.0.0 base-compat-shlib compat,pic
./usr/lib/o32/libdns.so.5 base-compat-shlib compat,pic
-./usr/lib/o32/libdns.so.5.3 base-compat-shlib compat,pic
+./usr/lib/o32/libdns.so.5.4 base-compat-shlib compat,pic
./usr/lib/o32/libdns_sd.so.0 base-compat-shlib compat,pic,mdns
./usr/lib/o32/libdns_sd.so.0.0 base-compat-shlib compat,pic,mdns
./usr/lib/o32/libdwarf.so.0 base-compat-shlib compat,pic
@@ -393,7 +393,7 @@
./usr/lib/o32/libipsec.so.3 base-compat-shlib compat,pic
./usr/lib/o32/libipsec.so.3.0 base-compat-shlib compat,pic
./usr/lib/o32/libisc.so.5 base-compat-shlib compat,pic
-./usr/lib/o32/libisc.so.5.3 base-compat-shlib compat,pic
+./usr/lib/o32/libisc.so.5.4 base-compat-shlib compat,pic
./usr/lib/o32/libisccc.so.5 base-compat-shlib compat,pic
./usr/lib/o32/libisccc.so.5.3 base-compat-shlib compat,pic
./usr/lib/o32/libisccfg.so.5 base-compat-shlib compat,pic
Index: src/distrib/sets/lists/base/md.amd64
diff -u src/distrib/sets/lists/base/md.amd64:1.122 src/distrib/sets/lists/base/md.amd64:1.123
--- src/distrib/sets/lists/base/md.amd64:1.122 Fri May 13 01:56:27 2011
+++ src/distrib/sets/lists/base/md.amd64 Sun May 29 15:17:09 2011
@@ -1,4 +1,4 @@
-# $NetBSD: md.amd64,v 1.122 2011/05/13 01:56:27 christos Exp $
+# $NetBSD: md.amd64,v 1.123 2011/05/29 15:17:09 spz Exp $
./dev/lms0 base-obsolete obsolete
./dev/mms0 base-obsolete obsolete
./libexec/ld.elf_so-i386 base-sys-shlib compat,pic
@@ -85,7 +85,7 @@
./usr/lib/i386/libdm.so.0 base-compat-shlib compat,pic
./usr/lib/i386/libdm.so.0.0 base-compat-shlib compat,pic
./usr/lib/i386/libdns.so.5 base-compat-shlib compat,pic
-./usr/lib/i386/libdns.so.5.3 base-compat-shlib compat,pic
+./usr/lib/i386/libdns.so.5.4 base-compat-shlib compat,pic
./usr/lib/i386/libdns_sd.so.0 base-compat-shlib compat,pic,mdns
./usr/lib/i386/libdns_sd.so.0.0 base-compat-shlib compat,pic,mdns
./usr/lib/i386/libdwarf.so.0 base-compat-shlib compat,pic
@@ -121,7 +121,7 @@
./usr/lib/i386/libipsec.so.3 base-compat-shlib compat,pic
./usr/lib/i386/libipsec.so.3.0 base-compat-shlib compat,pic
./usr/lib/i386/libisc.so.5 base-compat-shlib compat,pic
-./usr/lib/i386/libisc.so.5.3 base-compat-shlib compat,pic
+./usr/lib/i386/libisc.so.5.4 base-compat-shlib compat,pic
./usr/lib/i386/libisccc.so.5 base-compat-shlib compat,pic
./usr/lib/i386/libisccc.so.5.3 base-compat-shlib compat,pic
./usr/lib/i386/libisccfg.so.5 base-compat-shlib compat,pic
Index: src/distrib/sets/lists/base/md.sparc64
diff -u src/distrib/sets/lists/base/md.sparc64:1.115 src/distrib/sets/lists/base/md.sparc64:1.116
--- src/distrib/sets/lists/base/md.sparc64:1.115 Fri May 13 01:56:27 2011
+++ src/distrib/sets/lists/base/md.sparc64 Sun May 29 15:17:09 2011
@@ -1,4 +1,4 @@
-# $NetBSD: md.sparc64,v 1.115 2011/05/13 01:56:27 christos Exp $
+# $NetBSD: md.sparc64,v 1.116 2011/05/29 15:17:09 spz Exp $
./libexec/ld.elf_so-sparc base-sysutil-bin compat,pic
./sbin/edlabel base-sysutil-root obsolete
./usr/bin/fdformat base-util-bin
@@ -83,7 +83,7 @@
./usr/lib/sparc/libdm.so.0 base-compat-shlib compat,pic
./usr/lib/sparc/libdm.so.0.0 base-compat-shlib compat,pic
./usr/lib/sparc/libdns.so.5 base-compat-shlib compat,pic
-./usr/lib/sparc/libdns.so.5.3 base-compat-shlib compat,pic
+./usr/lib/sparc/libdns.so.5.4 base-compat-shlib compat,pic
./usr/lib/sparc/libdns_sd.so.0 base-compat-shlib compat,pic,mdns
./usr/lib/sparc/libdns_sd.so.0.0 base-compat-shlib compat,pic,mdns
./usr/lib/sparc/libdwarf.so.0 base-compat-shlib compat,pic
@@ -117,7 +117,7 @@
./usr/lib/sparc/libipsec.so.3 base-compat-shlib compat,pic
./usr/lib/sparc/libipsec.so.3.0 base-compat-shlib compat,pic
./usr/lib/sparc/libisc.so.5 base-compat-shlib compat,pic
-./usr/lib/sparc/libisc.so.5.3 base-compat-shlib compat,pic
+./usr/lib/sparc/libisc.so.5.4 base-compat-shlib compat,pic
./usr/lib/sparc/libisccc.so.5 base-compat-shlib compat,pic
./usr/lib/sparc/libisccc.so.5.3 base-compat-shlib compat,pic
./usr/lib/sparc/libisccfg.so.5 base-compat-shlib compat,pic
Index: src/distrib/sets/lists/base/shl.mi
diff -u src/distrib/sets/lists/base/shl.mi:1.584 src/distrib/sets/lists/base/shl.mi:1.585
--- src/distrib/sets/lists/base/shl.mi:1.584 Fri May 13 01:56:27 2011
+++ src/distrib/sets/lists/base/shl.mi Sun May 29 15:17:09 2011
@@ -1,4 +1,4 @@
-# $NetBSD: shl.mi,v 1.584 2011/05/13 01:56:27 christos Exp $
+# $NetBSD: shl.mi,v 1.585 2011/05/29 15:17:09 spz Exp $
#
# Note: Don't delete entries from here - mark them as "obsolete" instead,
# unless otherwise stated below.
@@ -198,7 +198,7 @@
./usr/lib/libdm.so.0.0 base-sys-shlib
./usr/lib/libdns.so base-bind-shlib
./usr/lib/libdns.so.5 base-bind-shlib
-./usr/lib/libdns.so.5.3 base-bind-shlib
+./usr/lib/libdns.so.5.4 base-bind-shlib
./usr/lib/libdns_sd.so base-mdns-shlib mdns
./usr/lib/libdns_sd.so.0 base-mdns-shlib mdns
./usr/lib/libdns_sd.so.0.0 base-mdns-shlib mdns
@@ -255,7 +255,7 @@
./usr/lib/libipsec.so.3.0 base-net-shlib
./usr/lib/libisc.so base-bind-shlib
./usr/lib/libisc.so.5 base-bind-shlib
-./usr/lib/libisc.so.5.3 base-bind-shlib
+./usr/lib/libisc.so.5.4 base-bind-shlib
./usr/lib/libisccc.so base-bind-shlib
./usr/lib/libisccc.so.5 base-bind-shlib
./usr/lib/libisccc.so.5.3 base-bind-shlib
Index: src/external/bsd/bind/dist/bin/named/bind.keys.h
diff -u src/external/bsd/bind/dist/bin/named/bind.keys.h:1.2 src/external/bsd/bind/dist/bin/named/bind.keys.h:1.3
--- src/external/bsd/bind/dist/bin/named/bind.keys.h:1.2 Wed Feb 16 03:46:45 2011
+++ src/external/bsd/bind/dist/bin/named/bind.keys.h Sun May 29 15:17:09 2011
@@ -1,8 +1,8 @@
-/* $NetBSD: bind.keys.h,v 1.2 2011/02/16 03:46:45 christos Exp $ */
+/* $NetBSD: bind.keys.h,v 1.3 2011/05/29 15:17:09 spz Exp $ */
/*
- * Generated by bindkeys.pl 1.7 2011/01/04 23:47:13 tbox Exp
- * From bind.keys 1.7 2011/01/03 23:45:07 each Exp
+ * Generated by bindkeys.pl 1.7 2011-01-04 23:47:13 tbox Exp
+ * From bind.keys 1.7 2011-01-03 23:45:07 each Exp
*/
#define TRUSTED_KEYS "\
# The bind.keys file is used to override the built-in DNSSEC trust anchors\n\
Index: src/external/bsd/bind/dist/bin/named/query.c
diff -u src/external/bsd/bind/dist/bin/named/query.c:1.3 src/external/bsd/bind/dist/bin/named/query.c:1.4
--- src/external/bsd/bind/dist/bin/named/query.c:1.3 Fri May 6 15:28:19 2011
+++ src/external/bsd/bind/dist/bin/named/query.c Sun May 29 15:17:09 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: query.c,v 1.3 2011/05/06 15:28:19 taca Exp $ */
+/* $NetBSD: query.c,v 1.4 2011/05/29 15:17:09 spz Exp $ */
/*
* Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
@@ -17,7 +17,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
-/* Id: query.c,v 1.353.8.1 2011-02-03 07:39:02 marka Exp */
+/* Id: query.c,v 1.353.8.2.2.1 2011-04-27 17:06:27 each Exp */
/*! \file */
@@ -4043,8 +4043,8 @@
version = NULL;
result = rpz_getdb(client, rpz_type, qnamef, zonep, dbp, &version);
if (result != ISC_R_SUCCESS) {
- *policyp = DNS_RPZ_POLICY_ERROR;
- return (DNS_R_SERVFAIL);
+ *policyp = DNS_RPZ_POLICY_MISS;
+ return (DNS_R_NXDOMAIN);
}
dns_fixedname_init(&fixed);
Index: src/external/bsd/bind/dist/bin/named/server.c
diff -u src/external/bsd/bind/dist/bin/named/server.c:1.8 src/external/bsd/bind/dist/bin/named/server.c:1.9
--- src/external/bsd/bind/dist/bin/named/server.c:1.8 Wed Feb 16 03:46:46 2011
+++ src/external/bsd/bind/dist/bin/named/server.c Sun May 29 15:17:09 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: server.c,v 1.8 2011/02/16 03:46:46 christos Exp $ */
+/* $NetBSD: server.c,v 1.9 2011/05/29 15:17:09 spz Exp $ */
/*
* Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
@@ -17,7 +17,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
-/* Id: server.c,v 1.599.8.3 2011-02-03 12:17:49 tbox Exp */
+/* Id: server.c,v 1.599.8.4 2011-02-16 19:46:12 each Exp */
/*! \file */
@@ -3478,6 +3478,7 @@
if (pview != NULL && pview->managed_keys != NULL) {
dns_zone_attach(pview->managed_keys, &view->managed_keys);
+ dns_zone_setview(pview->managed_keys, view);
dns_view_detach(&pview);
return (ISC_R_SUCCESS);
}
Index: src/external/bsd/bind/dist/lib/dns/ncache.c
diff -u src/external/bsd/bind/dist/lib/dns/ncache.c:1.2 src/external/bsd/bind/dist/lib/dns/ncache.c:1.3
--- src/external/bsd/bind/dist/lib/dns/ncache.c:1.2 Wed Feb 16 03:47:04 2011
+++ src/external/bsd/bind/dist/lib/dns/ncache.c Sun May 29 15:17:09 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: ncache.c,v 1.2 2011/02/16 03:47:04 christos Exp $ */
+/* $NetBSD: ncache.c,v 1.3 2011/05/29 15:17:09 spz Exp $ */
/*
* Copyright (C) 2004, 2005, 2007, 2008, 2010 Internet Systems Consortium, Inc. ("ISC")
@@ -17,7 +17,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
-/* Id: ncache.c,v 1.50.124.1 2011-02-03 07:39:03 marka Exp */
+/* Id: ncache.c,v 1.50.124.1.2.1 2011-05-27 00:57:31 each Exp */
/*! \file */
@@ -188,7 +188,7 @@
*/
isc_buffer_availableregion(&buffer,
&r);
- if (r.length < 2)
+ if (r.length < 3)
return (ISC_R_NOSPACE);
isc_buffer_putuint16(&buffer,
rdataset->type);
Index: src/external/bsd/bind/dist/lib/dns/xfrin.c
diff -u src/external/bsd/bind/dist/lib/dns/xfrin.c:1.2 src/external/bsd/bind/dist/lib/dns/xfrin.c:1.3
--- src/external/bsd/bind/dist/lib/dns/xfrin.c:1.2 Wed Feb 16 03:47:05 2011
+++ src/external/bsd/bind/dist/lib/dns/xfrin.c Sun May 29 15:17:10 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: xfrin.c,v 1.2 2011/02/16 03:47:05 christos Exp $ */
+/* $NetBSD: xfrin.c,v 1.3 2011/05/29 15:17:10 spz Exp $ */
/*
* Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
@@ -17,7 +17,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
-/* Id: xfrin.c,v 1.166 2008-09-25 04:12:39 marka Exp */
+/* Id: xfrin.c,v 1.166.522.2 2011-02-19 01:21:27 each Exp */
/*! \file */
@@ -85,8 +85,9 @@
XFRST_IXFR_DEL,
XFRST_IXFR_ADDSOA,
XFRST_IXFR_ADD,
+ XFRST_IXFR_END,
XFRST_AXFR,
- XFRST_END
+ XFRST_AXFR_END
} xfrin_state_t;
/*%
@@ -205,6 +206,7 @@
dns_rdata_t *rdata);
static isc_result_t axfr_apply(dns_xfrin_ctx_t *xfr);
static isc_result_t axfr_commit(dns_xfrin_ctx_t *xfr);
+static isc_result_t axfr_finalize(dns_xfrin_ctx_t *xfr);
static isc_result_t ixfr_init(dns_xfrin_ctx_t *xfr);
static isc_result_t ixfr_apply(dns_xfrin_ctx_t *xfr);
@@ -320,6 +322,16 @@
CHECK(axfr_apply(xfr));
CHECK(dns_db_endload(xfr->db, &xfr->axfr.add_private));
+
+ result = ISC_R_SUCCESS;
+ failure:
+ return (result);
+}
+
+static isc_result_t
+axfr_finalize(dns_xfrin_ctx_t *xfr) {
+ isc_result_t result;
+
CHECK(dns_zone_replacedb(xfr->zone, xfr->db, ISC_TRUE));
result = ISC_R_SUCCESS;
@@ -543,7 +555,7 @@
isc_uint32_t soa_serial = dns_soa_getserial(rdata);
if (soa_serial == xfr->end_serial) {
CHECK(ixfr_commit(xfr));
- xfr->state = XFRST_END;
+ xfr->state = XFRST_IXFR_END;
break;
} else if (soa_serial != xfr->ixfr.current_serial) {
xfrin_log(xfr, ISC_LOG_ERROR,
@@ -574,11 +586,12 @@
CHECK(axfr_putdata(xfr, DNS_DIFFOP_ADD, name, ttl, rdata));
if (rdata->type == dns_rdatatype_soa) {
CHECK(axfr_commit(xfr));
- xfr->state = XFRST_END;
+ xfr->state = XFRST_AXFR_END;
break;
}
break;
- case XFRST_END:
+ case XFRST_AXFR_END:
+ case XFRST_IXFR_END:
FAIL(DNS_R_EXTRADATA);
default:
INSIST(0);
@@ -1320,8 +1333,9 @@
} else if (dns_message_gettsigkey(msg) != NULL) {
xfr->sincetsig++;
- if (xfr->sincetsig > 100 ||
- xfr->nmsg == 0 || xfr->state == XFRST_END)
+ if (xfr->sincetsig > 100 || xfr->nmsg == 0 ||
+ xfr->state == XFRST_AXFR_END ||
+ xfr->state == XFRST_IXFR_END)
{
result = DNS_R_EXPECTEDTSIG;
goto failure;
@@ -1347,16 +1361,22 @@
dns_message_destroy(&msg);
- if (xfr->state == XFRST_GOTSOA) {
+ switch (xfr->state) {
+ case XFRST_GOTSOA:
xfr->reqtype = dns_rdatatype_axfr;
xfr->state = XFRST_INITIALSOA;
CHECK(xfrin_send_request(xfr));
- } else if (xfr->state == XFRST_END) {
+ break;
+ case XFRST_AXFR_END:
+ CHECK(axfr_finalize(xfr));
+ /* FALLTHROUGH */
+ case XFRST_IXFR_END:
/*
* Close the journal.
*/
if (xfr->ixfr.journal != NULL)
dns_journal_destroy(&xfr->ixfr.journal);
+
/*
* Inform the caller we succeeded.
*/
@@ -1370,7 +1390,8 @@
*/
xfr->shuttingdown = ISC_TRUE;
maybe_free(xfr);
- } else {
+ break;
+ default:
/*
* Read the next message.
*/
Index: src/external/bsd/bind/dist/lib/dns/zone.c
diff -u src/external/bsd/bind/dist/lib/dns/zone.c:1.2 src/external/bsd/bind/dist/lib/dns/zone.c:1.3
--- src/external/bsd/bind/dist/lib/dns/zone.c:1.2 Wed Feb 16 03:47:05 2011
+++ src/external/bsd/bind/dist/lib/dns/zone.c Sun May 29 15:17:10 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: zone.c,v 1.2 2011/02/16 03:47:05 christos Exp $ */
+/* $NetBSD: zone.c,v 1.3 2011/05/29 15:17:10 spz Exp $ */
/*
* Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
@@ -17,7 +17,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
-/* Id: zone.c,v 1.582.8.2 2011-02-07 00:14:30 marka Exp */
+/* Id: zone.c,v 1.582.8.7 2011-02-18 23:23:08 each Exp */
/*! \file */
@@ -7918,7 +7918,8 @@
dns_zone_markdirty(dns_zone_t *zone) {
LOCK_ZONE(zone);
- set_resigntime(zone); /* XXXMPA make separate call back */
+ if (zone->type == dns_zone_master)
+ set_resigntime(zone); /* XXXMPA make separate call back */
zone_needdump(zone, DNS_DUMP_DELAY);
UNLOCK_ZONE(zone);
}
@@ -13605,7 +13606,8 @@
if (tuple->rdata.type != dns_rdatatype_dnskey)
continue;
- dns_rdata_tostruct(&tuple->rdata, &dnskey, NULL);
+ result = dns_rdata_tostruct(&tuple->rdata, &dnskey, NULL);
+ RUNTIME_CHECK(result == ISC_R_SUCCESS);
if ((dnskey.flags &
(DNS_KEYFLAG_OWNERMASK|DNS_KEYTYPE_NOAUTH))
!= DNS_KEYOWNER_ZONE)
@@ -13651,13 +13653,14 @@
static isc_result_t
sign_apex(dns_zone_t *zone, dns_db_t *db, dns_dbversion_t *ver,
- dns_rdatatype_t type, dns_diff_t *diff)
+ dns_diff_t *diff, dns_diff_t *sig_diff)
{
isc_result_t result;
isc_stdtime_t now, inception, soaexpire;
isc_boolean_t check_ksk, keyset_kskonly;
dst_key_t *zone_keys[MAXZONEKEYS];
unsigned int nkeys = 0, i;
+ dns_difftuple_t *tuple;
result = find_zone_keys(zone, db, ver, zone->mctx, MAXZONEKEYS,
zone_keys, &nkeys);
@@ -13675,22 +13678,52 @@
check_ksk = DNS_ZONE_OPTION(zone, DNS_ZONEOPT_UPDATECHECKKSK);
keyset_kskonly = DNS_ZONE_OPTION(zone, DNS_ZONEOPT_DNSKEYKSKONLY);
- result = del_sigs(zone, db, ver, &zone->origin, type, diff,
- zone_keys, nkeys, now);
+ /*
+ * See if update_sigs will update DNSKEY signature and if not
+ * cause them to sign so that so that newly activated keys
+ * are used.
+ */
+ for (tuple = ISC_LIST_HEAD(diff->tuples);
+ tuple != NULL;
+ tuple = ISC_LIST_NEXT(tuple, link)) {
+ if (tuple->rdata.type == dns_rdatatype_dnskey &&
+ dns_name_equal(&tuple->name, &zone->origin))
+ break;
+ }
+
+ if (tuple == NULL) {
+ result = del_sigs(zone, db, ver, &zone->origin,
+ dns_rdatatype_dnskey, sig_diff,
+ zone_keys, nkeys, now);
+ if (result != ISC_R_SUCCESS) {
+ dns_zone_log(zone, ISC_LOG_ERROR,
+ "sign_apex:del_sigs -> %s\n",
+ dns_result_totext(result));
+ goto failure;
+ }
+ result = add_sigs(db, ver, &zone->origin, dns_rdatatype_dnskey,
+ sig_diff, zone_keys, nkeys, zone->mctx,
+ inception, soaexpire, check_ksk,
+ keyset_kskonly);
+ if (result != ISC_R_SUCCESS) {
+ dns_zone_log(zone, ISC_LOG_ERROR,
+ "sign_apex:add_sigs -> %s\n",
+ dns_result_totext(result));
+ goto failure;
+ }
+ }
+
+ result = update_sigs(diff, db, ver, zone_keys, nkeys, zone,
+ inception, soaexpire, now, check_ksk,
+ keyset_kskonly, sig_diff);
+
if (result != ISC_R_SUCCESS) {
dns_zone_log(zone, ISC_LOG_ERROR,
- "sign_apex:del_sigs -> %s\n",
+ "sign_apex:update_sigs -> %s\n",
dns_result_totext(result));
goto failure;
}
- result = add_sigs(db, ver, &zone->origin, type, diff, zone_keys,
- nkeys, zone->mctx, inception, soaexpire,
- check_ksk, keyset_kskonly);
-
- if (result != ISC_R_SUCCESS)
- dns_zone_log(zone, ISC_LOG_ERROR, "sign_apex:add_sigs -> %s\n",
- dns_result_totext(result));
failure:
for (i = 0; i < nkeys; i++)
dst_key_free(&zone_keys[i]);
@@ -13806,6 +13839,26 @@
return (ISC_FALSE);
}
+static isc_result_t
+add_chains(dns_zone_t *zone, dns_db_t *db, dns_dbversion_t *ver,
+ dns_diff_t *diff)
+{
+ dns_name_t *origin;
+ isc_boolean_t build_nsec3;
+ isc_result_t result;
+
+ origin = dns_db_origin(db);
+ CHECK(dns_private_chains(db, ver, zone->privatetype, NULL,
+ &build_nsec3));
+ if (build_nsec3)
+ CHECK(dns_nsec3_addnsec3sx(db, ver, origin, zone->minimum,
+ ISC_FALSE, zone->privatetype, diff));
+ CHECK(updatesecure(db, ver, origin, zone->minimum, ISC_TRUE, diff));
+
+ failure:
+ return (result);
+}
+
static void
zone_rekey(dns_zone_t *zone) {
isc_result_t result;
@@ -13815,7 +13868,7 @@
dns_rdataset_t soaset, soasigs, keyset, keysigs;
dns_dnsseckeylist_t dnskeys, keys, rmkeys;
dns_dnsseckey_t *key;
- dns_diff_t diff;
+ dns_diff_t diff, sig_diff;
isc_boolean_t commit = ISC_FALSE, newactive = ISC_FALSE;
isc_boolean_t fullsign;
dns_ttl_t ttl = 3600;
@@ -13838,6 +13891,7 @@
dir = dns_zone_getkeydirectory(zone);
mctx = zone->mctx;
dns_diff_init(mctx, &diff);
+ dns_diff_init(mctx, &sig_diff);
CHECK(dns_zone_getdb(zone, &db));
CHECK(dns_db_newversion(db, &ver));
@@ -13906,14 +13960,12 @@
dnskey_sane(zone, db, ver, &diff)) {
CHECK(dns_diff_apply(&diff, db, ver));
CHECK(clean_nsec3param(zone, db, ver, &diff));
- CHECK(sign_apex(zone, db, ver, dns_rdatatype_dnskey,
- &diff));
CHECK(add_signing_records(db, zone->privatetype, ver,
&diff));
CHECK(increment_soa_serial(db, ver, &diff, mctx));
- CHECK(sign_apex(zone, db, ver, dns_rdatatype_soa,
- &diff));
- CHECK(zone_journal(zone, &diff, "zone_rekey"));
+ CHECK(add_chains(zone, db, ver, &diff));
+ CHECK(sign_apex(zone, db, ver, &diff, &sig_diff));
+ CHECK(zone_journal(zone, &sig_diff, "zone_rekey"));
commit = ISC_TRUE;
}
}
@@ -13938,7 +13990,7 @@
* Has a new key become active? If so, is it for
* a new algorithm?
*/
- for (tuple = ISC_LIST_HEAD(diff.tuples);
+ for (tuple = ISC_LIST_HEAD(sig_diff.tuples);
tuple != NULL;
tuple = ISC_LIST_NEXT(tuple, link)) {
dns_rdata_dnskey_t dnskey;
@@ -14017,7 +14069,7 @@
* the full zone, but only with the newly-added
* keys.
*/
- for (tuple = ISC_LIST_HEAD(diff.tuples);
+ for (tuple = ISC_LIST_HEAD(sig_diff.tuples);
tuple != NULL;
tuple = ISC_LIST_NEXT(tuple, link)) {
dns_rdata_dnskey_t dnskey;
@@ -14037,9 +14089,7 @@
keyid = dst_region_computeid(&r, algorithm);
result = zone_signwithkey(zone, algorithm,
- keyid,
- ISC_TF(tuple->op ==
- DNS_DIFFOP_DEL));
+ keyid, ISC_FALSE);
if (result != ISC_R_SUCCESS) {
dns_zone_log(zone, ISC_LOG_ERROR,
"zone_signwithkey failed: %s",
@@ -14058,7 +14108,7 @@
* Cause the zone to add/delete NSEC3 chains for the
* deferred NSEC3PARAM changes.
*/
- for (tuple = ISC_LIST_HEAD(diff.tuples);
+ for (tuple = ISC_LIST_HEAD(sig_diff.tuples);
tuple != NULL;
tuple = ISC_LIST_NEXT(tuple, link)) {
unsigned char buf[DNS_NSEC3PARAM_BUFFERSIZE];
@@ -14072,7 +14122,8 @@
if (!dns_nsec3param_fromprivate(&tuple->rdata, &rdata,
buf, sizeof(buf)))
continue;
- dns_rdata_tostruct(&rdata, &nsec3param, NULL);
+ result = dns_rdata_tostruct(&rdata, &nsec3param, NULL);
+ RUNTIME_CHECK(result == ISC_R_SUCCESS);
if (nsec3param.flags == 0)
continue;
@@ -14131,6 +14182,7 @@
failure:
dns_diff_clear(&diff);
+ dns_diff_clear(&sig_diff);
clear_keylist(&dnskeys, mctx);
clear_keylist(&keys, mctx);
Index: src/external/bsd/bind/dist/lib/dns/rbtdb.c
diff -u src/external/bsd/bind/dist/lib/dns/rbtdb.c:1.7 src/external/bsd/bind/dist/lib/dns/rbtdb.c:1.8
--- src/external/bsd/bind/dist/lib/dns/rbtdb.c:1.7 Wed Feb 16 03:47:04 2011
+++ src/external/bsd/bind/dist/lib/dns/rbtdb.c Sun May 29 15:17:09 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: rbtdb.c,v 1.7 2011/02/16 03:47:04 christos Exp $ */
+/* $NetBSD: rbtdb.c,v 1.8 2011/05/29 15:17:09 spz Exp $ */
/*
* Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
@@ -17,7 +17,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
-/* Id: rbtdb.c,v 1.310 2011-01-13 09:53:04 marka Exp */
+/* Id: rbtdb.c,v 1.310.8.1 2011-02-18 23:23:08 each Exp */
/*! \file */
@@ -394,12 +394,15 @@
typedef struct {
/* Unlocked. */
dns_db_t common;
+ /* Locks the data in this struct */
#if DNS_RBTDB_USERWLOCK
isc_rwlock_t lock;
#else
isc_mutex_t lock;
#endif
+ /* Locks the tree structure (prevents nodes appearing/disappearing) */
isc_rwlock_t tree_lock;
+ /* Locks for individual tree nodes */
unsigned int node_lock_count;
rbtdb_nodelock_t * node_locks;
dns_rbtnode_t * origin_node;
@@ -7266,7 +7269,7 @@
REQUIRE(VALID_RBTDB(rbtdb));
- RBTDB_LOCK(&rbtdb->lock, isc_rwlocktype_read);
+ RWLOCK(&rbtdb->tree_lock, isc_rwlocktype_read);
for (i = 0; i < rbtdb->node_lock_count; i++) {
NODE_LOCK(&rbtdb->node_locks[i].lock, isc_rwlocktype_read);
@@ -7302,7 +7305,7 @@
result = ISC_R_SUCCESS;
unlock:
- RBTDB_UNLOCK(&rbtdb->lock, isc_rwlocktype_read);
+ RWUNLOCK(&rbtdb->tree_lock, isc_rwlocktype_read);
return (result);
}
@@ -7324,7 +7327,7 @@
header = rdataset->private3;
header--;
- RBTDB_LOCK(&rbtdb->lock, isc_rwlocktype_write);
+ RWLOCK(&rbtdb->tree_lock, isc_rwlocktype_write);
NODE_LOCK(&rbtdb->node_locks[node->locknum].lock,
isc_rwlocktype_write);
/*
@@ -7338,7 +7341,7 @@
NODE_UNLOCK(&rbtdb->node_locks[node->locknum].lock,
isc_rwlocktype_write);
- RBTDB_UNLOCK(&rbtdb->lock, isc_rwlocktype_write);
+ RWUNLOCK(&rbtdb->tree_lock, isc_rwlocktype_write);
}
static dns_stats_t *
Index: src/external/bsd/bind/dist/lib/dns/resolver.c
diff -u src/external/bsd/bind/dist/lib/dns/resolver.c:1.8 src/external/bsd/bind/dist/lib/dns/resolver.c:1.9
--- src/external/bsd/bind/dist/lib/dns/resolver.c:1.8 Wed Feb 16 03:47:04 2011
+++ src/external/bsd/bind/dist/lib/dns/resolver.c Sun May 29 15:17:09 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: resolver.c,v 1.8 2011/02/16 03:47:04 christos Exp $ */
+/* $NetBSD: resolver.c,v 1.9 2011/05/29 15:17:09 spz Exp $ */
/*
* Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
@@ -17,7 +17,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
-/* Id: resolver.c,v 1.428.6.3 2011-02-08 22:56:53 marka Exp */
+/* Id: resolver.c,v 1.428.6.5 2011-02-18 23:41:51 mgraff Exp */
/*! \file */
@@ -2366,77 +2366,13 @@
}
/*
- * Return 'bits' bits of random entropy from fctx->rand_buf,
- * refreshing it by calling isc_random_get() whenever the requested
- * number of bits is greater than the number in the buffer.
- */
-static inline isc_uint32_t
-random_bits(fetchctx_t *fctx, isc_uint32_t bits) {
- isc_uint32_t ret = 0;
-
- REQUIRE(VALID_FCTX(fctx));
- REQUIRE(bits <= 32);
- if (bits == 0)
- return (0);
-
- if (bits >= fctx->rand_bits) {
- /* if rand_bits == 0, this is unnecessary but harmless */
- bits -= fctx->rand_bits;
- ret = fctx->rand_buf << bits;
-
- /* refresh random buffer now */
- isc_random_get(&fctx->rand_buf);
- fctx->rand_bits = sizeof(fctx->rand_buf) * CHAR_BIT;
- }
-
- if (bits > 0) {
- isc_uint32_t mask = 0xffffffff;
- if (bits < 32) {
- mask = (1 << bits) - 1;
- }
-
- ret |= fctx->rand_buf & mask;
- fctx->rand_buf >>= bits;
- fctx->rand_bits -= bits;
- }
-
- return (ret);
-}
-
-/*
- * Add some random jitter to a server's RTT value so that the
- * order of queries will be unpredictable.
- *
- * RTT values of servers which have been tried are fuzzed by 128 ms.
- * Servers that haven't been tried yet have their RTT set to a random
- * value between 0 ms and 7 ms; they should get to go first, but in
- * unpredictable order.
- */
-static inline void
-randomize_srtt(fetchctx_t *fctx, dns_adbaddrinfo_t *ai) {
- if (TRIED(ai)) {
- ai->srtt >>= 10; /* convert to milliseconds, near enough */
- ai->srtt |= (ai->srtt & 0x80) | random_bits(fctx, 7);
- ai->srtt <<= 10; /* now back to microseconds */
- } else
- ai->srtt = random_bits(fctx, 3) << 10;
-}
-
-/*
- * Sort addrinfo list by RTT (with random jitter)
+ * Sort addrinfo list by RTT.
*/
static void
-sort_adbfind(fetchctx_t *fctx, dns_adbfind_t *find) {
+sort_adbfind(dns_adbfind_t *find) {
dns_adbaddrinfo_t *best, *curr;
dns_adbaddrinfolist_t sorted;
- /* Add jitter to SRTT values */
- curr = ISC_LIST_HEAD(find->list);
- while (curr != NULL) {
- randomize_srtt(fctx, curr);
- curr = ISC_LIST_NEXT(curr, publink);
- }
-
/* Lame N^2 bubble sort. */
ISC_LIST_INIT(sorted);
while (!ISC_LIST_EMPTY(find->list)) {
@@ -2454,19 +2390,19 @@
}
/*
- * Sort a list of finds by server RTT (with random jitter)
+ * Sort a list of finds by server RTT.
*/
static void
-sort_finds(fetchctx_t *fctx, dns_adbfindlist_t *findlist) {
+sort_finds(dns_adbfindlist_t *findlist) {
dns_adbfind_t *best, *curr;
dns_adbfindlist_t sorted;
dns_adbaddrinfo_t *addrinfo, *bestaddrinfo;
- /* Sort each find's addrinfo list by SRTT (after adding jitter) */
+ /* Sort each find's addrinfo list by SRTT. */
for (curr = ISC_LIST_HEAD(*findlist);
curr != NULL;
curr = ISC_LIST_NEXT(curr, publink))
- sort_adbfind(fctx, curr);
+ sort_adbfind(curr);
/* Lame N^2 bubble sort. */
ISC_LIST_INIT(sorted);
@@ -2851,8 +2787,8 @@
* We've found some addresses. We might still be looking
* for more addresses.
*/
- sort_finds(fctx, &fctx->finds);
- sort_finds(fctx, &fctx->altfinds);
+ sort_finds(&fctx->finds);
+ sort_finds(&fctx->altfinds);
result = ISC_R_SUCCESS;
}
Index: src/external/bsd/bind/dist/lib/dns/validator.c
diff -u src/external/bsd/bind/dist/lib/dns/validator.c:1.3 src/external/bsd/bind/dist/lib/dns/validator.c:1.4
--- src/external/bsd/bind/dist/lib/dns/validator.c:1.3 Wed Feb 16 03:47:05 2011
+++ src/external/bsd/bind/dist/lib/dns/validator.c Sun May 29 15:17:09 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: validator.c,v 1.3 2011/02/16 03:47:05 christos Exp $ */
+/* $NetBSD: validator.c,v 1.4 2011/05/29 15:17:09 spz Exp $ */
/*
* Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
@@ -17,7 +17,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
-/* Id: validator.c,v 1.197 2010-12-23 04:07:58 marka Exp */
+/* Id: validator.c,v 1.197.40.1 2011-05-27 00:57:31 each Exp */
#include <config.h>
@@ -430,7 +430,8 @@
validator_done(val, ISC_R_CANCELED);
} else if (eresult == ISC_R_SUCCESS) {
validator_log(val, ISC_LOG_DEBUG(3),
- "keyset with trust %d", rdataset->trust);
+ "keyset with trust %s",
+ dns_trust_totext(rdataset->trust));
/*
* Only extract the dst key if the keyset is secure.
*/
@@ -507,7 +508,8 @@
validator_done(val, ISC_R_CANCELED);
} else if (eresult == ISC_R_SUCCESS) {
validator_log(val, ISC_LOG_DEBUG(3),
- "dsset with trust %d", rdataset->trust);
+ "dsset with trust %s",
+ dns_trust_totext(rdataset->trust));
val->dsset = &val->frdataset;
result = validatezonekey(val);
if (result != DNS_R_WAIT)
@@ -662,7 +664,8 @@
validator_done(val, ISC_R_CANCELED);
} else if (eresult == ISC_R_SUCCESS) {
validator_log(val, ISC_LOG_DEBUG(3),
- "keyset with trust %d", val->frdataset.trust);
+ "keyset with trust %s",
+ dns_trust_totext(val->frdataset.trust));
/*
* Only extract the dst key if the keyset is secure.
*/
@@ -733,10 +736,10 @@
isc_boolean_t have_dsset;
dns_name_t *name;
validator_log(val, ISC_LOG_DEBUG(3),
- "%s with trust %d",
+ "%s with trust %s",
val->frdataset.type == dns_rdatatype_ds ?
"dsset" : "ds non-existance",
- val->frdataset.trust);
+ dns_trust_totext(val->frdataset.trust));
have_dsset = ISC_TF(val->frdataset.type == dns_rdatatype_ds);
name = dns_fixedname_name(&val->fname);
if ((val->attributes & VALATTR_INSECURITY) != 0 &&
@@ -1387,8 +1390,8 @@
INSIST(type == dns_rdatatype_dlv);
if (val->frdataset.trust != dns_trust_secure) {
validator_log(val, ISC_LOG_DEBUG(3),
- "covering nsec: trust %u",
- val->frdataset.trust);
+ "covering nsec: trust %s",
+ dns_trust_totext(val->frdataset.trust));
goto notfound;
}
result = dns_rdataset_first(&val->frdataset);
@@ -1723,8 +1726,8 @@
* See if we've got the key used in the signature.
*/
validator_log(val, ISC_LOG_DEBUG(3),
- "keyset with trust %d",
- val->frdataset.trust);
+ "keyset with trust %s",
+ dns_trust_totext(val->frdataset.trust));
result = get_dst_key(val, siginfo, val->keyset);
if (result != ISC_R_SUCCESS) {
/*
@@ -2494,8 +2497,11 @@
" insecure DS");
return (DNS_R_MUSTBESECURE);
}
- markanswer(val, "validatezonekey (2)");
- return (ISC_R_SUCCESS);
+ if (val->view->dlv == NULL || DLVTRIED(val)) {
+ markanswer(val, "validatezonekey (2)");
+ return (ISC_R_SUCCESS);
+ }
+ return (startfinddlvsep(val, val->event->name));
}
/*
@@ -3233,7 +3239,8 @@
validator_done(val, ISC_R_CANCELED);
} else if (eresult == ISC_R_SUCCESS) {
validator_log(val, ISC_LOG_DEBUG(3),
- "dlvset with trust %d", val->frdataset.trust);
+ "dlvset with trust %s",
+ dns_trust_totext(val->frdataset.trust));
dns_rdataset_clone(&val->frdataset, &val->dlv);
val->havedlvsep = ISC_TRUE;
if (dlv_algorithm_supported(val))
Index: src/external/bsd/bind/dist/lib/isc/unix/socket.c
diff -u src/external/bsd/bind/dist/lib/isc/unix/socket.c:1.5 src/external/bsd/bind/dist/lib/isc/unix/socket.c:1.6
--- src/external/bsd/bind/dist/lib/isc/unix/socket.c:1.5 Wed Feb 16 03:47:15 2011
+++ src/external/bsd/bind/dist/lib/isc/unix/socket.c Sun May 29 15:17:10 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: socket.c,v 1.5 2011/02/16 03:47:15 christos Exp $ */
+/* $NetBSD: socket.c,v 1.6 2011/05/29 15:17:10 spz Exp $ */
/*
* Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
@@ -17,7 +17,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
-/* Id: socket.c,v 1.333.14.1 2011-02-03 05:50:07 marka Exp */
+/* Id: socket.c,v 1.333.14.2 2011-02-18 04:01:16 marka Exp */
/*! \file */
@@ -688,6 +688,8 @@
isc_sockstatscounter_fdwatchrecvfail
};
+#if defined(USE_KQUEUE) || defined(USE_EPOLL) || defined(USE_DEVPOLL) || \
+ defined(USE_WATCHER_THREAD)
static void
manager_log(isc__socketmgr_t *sockmgr,
isc_logcategory_t *category, isc_logmodule_t *module, int level,
@@ -710,6 +712,7 @@
isc_log_write(isc_lctx, category, module, level,
"sockmgr %p: %s", sockmgr, msgbuf);
}
+#endif
static void
socket_log(isc__socket_t *sock, isc_sockaddr_t *address,
Index: src/external/bsd/bind/lib/libdns/shlib_version
diff -u src/external/bsd/bind/lib/libdns/shlib_version:1.6 src/external/bsd/bind/lib/libdns/shlib_version:1.7
--- src/external/bsd/bind/lib/libdns/shlib_version:1.6 Wed Feb 16 03:47:21 2011
+++ src/external/bsd/bind/lib/libdns/shlib_version Sun May 29 15:17:10 2011
@@ -1,5 +1,5 @@
-# $NetBSD: shlib_version,v 1.6 2011/02/16 03:47:21 christos Exp $
+# $NetBSD: shlib_version,v 1.7 2011/05/29 15:17:10 spz Exp $
# Remember to update distrib/sets/lists/base/shl.* when changing
#
major=5
-minor=3
+minor=4
Index: src/external/bsd/bind/lib/libisc/shlib_version
diff -u src/external/bsd/bind/lib/libisc/shlib_version:1.6 src/external/bsd/bind/lib/libisc/shlib_version:1.7
--- src/external/bsd/bind/lib/libisc/shlib_version:1.6 Wed Feb 16 03:47:21 2011
+++ src/external/bsd/bind/lib/libisc/shlib_version Sun May 29 15:17:10 2011
@@ -1,5 +1,5 @@
-# $NetBSD: shlib_version,v 1.6 2011/02/16 03:47:21 christos Exp $
+# $NetBSD: shlib_version,v 1.7 2011/05/29 15:17:10 spz Exp $
# Remember to update distrib/sets/lists/base/shl.* when changing
#
major=5
-minor=3
+minor=4