Magellan Linux

Annotation of /trunk/mkinitrd-magellan/busybox/networking/isrv.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 984 - (hide annotations) (download)
Sun May 30 11:32:42 2010 UTC (14 years ago) by niro
File MIME type: text/plain
File size: 1028 byte(s)
-updated to busybox-1.16.1 and enabled blkid/uuid support in default config
1 niro 532 /* vi: set sw=4 ts=4: */
2     /*
3     * Generic non-forking server infrastructure.
4     * Intended to make writing telnetd-type servers easier.
5     *
6 niro 816 * Copyright (C) 2007 Denys Vlasenko
7 niro 532 *
8     * Licensed under GPL version 2, see file LICENSE in this tarball for details.
9     */
10    
11 niro 984 PUSH_AND_SET_FUNCTION_VISIBILITY_TO_HIDDEN
12 niro 816
13 niro 532 /* opaque structure */
14     struct isrv_state_t;
15     typedef struct isrv_state_t isrv_state_t;
16    
17     /* callbacks */
18     void isrv_want_rd(isrv_state_t *state, int fd);
19     void isrv_want_wr(isrv_state_t *state, int fd);
20     void isrv_dont_want_rd(isrv_state_t *state, int fd);
21     void isrv_dont_want_wr(isrv_state_t *state, int fd);
22     int isrv_register_fd(isrv_state_t *state, int peer, int fd);
23     void isrv_close_fd(isrv_state_t *state, int fd);
24     int isrv_register_peer(isrv_state_t *state, void *param);
25    
26     /* driver */
27     void isrv_run(
28     int listen_fd,
29     int (*new_peer)(isrv_state_t *state, int fd),
30     int (*do_rd)(int fd, void **),
31     int (*do_wr)(int fd, void **),
32     int (*do_timeout)(void **),
33     int timeout,
34     int linger_timeout
35     );
36 niro 816
37 niro 984 POP_SAVED_FUNCTION_VISIBILITY