]> git.ipfire.org Git - thirdparty/bird.git/blob - lib/event.h
The generalized TTL security mechanism (RFC 5082) support.
[thirdparty/bird.git] / lib / event.h
1 /*
2 * BIRD Library -- Event Processing
3 *
4 * (c) 1999 Martin Mares <mj@ucw.cz>
5 *
6 * Can be freely distributed and used under the terms of the GNU GPL.
7 */
8
9 #ifndef _BIRD_EVENT_H_
10 #define _BIRD_EVENT_H_
11
12 #include "lib/resource.h"
13
14 typedef struct event {
15 resource r;
16 void (*hook)(void *);
17 void *data;
18 node n; /* Internal link */
19 } event;
20
21 typedef list event_list;
22
23 extern event_list global_event_list;
24
25 event *ev_new(pool *);
26 void ev_run(event *);
27 #define ev_init_list(el) init_list(el)
28 void ev_enqueue(event_list *, event *);
29 void ev_schedule(event *);
30 void ev_postpone(event *);
31 int ev_run_list(event_list *);
32
33 #endif