2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-31 22:45:39 +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 3280. [bug] Potential double free of a rdataset on out of memory
with DNS64. [RT #27762] with DNS64. [RT #27762]

View File

@@ -15,7 +15,7 @@
* PERFORMANCE OF THIS SOFTWARE. * 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 */ /*! \file */
@@ -1133,9 +1133,7 @@ req_render(dns_message_t *message, isc_buffer_t **bufferp,
*/ */
static void static void
send_if_done(dns_request_t *request, isc_result_t result) { send_if_done(dns_request_t *request, isc_result_t result) {
if (!DNS_REQUEST_CONNECTING(request) && if (request->event != NULL && !request->canceling)
!DNS_REQUEST_SENDING(request) &&
!request->canceling)
req_sendevent(request, result); req_sendevent(request, result);
} }
@@ -1319,8 +1317,8 @@ req_senddone(isc_task_t *task, isc_event_t *event) {
else else
send_if_done(request, ISC_R_CANCELED); send_if_done(request, ISC_R_CANCELED);
} else if (sevent->result != ISC_R_SUCCESS) { } else if (sevent->result != ISC_R_SUCCESS) {
req_cancel(request); req_cancel(request);
send_if_done(request, ISC_R_CANCELED); send_if_done(request, ISC_R_CANCELED);
} }
UNLOCK(&request->requestmgr->locks[request->hash]); UNLOCK(&request->requestmgr->locks[request->hash]);