mirror of
https://github.com/isc-projects/bind9.git
synced 2026-06-04 20:52:04 -04:00
427. [bug] Avoid going into an infinite loop when the validator
gets a negative response to a key query where the
records are signed by the missing key.
This commit is contained in:
parent
b42a7e9d80
commit
32b2cdf212
2 changed files with 21 additions and 1 deletions
4
CHANGES
4
CHANGES
|
|
@ -1,3 +1,7 @@
|
|||
427. [bug] Avoid going into an infinite loop when the validator
|
||||
gets a negative response to a key query where the
|
||||
records are signed by the missing key.
|
||||
|
||||
426. [bug] Attempting to generate an oversized RSA key could
|
||||
cause dnssec-keygen to dump core.
|
||||
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: validator.c,v 1.76 2000/08/26 01:36:58 bwelling Exp $ */
|
||||
/* $Id: validator.c,v 1.77 2000/09/07 19:46:51 bwelling Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
|
|
@ -1103,6 +1103,22 @@ nxtvalidate(dns_validator_t *val, isc_boolean_t resume) {
|
|||
if (sigrdataset == NULL)
|
||||
continue;
|
||||
val->seensig = ISC_TRUE;
|
||||
if (val->event->type == dns_rdatatype_key &&
|
||||
dns_name_equal(name, val->event->name))
|
||||
{
|
||||
dns_rdata_t nxt;
|
||||
|
||||
if (rdataset->type != dns_rdatatype_nxt)
|
||||
continue;
|
||||
|
||||
result = dns_rdataset_first(rdataset);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
dns_rdata_init(&nxt);
|
||||
dns_rdataset_current(rdataset, &nxt);
|
||||
if (dns_nxt_typepresent(&nxt,
|
||||
dns_rdatatype_soa))
|
||||
continue;
|
||||
}
|
||||
val->authvalidator = NULL;
|
||||
val->currentset = rdataset;
|
||||
result = dns_validator_create(val->view, name,
|
||||
|
|
|
|||
Loading…
Reference in a new issue