From: Mark Andrews Date: Fri, 12 Mar 2010 01:48:35 +0000 (+0000) Subject: 2864. [bug] Direct SIG/RRSIG queries were not handled correctly. X-Git-Tag: v9.4-ESV-R2~26^2~11 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fa2cb8d61d8699709b9fc14ed4f47bb63507b2a5;p=thirdparty%2Fbind9.git 2864. [bug] Direct SIG/RRSIG queries were not handled correctly. [RT #21050] --- diff --git a/CHANGES b/CHANGES index 02c30926576..0f8b4691d71 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +2864. [bug] Direct SIG/RRSIG queries were not handled correctly. + [RT #21050] + 2863. [port] linux: disable IPv6 PMTUD and use network minimum MTU. [RT #21056] diff --git a/bin/named/query.c b/bin/named/query.c index 23fd981e44a..a3126a71fdf 100644 --- a/bin/named/query.c +++ b/bin/named/query.c @@ -15,7 +15,7 @@ * PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: query.c,v 1.336 2009/12/30 08:02:22 jinmei Exp $ */ +/* $Id: query.c,v 1.337 2010/03/12 01:48:35 marka Exp $ */ /*! \file */ @@ -4754,11 +4754,12 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype) if (fname != NULL) dns_message_puttempname(client->message, &fname); - if (n == 0 && is_zone) { + if (n == 0) { /* * We didn't match any rdatasets. */ - if (qtype == dns_rdatatype_rrsig && + if ((qtype == dns_rdatatype_rrsig || + qtype == dns_rdatatype_sig) && result == ISC_R_NOMORE) { /* * XXXRTH If this is a secure zone and we