2 Unix SMB/CIFS implementation.
4 Copyright (C) Andrew Tridgell 1992-1998
5 Copyright (C) Volker Lendecke 2005
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 3 of the License, or
10 (at your option) any later version.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>.
25 /* bits for file descriptor event flags */
26 #define EVENT_FD_READ 1
27 #define EVENT_FD_WRITE 2
29 /* The following definitions come from lib/events.c */
31 struct timed_event
*event_add_timed(struct event_context
*event_ctx
,
34 const char *event_name
,
35 void (*handler
)(struct event_context
*event_ctx
,
36 struct timed_event
*te
,
37 const struct timeval
*now
,
40 struct fd_event
*event_add_fd(struct event_context
*event_ctx
,
42 int fd
, uint16_t flags
,
43 void (*handler
)(struct event_context
*event_ctx
,
44 struct fd_event
*event
,
48 void event_fd_set_writeable(struct fd_event
*fde
);
49 void event_fd_set_not_writeable(struct fd_event
*fde
);
50 void event_fd_set_readable(struct fd_event
*fde
);
51 void event_fd_set_not_readable(struct fd_event
*fde
);
52 bool event_add_to_select_args(struct event_context
*event_ctx
,
53 const struct timeval
*now
,
54 fd_set
*read_fds
, fd_set
*write_fds
,
55 struct timeval
*timeout
, int *maxfd
);
56 bool run_events(struct event_context
*event_ctx
,
57 int selrtn
, fd_set
*read_fds
, fd_set
*write_fds
);
58 struct timeval
*get_timed_events_timeout(struct event_context
*event_ctx
,
59 struct timeval
*to_ret
);
60 int event_loop_once(struct event_context
*ev
);
61 void event_context_reinit(struct event_context
*ev
);
62 struct event_context
*event_context_init(TALLOC_CTX
*mem_ctx
);
63 void dump_event_list(struct event_context
*event_ctx
);