mirror of
https://github.com/isc-projects/bind9.git
synced 2026-06-03 22:08:25 -04:00
Merge branch '804-large-nsec3-responses-cause-failure-in-adding-records-to-ncache-and-eventually-formerr-instead-of-nxdomain-2' into 'master'
Resolve "Large NSEC3 responses cause failure in adding records to ncache and, eventually, FORMERR (instead of NXDOMAIN)" Closes #804 See merge request isc-projects/bind9!1298
This commit is contained in:
commit
8e6af477dd
3 changed files with 8 additions and 2 deletions
3
CHANGES
3
CHANGES
|
|
@ -1,3 +1,6 @@
|
|||
5124. [bug] Named could incorrectly return FORMERR rather than
|
||||
SERVFAIL. [GL #804]
|
||||
|
||||
5123. [bug] dig could hang indefinitely after encountering an error
|
||||
before creating a TCP socket. [GL #692]
|
||||
|
||||
|
|
|
|||
|
|
@ -407,7 +407,6 @@ dns_result_torcode(isc_result_t result) {
|
|||
rcode = dns_rcode_noerror;
|
||||
break;
|
||||
case ISC_R_BADBASE64:
|
||||
case ISC_R_NOSPACE:
|
||||
case ISC_R_RANGE:
|
||||
case ISC_R_UNEXPECTEDEND:
|
||||
case DNS_R_BADAAAA:
|
||||
|
|
|
|||
|
|
@ -2445,14 +2445,18 @@ ns__client_request(isc_task_t *task, isc_event_t *event) {
|
|||
* Parsing the request failed. Send a response
|
||||
* (typically FORMERR or SERVFAIL).
|
||||
*/
|
||||
if (result == DNS_R_OPTERR)
|
||||
if (result == DNS_R_OPTERR) {
|
||||
(void)ns_client_addopt(client, client->message,
|
||||
&client->opt);
|
||||
}
|
||||
|
||||
ns_client_log(client, NS_LOGCATEGORY_CLIENT,
|
||||
NS_LOGMODULE_CLIENT, ISC_LOG_DEBUG(1),
|
||||
"message parsing failed: %s",
|
||||
isc_result_totext(result));
|
||||
if (result == ISC_R_NOSPACE) {
|
||||
result = DNS_R_FORMERR;
|
||||
}
|
||||
ns_client_error(client, result);
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue