Statistics
| Branch: | Revision:

root / slirp / libslirp.h @ 0d62c4cf

History | View | Annotate | Download (1.3 kB)

1
#ifndef _LIBSLIRP_H
2
#define _LIBSLIRP_H
3

    
4
#include <qemu-common.h>
5

    
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);
11

    
12
void slirp_select_fill(int *pnfds,
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

    
23
int slirp_add_hostfwd(int is_udp, struct in_addr host_addr, int host_port,
24
                      struct in_addr guest_addr, int guest_port);
25
int slirp_remove_hostfwd(int is_udp, struct in_addr host_addr, int host_port);
26
int slirp_add_exec(int do_pty, const void *args, struct in_addr guest_addr,
27
                   int guest_port);
28

    
29
void slirp_stats(void);
30
void slirp_connection_info(Monitor *mon);
31

    
32
void slirp_socket_recv(struct in_addr guest_addr, int guest_port,
33
                       const uint8_t *buf, int size);
34
size_t slirp_socket_can_recv(struct in_addr guest_addr, int guest_port);
35

    
36
#endif