]>
Commit | Line | Data |
---|---|---|
f0cbd3ec FB |
1 | #ifndef _LIBSLIRP_H |
2 | #define _LIBSLIRP_H | |
3 | ||
6dbe553f JK |
4 | #include <qemu-common.h> |
5 | ||
c92ef6a2 JK |
6 | void slirp_init(int restricted, struct in_addr vnetwork, |
7 | struct in_addr vnetmask, struct in_addr vhost, | |
8 | const char *vhostname, const char *tftp_path, | |
9 | const char *bootfile, struct in_addr vdhcp_start, | |
10 | struct in_addr vnameserver); | |
f0cbd3ec | 11 | |
5fafdf24 | 12 | void slirp_select_fill(int *pnfds, |
f0cbd3ec FB |
13 | fd_set *readfds, fd_set *writefds, fd_set *xfds); |
14 | ||
15 | void slirp_select_poll(fd_set *readfds, fd_set *writefds, fd_set *xfds); | |
16 | ||
17 | void slirp_input(const uint8_t *pkt, int pkt_len); | |
18 | ||
19 | /* you must provide the following functions: */ | |
20 | int slirp_can_output(void); | |
21 | void slirp_output(const uint8_t *pkt, int pkt_len); | |
22 | ||
3c6a0580 | 23 | int slirp_add_hostfwd(int is_udp, struct in_addr host_addr, int host_port, |
c92ef6a2 | 24 | struct in_addr guest_addr, int guest_port); |
3c6a0580 | 25 | int slirp_remove_hostfwd(int is_udp, struct in_addr host_addr, int host_port); |
c92ef6a2 JK |
26 | int slirp_add_exec(int do_pty, const void *args, struct in_addr guest_addr, |
27 | int guest_port); | |
9bf05444 | 28 | |
6dbe553f JK |
29 | void slirp_connection_info(Monitor *mon); |
30 | ||
c92ef6a2 JK |
31 | void slirp_socket_recv(struct in_addr guest_addr, int guest_port, |
32 | const uint8_t *buf, int size); | |
33 | size_t slirp_socket_can_recv(struct in_addr guest_addr, int guest_port); | |
31a60e22 | 34 | |
f0cbd3ec | 35 | #endif |