2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-30 22:15:20 +00:00

Merge branch '1862-insist-in-query-c' into 'main'

Fix assertion failure when server is under load and root zone is not yet loaded.

Closes #1862

See merge request isc-projects/bind9!3572
This commit is contained in:
Ondřej Surý
2020-07-01 10:56:38 +00:00
3 changed files with 15 additions and 0 deletions

View File

@@ -1,3 +1,6 @@
5454. [bug] Address a startup crash happening when server is
under load and root zone is not yet loaded. [GL #1862]
5453. [bug] `named` would crash on shutdown when new `rndc`
connection is received at the same time as
shutting down. [GL #1747]

View File

@@ -65,3 +65,6 @@ Bug Fixes
- ``named`` would crash on shutdown when new ``rndc`` connection is received at
the same time as shutting down. [GL #1747]
- Fix assertion failure when server is under load and root zone is not yet
loaded. [GL #1862]

View File

@@ -4397,6 +4397,15 @@ resume_qmin(isc_task_t *task, isc_event_t *event) {
fctx->now, findoptions, true, true,
&fctx->nameservers, NULL);
/*
* DNS_R_NXDOMAIN here means we have not loaded the root zone mirror
* yet - but DNS_R_NXDOMAIN is not a valid return value when doing
* recursion, we need to patch it.
*/
if (result == DNS_R_NXDOMAIN) {
result = DNS_R_SERVFAIL;
}
if (result != ISC_R_SUCCESS) {
fctx_done(fctx, result, __LINE__);
goto cleanup;