Lines Matching full:event
23 * ARE DISCLAIMED. IN NO EVENT SHALL PADL SOFTWARE OR CONTRIBUTORS BE LIABLE
48 kcm_event *event) in kcm_enqueue_event() argument
52 if (event->action == KCM_EVENT_NONE) { in kcm_enqueue_event()
57 ret = kcm_enqueue_event_internal(context, event); in kcm_enqueue_event()
73 log_event(kcm_event *event, char *msg) in log_event() argument
77 print_times(event->fire_time, fire_time); in log_event()
78 print_times(event->expire_time, expire_time); in log_event()
80 kcm_log(7, "%s event %08x: fire_time %s fire_count %d expire_time %s " in log_event()
82 msg, event, fire_time, event->fire_count, expire_time, in log_event()
83 event->backoff_time, action_strings[event->action], in log_event()
84 event->ccache->name); in log_event()
89 kcm_event *event) in kcm_enqueue_event_internal() argument
93 if (event->action == KCM_EVENT_NONE) in kcm_enqueue_event_internal()
105 (*e)->fire_time = event->fire_time; in kcm_enqueue_event_internal()
107 (*e)->expire_time = event->expire_time; in kcm_enqueue_event_internal()
108 (*e)->backoff_time = event->backoff_time; in kcm_enqueue_event_internal()
110 (*e)->action = event->action; in kcm_enqueue_event_internal()
112 kcm_retain_ccache(context, event->ccache); in kcm_enqueue_event_internal()
113 (*e)->ccache = event->ccache; in kcm_enqueue_event_internal()
137 kcm_event *event) in kcm_enqueue_event_relative() argument
142 e = *event; in kcm_enqueue_event_relative()
203 kcm_event *event, in kcm_ccache_make_default_event() argument
207 kcm_ccache ccache = event->ccache; in kcm_ccache_make_default_event()
209 event->fire_time = 0; in kcm_ccache_make_default_event()
210 event->expire_time = 0; in kcm_ccache_make_default_event()
211 event->backoff_time = KCM_EVENT_DEFAULT_BACKOFF_TIME; in kcm_ccache_make_default_event()
220 event->fire_time = time(NULL); /* right away */ in kcm_ccache_make_default_event()
221 event->action = KCM_EVENT_ACQUIRE_CREDS; in kcm_ccache_make_default_event()
224 event->action = KCM_EVENT_RENEW_CREDS; in kcm_ccache_make_default_event()
228 event->action = KCM_EVENT_ACQUIRE_CREDS; in kcm_ccache_make_default_event()
230 event->action = KCM_EVENT_NONE; in kcm_ccache_make_default_event()
234 event->fire_time = newcred->times.endtime - KCM_EVENT_QUEUE_INTERVAL; in kcm_ccache_make_default_event()
236 event->action = KCM_EVENT_NONE; in kcm_ccache_make_default_event()
247 kcm_event event; in kcm_ccache_enqueue_default() local
250 memset(&event, 0, sizeof(event)); in kcm_ccache_enqueue_default()
251 event.ccache = ccache; in kcm_ccache_enqueue_default()
253 ret = kcm_ccache_make_default_event(context, &event, newcred); in kcm_ccache_enqueue_default()
257 ret = kcm_enqueue_event_internal(context, &event); in kcm_ccache_enqueue_default()
266 kcm_event *event) in kcm_remove_event() argument
272 log_event(event, "removing"); in kcm_remove_event()
276 if (event == *e) { in kcm_remove_event()
277 *e = event->next; in kcm_remove_event()
288 ret = kcm_remove_event_internal(context, &event); in kcm_remove_event()
323 kcm_event *event; in kcm_fire_event() local
328 event = *e; in kcm_fire_event()
330 switch (event->action) { in kcm_fire_event()
332 ret = kcm_ccache_acquire(context, event->ccache, &credp); in kcm_fire_event()
336 ret = kcm_ccache_refresh(context, event->ccache, &credp); in kcm_fire_event()
338 ret = kcm_ccache_acquire(context, event->ccache, &credp); in kcm_fire_event()
343 ret = kcm_ccache_destroy(context, event->ccache->name); in kcm_fire_event()
346 ret = kcm_ccache_destroy_if_empty(context, event->ccache); in kcm_fire_event()
353 event->fire_count++; in kcm_fire_event()
356 /* Reschedule failed event for another time */ in kcm_fire_event()
357 event->fire_time += event->backoff_time; in kcm_fire_event()
358 if (event->backoff_time < KCM_EVENT_MAX_BACKOFF_TIME) in kcm_fire_event()
359 event->backoff_time *= 2; in kcm_fire_event()
362 if (event->expire_time && in kcm_fire_event()
363 event->fire_time > event->expire_time) in kcm_fire_event()
369 if (krb5_unparse_name(context, event->ccache->client, in kcm_fire_event()
374 (event->action == KCM_EVENT_ACQUIRE_CREDS) ? in kcm_fire_event()
376 event->ccache->name, in kcm_fire_event()
382 /* Succeeded, but possibly replaced with another event */ in kcm_fire_event()
383 ret = kcm_ccache_make_default_event(context, event, credp); in kcm_fire_event()
384 if (ret || event->action == KCM_EVENT_NONE) in kcm_fire_event()
387 log_event(event, "requeuing"); in kcm_fire_event()
404 /* Only run event queue every N seconds */ in kcm_run_events()
418 kcm_log(1, "Could not fire event for cache %s: %s", in kcm_run_events()
424 kcm_log(1, "Could not expire event for cache %s: %s", in kcm_run_events()