im 376 lib/tevent/tevent.c struct tevent_immediate *im; im 378 lib/tevent/tevent.c im = talloc(mem_ctx, struct tevent_immediate); im 379 lib/tevent/tevent.c if (im == NULL) return NULL; im 381 lib/tevent/tevent.c im->prev = NULL; im 382 lib/tevent/tevent.c im->next = NULL; im 383 lib/tevent/tevent.c im->event_ctx = NULL; im 384 lib/tevent/tevent.c im->create_location = location; im 385 lib/tevent/tevent.c im->handler = NULL; im 386 lib/tevent/tevent.c im->private_data = NULL; im 387 lib/tevent/tevent.c im->handler_name = NULL; im 388 lib/tevent/tevent.c im->schedule_location = NULL; im 389 lib/tevent/tevent.c im->cancel_fn = NULL; im 390 lib/tevent/tevent.c im->additional_data = NULL; im 392 lib/tevent/tevent.c return im; im 399 lib/tevent/tevent.c void _tevent_schedule_immediate(struct tevent_immediate *im, im 406 lib/tevent/tevent.c ev->ops->schedule_immediate(im, ev, handler, private_data, im 57 lib/tevent/tevent.h struct tevent_immediate *im, im 99 lib/tevent/tevent.h void _tevent_schedule_immediate(struct tevent_immediate *im, im 105 lib/tevent/tevent.h #define tevent_schedule_immediate(im, ctx, handler, private_data) \ im 106 lib/tevent/tevent.h _tevent_schedule_immediate(im, ctx, handler, private_data, \ im 403 lib/tevent/tevent.h void (*schedule_immediate)(struct tevent_immediate *im, im 31 lib/tevent/tevent_immediate.c static void tevent_common_immediate_cancel(struct tevent_immediate *im) im 33 lib/tevent/tevent_immediate.c if (!im->event_ctx) { im 37 lib/tevent/tevent_immediate.c tevent_debug(im->event_ctx, TEVENT_DEBUG_TRACE, im 39 lib/tevent/tevent_immediate.c im, im->handler_name); im 42 lib/tevent/tevent_immediate.c if (im->cancel_fn) { im 43 lib/tevent/tevent_immediate.c im->cancel_fn(im); im 46 lib/tevent/tevent_immediate.c DLIST_REMOVE(im->event_ctx->immediate_events, im); im 47 lib/tevent/tevent_immediate.c im->event_ctx = NULL; im 48 lib/tevent/tevent_immediate.c im->handler = NULL; im 49 lib/tevent/tevent_immediate.c im->private_data = NULL; im 50 lib/tevent/tevent_immediate.c im->handler_name = NULL; im 51 lib/tevent/tevent_immediate.c im->schedule_location = NULL; im 52 lib/tevent/tevent_immediate.c im->cancel_fn = NULL; im 53 lib/tevent/tevent_immediate.c im->additional_data = NULL; im 55 lib/tevent/tevent_immediate.c talloc_set_destructor(im, NULL); im 61 lib/tevent/tevent_immediate.c static int tevent_common_immediate_destructor(struct tevent_immediate *im) im 63 lib/tevent/tevent_immediate.c tevent_common_immediate_cancel(im); im 70 lib/tevent/tevent_immediate.c void tevent_common_schedule_immediate(struct tevent_immediate *im, im 77 lib/tevent/tevent_immediate.c tevent_common_immediate_cancel(im); im 83 lib/tevent/tevent_immediate.c im->event_ctx = ev; im 84 lib/tevent/tevent_immediate.c im->handler = handler; im 85 lib/tevent/tevent_immediate.c im->private_data = private_data; im 86 lib/tevent/tevent_immediate.c im->handler_name = handler_name; im 87 lib/tevent/tevent_immediate.c im->schedule_location = location; im 88 lib/tevent/tevent_immediate.c im->cancel_fn = NULL; im 89 lib/tevent/tevent_immediate.c im->additional_data = NULL; im 91 lib/tevent/tevent_immediate.c DLIST_ADD_END(ev->immediate_events, im, struct tevent_immediate *); im 92 lib/tevent/tevent_immediate.c talloc_set_destructor(im, tevent_common_immediate_destructor); im 96 lib/tevent/tevent_immediate.c handler_name, im); im 105 lib/tevent/tevent_immediate.c struct tevent_immediate *im = ev->immediate_events; im 109 lib/tevent/tevent_immediate.c if (!im) { im 115 lib/tevent/tevent_immediate.c im->handler_name, im); im 121 lib/tevent/tevent_immediate.c handler = im->handler; im 122 lib/tevent/tevent_immediate.c private_data = im->private_data; im 124 lib/tevent/tevent_immediate.c DLIST_REMOVE(im->event_ctx->immediate_events, im); im 125 lib/tevent/tevent_immediate.c im->event_ctx = NULL; im 126 lib/tevent/tevent_immediate.c im->handler = NULL; im 127 lib/tevent/tevent_immediate.c im->private_data = NULL; im 128 lib/tevent/tevent_immediate.c im->handler_name = NULL; im 129 lib/tevent/tevent_immediate.c im->schedule_location = NULL; im 130 lib/tevent/tevent_immediate.c im->cancel_fn = NULL; im 131 lib/tevent/tevent_immediate.c im->additional_data = NULL; im 133 lib/tevent/tevent_immediate.c talloc_set_destructor(im, NULL); im 135 lib/tevent/tevent_immediate.c handler(ev, im, private_data); im 194 lib/tevent/tevent_internal.h void (*cancel_fn)(struct tevent_immediate *im); im 285 lib/tevent/tevent_internal.h void tevent_common_schedule_immediate(struct tevent_immediate *im, im 55 lib/tevent/tevent_queue.c struct tevent_immediate *im, im 133 lib/tevent/tevent_queue.c struct tevent_immediate *im, im 227 lib/tevent/tevent_req.c struct tevent_immediate *im,