summaryrefslogtreecommitdiffstats
path: root/contrib/bind9/lib/dns/masterdump.c
diff options
context:
space:
mode:
authordougb <dougb@FreeBSD.org>2011-05-28 00:21:28 +0000
committerdougb <dougb@FreeBSD.org>2011-05-28 00:21:28 +0000
commitced7835c06b507528a27a1ef54de7f2533a2200c (patch)
treeb74697c394b9c5dace073b5174bc5cb33161ac8b /contrib/bind9/lib/dns/masterdump.c
parentf187cb5ae2a428062327dc2d4300a55564e91ed0 (diff)
downloadFreeBSD-src-ced7835c06b507528a27a1ef54de7f2533a2200c.zip
FreeBSD-src-ced7835c06b507528a27a1ef54de7f2533a2200c.tar.gz
Upgrade to 9.6-ESV-R4-P1, which address the following issues:
1. Very large RRSIG RRsets included in a negative cache can trigger an assertion failure that will crash named (BIND 9 DNS) due to an off-by-one error in a buffer size check. This bug affects all resolving name servers, whether DNSSEC validation is enabled or not, on all BIND versions prior to today. There is a possibility of malicious exploitation of this bug by remote users. 2. Named could fail to validate zones listed in a DLV that validated insecure without using DLV and had DS records in the parent zone. Add a patch provided by ru@ and confirmed by ISC to fix a crash at shutdown time when a SIG(0) key is being used.
Diffstat (limited to 'contrib/bind9/lib/dns/masterdump.c')
-rw-r--r--contrib/bind9/lib/dns/masterdump.c27
1 files changed, 2 insertions, 25 deletions
diff --git a/contrib/bind9/lib/dns/masterdump.c b/contrib/bind9/lib/dns/masterdump.c
index 314112c..34c984b 100644
--- a/contrib/bind9/lib/dns/masterdump.c
+++ b/contrib/bind9/lib/dns/masterdump.c
@@ -15,7 +15,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
-/* $Id: masterdump.c,v 1.94.50.3 2009/11/18 00:15:37 marka Exp $ */
+/* $Id: masterdump.c,v 1.94.50.3.18.1 2011-05-27 00:19:19 each Exp $ */
/*! \file */
@@ -773,26 +773,6 @@ dump_order_compare(const void *a, const void *b) {
#define MAXSORT 64
-static const char *trustnames[] = {
- "none",
- "pending-additional",
- "pending-answer",
- "additional",
- "glue",
- "answer",
- "authauthority",
- "authanswer",
- "secure",
- "local" /* aka ultimate */
-};
-
-const char *
-dns_trust_totext(dns_trust_t trust) {
- if (trust >= sizeof(trustnames)/sizeof(*trustnames))
- return ("bad");
- return (trustnames[trust]);
-}
-
static isc_result_t
dump_rdatasets_text(isc_mem_t *mctx, dns_name_t *name,
dns_rdatasetiter_t *rdsiter, dns_totext_ctx_t *ctx,
@@ -832,10 +812,7 @@ dump_rdatasets_text(isc_mem_t *mctx, dns_name_t *name,
for (i = 0; i < n; i++) {
dns_rdataset_t *rds = sorted[i];
if (ctx->style.flags & DNS_STYLEFLAG_TRUST) {
- unsigned int trust = rds->trust;
- INSIST(trust < (sizeof(trustnames) /
- sizeof(trustnames[0])));
- fprintf(f, "; %s\n", trustnames[trust]);
+ fprintf(f, "; %s\n", dns_trust_totext(rds->trust));
}
if (rds->type == 0 &&
(ctx->style.flags & DNS_STYLEFLAG_NCACHE) == 0) {
OpenPOWER on IntegriCloud