Annotation of qemu/slirp/libslirp.h, revision 1.1.1.5
1.1 root 1: #ifndef _LIBSLIRP_H
2: #define _LIBSLIRP_H
3:
1.1.1.5 ! root 4: #include <qemu-common.h>
! 5:
! 6: #ifdef CONFIG_SLIRP
! 7:
! 8: struct Slirp;
! 9: typedef struct Slirp Slirp;
1.1 root 10:
1.1.1.5 ! root 11: Slirp *slirp_init(int restricted, struct in_addr vnetwork,
! 12: struct in_addr vnetmask, struct in_addr vhost,
! 13: const char *vhostname, const char *tftp_path,
! 14: const char *bootfile, struct in_addr vdhcp_start,
! 15: struct in_addr vnameserver, void *opaque);
! 16: void slirp_cleanup(Slirp *slirp);
1.1 root 17:
1.1.1.3 root 18: void slirp_select_fill(int *pnfds,
1.1 root 19: fd_set *readfds, fd_set *writefds, fd_set *xfds);
20:
1.1.1.5 ! root 21: void slirp_select_poll(fd_set *readfds, fd_set *writefds, fd_set *xfds,
! 22: int select_error);
1.1 root 23:
1.1.1.5 ! root 24: void slirp_input(Slirp *slirp, const uint8_t *pkt, int pkt_len);
1.1 root 25:
26: /* you must provide the following functions: */
1.1.1.5 ! root 27: int slirp_can_output(void *opaque);
! 28: void slirp_output(void *opaque, const uint8_t *pkt, int pkt_len);
1.1 root 29:
1.1.1.5 ! root 30: int slirp_add_hostfwd(Slirp *slirp, int is_udp,
! 31: struct in_addr host_addr, int host_port,
! 32: struct in_addr guest_addr, int guest_port);
! 33: int slirp_remove_hostfwd(Slirp *slirp, int is_udp,
! 34: struct in_addr host_addr, int host_port);
! 35: int slirp_add_exec(Slirp *slirp, int do_pty, const void *args,
! 36: struct in_addr *guest_addr, int guest_port);
! 37:
! 38: void slirp_connection_info(Slirp *slirp, Monitor *mon);
! 39:
! 40: void slirp_socket_recv(Slirp *slirp, struct in_addr guest_addr,
! 41: int guest_port, const uint8_t *buf, int size);
! 42: size_t slirp_socket_can_recv(Slirp *slirp, struct in_addr guest_addr,
! 43: int guest_port);
! 44:
! 45: #else /* !CONFIG_SLIRP */
! 46:
! 47: static inline void slirp_select_fill(int *pnfds, fd_set *readfds,
! 48: fd_set *writefds, fd_set *xfds) { }
! 49:
! 50: static inline void slirp_select_poll(fd_set *readfds, fd_set *writefds,
! 51: fd_set *xfds, int select_error) { }
! 52: #endif /* !CONFIG_SLIRP */
1.1 root 53:
54: #endif
unix.superglobalmegacorp.com