]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Asynchronous zone load events have no way of getting canceled
authorMichał Kępień <michal@isc.org>
Thu, 15 Feb 2018 19:31:53 +0000 (20:31 +0100)
committerMichał Kępień <michal@isc.org>
Fri, 16 Feb 2018 07:59:46 +0000 (08:59 +0100)
Code handling cancellation of asynchronous zone load events was likely
copied over from other functions when asynchronous zone loading was
first implemented in commit 8a2ab2b9203.  However, unlike those other
functions, asynchronous zone loading events currently have no way of
getting canceled once they get posted, which means the aforementioned
code is effectively dead.  Remove it to prevent confusion.

lib/dns/zone.c

index ff12ca42feef7ff6be31e5722e1a4104764d6b68..92386d32de75236e28e190f102059048747a5ca3 100644 (file)
@@ -2078,20 +2078,15 @@ static void
 zone_asyncload(isc_task_t *task, isc_event_t *event) {
        dns_asyncload_t *asl = event->ev_arg;
        dns_zone_t *zone = asl->zone;
-       isc_result_t result = ISC_R_SUCCESS;
+       isc_result_t result;
        isc_boolean_t load_pending;
 
        UNUSED(task);
 
        REQUIRE(DNS_ZONE_VALID(zone));
 
-       if ((event->ev_attributes & ISC_EVENTATTR_CANCELED) != 0)
-               result = ISC_R_CANCELED;
        isc_event_free(&event);
 
-       if (result == ISC_R_CANCELED)
-               goto cleanup;
-
        /* Make sure load is still pending */
        LOCK_ZONE(zone);
        load_pending = ISC_TF(DNS_ZONE_FLAG(zone, DNS_ZONEFLG_LOADPENDING));