2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-31 06:25:31 +00:00

3281. [bug] SOA refresh queries could be treated as cancelled

despite succeeding over the loopback interface.
                        [RT #27782]
This commit is contained in:
Mark Andrews
2012-02-07 19:50:20 +00:00
parent bc3f86f9af
commit 936036e823
2 changed files with 8 additions and 6 deletions

View File

@@ -1,3 +1,7 @@
3281. [bug] SOA refresh queries could be treated as cancelled
despite succeeding over the loopback interface.
[RT #27782]
3280. [bug] Potential double free of a rdataset on out of memory
with DNS64. [RT #27762]

View File

@@ -15,7 +15,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: request.c,v 1.89 2011/03/12 04:59:48 tbox Exp $ */
/* $Id: request.c,v 1.90 2012/02/07 19:50:20 marka Exp $ */
/*! \file */
@@ -1133,9 +1133,7 @@ req_render(dns_message_t *message, isc_buffer_t **bufferp,
*/
static void
send_if_done(dns_request_t *request, isc_result_t result) {
if (!DNS_REQUEST_CONNECTING(request) &&
!DNS_REQUEST_SENDING(request) &&
!request->canceling)
if (request->event != NULL && !request->canceling)
req_sendevent(request, result);
}
@@ -1319,8 +1317,8 @@ req_senddone(isc_task_t *task, isc_event_t *event) {
else
send_if_done(request, ISC_R_CANCELED);
} else if (sevent->result != ISC_R_SUCCESS) {
req_cancel(request);
send_if_done(request, ISC_R_CANCELED);
req_cancel(request);
send_if_done(request, ISC_R_CANCELED);
}
UNLOCK(&request->requestmgr->locks[request->hash]);