void isc_timer_detach(isc_timer_t **timerp) { REQUIRE(timerp != NULL && ISCAPI_TIMER_VALID(*timerp)); (*timerp)->methods->detach(timerp); ENSURE(*timerp == NULL); }
isc_result_t isc_timer_reset(isc_timer_t *timer, isc_timertype_t type, const isc_time_t *expires, const isc_interval_t *interval, isc_boolean_t purge) { REQUIRE(ISCAPI_TIMER_VALID(timer)); return (timer->methods->reset(timer, type, expires, interval, purge)); }
void isc_timer_attach(isc_timer_t *timer, isc_timer_t **timerp) { REQUIRE(ISCAPI_TIMER_VALID(timer)); REQUIRE(timerp != NULL && *timerp == NULL); timer->methods->attach(timer, timerp); ENSURE(*timerp == timer); }
isc_result_t isc_timer_touch(isc_timer_t *timer) { REQUIRE(ISCAPI_TIMER_VALID(timer)); if (isc_bind9) return (isc__timer_touch(timer)); return (timer->methods->touch(timer)); }