mirror of
https://github.com/isc-projects/bind9.git
synced 2026-06-14 23:00:01 -04:00
Do not convert ISC_R_NOSPACE to DNS_R_SERVFAIL too early
The parsing loop needs to process ISC_R_NOSPACE to properly size the buffer. If result is still ISC_R_NOSPACE at the end of the parsing loop set result to DNS_R_SERVFAIL.
This commit is contained in:
parent
bf0fce265a
commit
08f1cba096
1 changed files with 1 additions and 1 deletions
|
|
@ -1852,7 +1852,6 @@ dns_sdlz_putrr(dns_sdlzlookup_t *lookup, const char *type, dns_ttl_t ttl,
|
|||
mctx, rdatabuf, &lookup->callbacks);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
isc_buffer_free(&rdatabuf);
|
||||
result = DNS_R_SERVFAIL;
|
||||
}
|
||||
if (size >= 65535) {
|
||||
break;
|
||||
|
|
@ -1864,6 +1863,7 @@ dns_sdlz_putrr(dns_sdlzlookup_t *lookup, const char *type, dns_ttl_t ttl,
|
|||
} while (result == ISC_R_NOSPACE);
|
||||
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
result = DNS_R_SERVFAIL;
|
||||
goto failure;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue