isc_result_t result;
isc_result_t eresult;
isc_result_t saved_result;
+ dns_fetch_t *fetch;
UNUSED(task);
INSIST(event->ev_type == DNS_EVENT_FETCHDONE);
validator_log(val, ISC_LOG_DEBUG(3), "in fetch_callback_validator");
LOCK(&val->lock);
- if (val->fetch != NULL)
- dns_resolver_destroyfetch(&val->fetch);
+ fetch = val->fetch;
+ val->fetch = NULL;
if (CANCELED(val)) {
validator_done(val, ISC_R_CANCELED);
} else if (eresult == ISC_R_SUCCESS) {
}
want_destroy = exit_check(val);
UNLOCK(&val->lock);
+ if (fetch != NULL)
+ dns_resolver_destroyfetch(&fetch);
if (want_destroy)
destroy(val);
}
isc_boolean_t want_destroy;
isc_result_t result;
isc_result_t eresult;
+ dns_fetch_t *fetch;
UNUSED(task);
INSIST(event->ev_type == DNS_EVENT_FETCHDONE);
validator_log(val, ISC_LOG_DEBUG(3), "in dsfetched");
LOCK(&val->lock);
- if (val->fetch != NULL)
- dns_resolver_destroyfetch(&val->fetch);
+ fetch = val->fetch;
+ val->fetch = NULL;
if (CANCELED(val)) {
validator_done(val, ISC_R_CANCELED);
} else if (eresult == ISC_R_SUCCESS) {
}
want_destroy = exit_check(val);
UNLOCK(&val->lock);
+ if (fetch != NULL)
+ dns_resolver_destroyfetch(&fetch);
if (want_destroy)
destroy(val);
}
isc_boolean_t want_destroy;
isc_result_t result;
isc_result_t eresult;
+ dns_fetch_t *fetch;
UNUSED(task);
INSIST(event->ev_type == DNS_EVENT_FETCHDONE);
validator_log(val, ISC_LOG_DEBUG(3), "in dsfetched2: %s",
dns_result_totext(eresult));
LOCK(&val->lock);
- if (val->fetch != NULL)
- dns_resolver_destroyfetch(&val->fetch);
+ fetch = val->fetch;
+ val->fetch = NULL;
if (CANCELED(val)) {
validator_done(val, ISC_R_CANCELED);
} else if (eresult == DNS_R_CNAME ||
isc_event_free(&event);
want_destroy = exit_check(val);
UNLOCK(&val->lock);
+ if (fetch != NULL)
+ dns_resolver_destroyfetch(&fetch);
if (want_destroy)
destroy(val);
}
isc_boolean_t want_destroy;
isc_result_t eresult;
isc_result_t result;
+ dns_fetch_t *fetch;
UNUSED(task);
INSIST(event->ev_type == DNS_EVENT_FETCHDONE);
dns_result_totext(eresult));
LOCK(&val->lock);
- if (val->fetch != NULL)
- dns_resolver_destroyfetch(&val->fetch);
+ fetch = val->fetch;
+ val->fetch = NULL;
if (eresult == ISC_R_SUCCESS) {
dns_name_format(dns_fixedname_name(&val->dlvsep), namebuf,
sizeof(namebuf));
}
want_destroy = exit_check(val);
UNLOCK(&val->lock);
+ if (fetch != NULL)
+ dns_resolver_destroyfetch(&fetch);
if (want_destroy)
destroy(val);
}