52 channel_id_t chan = (channel_id_t)(uintptr_t)(arg);
91 for (
size_t i = 0; i < num_channels; ++i) {
94 (
void*)(uintptr_t)(i)));
169 if (the_pubsub_items) {
175 mainloop_event_free(ev));
mainloop_event_t * mainloop_event_postloop_new(void(*cb)(mainloop_event_t *, void *), void *userdata)
void mainloop_event_activate(mainloop_event_t *event)
Header for compat_libevent.c.
Low-level APIs for message-passing system.
int dispatch_set_alert_fn(dispatch_t *d, channel_id_t chan, dispatch_alertfn_t fn, void *userdata)
int dispatch_flush(dispatch_t *, channel_id_t chan, int max_msgs)
struct dispatch_t dispatch_t
Header for dispatch_naming.c.
size_t get_num_channel_ids(void)
channel_id_t get_channel_id(const char *)
Header file for mainloop.c.
static dispatch_t * the_dispatcher
static void flush_channel_event(mainloop_event_t *ev, void *arg)
int tor_mainloop_connect_pubsub(struct pubsub_builder_t *builder)
static void alertfn_immediate(dispatch_t *d, channel_id_t chan, void *arg)
static void alertfn_prompt(dispatch_t *d, channel_id_t chan, void *arg)
static void alertfn_never(dispatch_t *d, channel_id_t chan, void *arg)
void tor_mainloop_connect_pubsub_events(void)
void tor_mainloop_disconnect_pubsub(void)
static smartlist_t * alert_events
int tor_mainloop_set_delivery_strategy(const char *msg_channel_name, deliv_strategy_t strategy)
Header for mainloop_pubsub.c.
Master header file for Tor-specific functionality.
Header for OO publish-subscribe functionality.
dispatch_t * pubsub_builder_finalize(pubsub_builder_t *builder, pubsub_items_t **items_out)
void pubsub_items_clear_bindings(pubsub_items_t *items)
Header used for constructing the OO publish-subscribe facility.
struct pubsub_items_t pubsub_items_t
struct pubsub_builder_t pubsub_builder_t
#define pubsub_items_free(cfg)
smartlist_t * smartlist_new(void)
void smartlist_add(smartlist_t *sl, void *element)
#define SMARTLIST_FOREACH(sl, type, var, cmd)