zone->updbit = NULL;
zone->rpzs = rpzs;
zone->db_registered = ISC_FALSE;
+ ISC_EVENT_INIT(&zone->updateevent, sizeof(zone->updateevent),
+ 0, NULL, 0, NULL, NULL, NULL, NULL, NULL);
zone->num = rpzs->p.num_zones++;
rpzs->zones[zone->num] = zone;
isc_event_t *event;
dns_db_currentversion(zone->db, &zone->dbversion);
+ INSIST(!ISC_LINK_LINKED(&zone->updateevent, ev_link));
ISC_EVENT_INIT(&zone->updateevent,
sizeof(zone->updateevent), 0, NULL,
DNS_EVENT_RPZUPDATED,
UNUSED(task);
zone = (dns_rpz_zone_t *) event->ev_arg;
+ isc_event_free(&event);
LOCK(&zone->rpzs->maint_lock);
zone->updatepending = ISC_FALSE;
zone->updaterunning = ISC_TRUE;
result = isc_time_now(&zone->lastupdated);
RUNTIME_CHECK(result == ISC_R_SUCCESS);
UNLOCK(&zone->rpzs->maint_lock);
- isc_event_free(&event);
}
static isc_result_t
/*
* We finished a quantum; trigger the next one and return
*/
+ INSIST(!ISC_LINK_LINKED(&rpz->updateevent, ev_link));
ISC_EVENT_INIT(&rpz->updateevent,
sizeof(rpz->updateevent), 0, NULL,
DNS_EVENT_RPZUPDATED,
}
event = &rpz->updateevent;
+ INSIST(!ISC_LINK_LINKED(&rpz->updateevent, ev_link));
ISC_EVENT_INIT(&rpz->updateevent, sizeof(rpz->updateevent),
0, NULL, DNS_EVENT_RPZUPDATED,
update_quantum, rpz, rpz, NULL, NULL);