mirror of
https://github.com/isc-projects/bind9.git
synced 2026-03-17 16:18:06 -04:00
2172. [bug] query_addsoa() was being called with a non zone db.
[RT #16834]
This commit is contained in:
parent
f6421a43ca
commit
e034e05c14
2 changed files with 20 additions and 2 deletions
3
CHANGES
3
CHANGES
|
|
@ -1,3 +1,6 @@
|
|||
2172. [bug] query_addsoa() was being called with a non zone db.
|
||||
[RT #16834]
|
||||
|
||||
2171. [bug] Handle breaks in DNSSEC trust chains where the parent
|
||||
servers are not DS aware (DS queries to the parent
|
||||
return a referral to the child).
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: query.c,v 1.198.2.13.4.44 2006/12/07 04:38:19 marka Exp $ */
|
||||
/* $Id: query.c,v 1.198.2.13.4.45 2007/04/30 01:36:21 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
|
|
@ -2798,7 +2798,7 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
|||
else
|
||||
QUERY_ERROR(DNS_R_SERVFAIL);
|
||||
} else {
|
||||
/*
|
||||
*
|
||||
* This is the best answer.
|
||||
*/
|
||||
client->query.attributes |=
|
||||
|
|
@ -3212,6 +3212,21 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
|||
* an error unless we were searching for
|
||||
* glue. Ugh.
|
||||
*/
|
||||
if (!is_zone) {
|
||||
authoritative = ISC_FALSE;
|
||||
dns_rdatasetiter_destroy(&rdsiter);
|
||||
if (RECURSIONOK(client)) {
|
||||
result = query_recurse(client,
|
||||
qtype,
|
||||
NULL,
|
||||
NULL);
|
||||
if (result == ISC_R_SUCCESS)
|
||||
client->query.attributes |=
|
||||
NS_QUERYATTR_RECURSING;
|
||||
else
|
||||
QUERY_ERROR(DNS_R_SERVFAIL); }
|
||||
goto addauth;
|
||||
}
|
||||
/*
|
||||
* We were searching for SIG records in
|
||||
* a nonsecure zone. Send a "no error,
|
||||
|
|
|
|||
Loading…
Reference in a new issue