From: Mark Andrews Date: Wed, 21 Apr 2010 05:45:47 +0000 (+0000) Subject: 2877. [bug] The validator failed to skip obviously mismatching X-Git-Tag: v9.4-ESV-R3~51^2~127 X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=fd95cc0da9563aa85ac67462433b6a2b6ac0db9f;p=thirdparty%2Fbind9.git 2877. [bug] The validator failed to skip obviously mismatching RRSIGs. [RT #21138] --- diff --git a/CHANGES b/CHANGES index a9f5ef9e7f8..925f52f6bf8 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +2877. [bug] The validator failed to skip obviously mismatching + RRSIGs. [RT #21138] + 2876. [bug] Named could return SERVFAIL for negative responses from unsigned zones. [RT #21131] diff --git a/lib/dns/validator.c b/lib/dns/validator.c index 094bb8ae122..f183d0b50fc 100644 --- a/lib/dns/validator.c +++ b/lib/dns/validator.c @@ -15,7 +15,7 @@ * PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: validator.c,v 1.189 2010/04/21 04:16:49 marka Exp $ */ +/* $Id: validator.c,v 1.190 2010/04/21 05:45:47 marka Exp $ */ #include @@ -2119,7 +2119,7 @@ dlv_validatezonekey(dns_validator_t *val) { &sigrdata); result = dns_rdata_tostruct(&sigrdata, &sig, NULL); RUNTIME_CHECK(result == ISC_R_SUCCESS); - if (dlv.key_tag != sig.keyid && + if (dlv.key_tag != sig.keyid || dlv.algorithm != sig.algorithm) continue; dstkey = NULL;