mirror of
https://github.com/isc-projects/bind9.git
synced 2026-06-11 14:50:00 -04:00
3299. [bug] Make SDB handle errors from database drivers better.
[RT #28534]
This commit is contained in:
parent
af7ddf2901
commit
081fda43c1
3 changed files with 16 additions and 1 deletions
3
CHANGES
3
CHANGES
|
|
@ -1,3 +1,6 @@
|
|||
3299. [bug] Make SDB handle errors from database drivers better.
|
||||
[RT #28534]
|
||||
|
||||
3298. [bug] Named could dereference a NULL pointer in
|
||||
zmgr_start_xfrin_ifquota if the zone was being removed.
|
||||
[RT #28419]
|
||||
|
|
|
|||
|
|
@ -3379,6 +3379,11 @@ query_addwildcardproof(ns_client_t *client, dns_db_t *db,
|
|||
dns_name_copy(name, cname, NULL);
|
||||
while (result == DNS_R_NXDOMAIN) {
|
||||
labels = dns_name_countlabels(cname) - 1;
|
||||
/*
|
||||
* Sanity check.
|
||||
*/
|
||||
if (labels == 0U)
|
||||
goto cleanup;
|
||||
dns_name_split(cname, labels, NULL, cname);
|
||||
result = dns_db_findext(db, cname, version,
|
||||
dns_rdatatype_nsec,
|
||||
|
|
|
|||
|
|
@ -845,10 +845,17 @@ findext(dns_db_t *db, dns_name_t *name, dns_dbversion_t *version,
|
|||
dns_name_getlabelsequence(name, nlabels - i, i, xname);
|
||||
result = findnodeext(db, xname, ISC_FALSE, methods,
|
||||
clientinfo, &node);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
if (result == ISC_R_NOTFOUND) {
|
||||
/*
|
||||
* No data at zone apex?
|
||||
*/
|
||||
if (i == olabels)
|
||||
return (DNS_R_BADDB);
|
||||
result = DNS_R_NXDOMAIN;
|
||||
continue;
|
||||
}
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return (result);
|
||||
|
||||
/*
|
||||
* Look for a DNAME at the current label, unless this is
|
||||
|
|
|
|||
Loading…
Reference in a new issue