The code in zone_startload() disables RPZ and CATZ for a zone if
dns_master_loadfile() returns anything other than ISC_R_SUCCESS,
which makes sense, but it's an error because zone_startload() can
also return DNS_R_SEENINCLUDE upon success when the zone had an
$INCLUDE statement.
}
cleanup:
- if (result != ISC_R_SUCCESS) {
+ if (result != ISC_R_SUCCESS && result != DNS_R_SEENINCLUDE) {
dns_zone_rpz_disable_db(zone, load->db);
dns_zone_catz_disable_db(zone, load->db);
}
tresult = dns_db_endload(db, &load->callbacks);
- if (result == ISC_R_SUCCESS) {
+ if (result == ISC_R_SUCCESS || result == DNS_R_SEENINCLUDE) {
result = tresult;
}