libslirp.h revision ef0c0f0afcec83a3da370a0d2e5474b204f32582
#ifndef _LIBSLIRP_H
#define _LIBSLIRP_H
#ifdef RT_OS_WINDOWS
# include <winsock2.h>
# ifdef __cplusplus
extern "C" {
# endif
# ifdef __cplusplus
}
# endif
#else
# ifdef RT_OS_OS2 /* temporary workaround, see ticket #127 */
# endif
# include <poll.h>
#endif
#ifdef __cplusplus
extern "C" {
#endif
void slirp_term(PNATState);
void slirp_link_up(PNATState);
void slirp_link_down(PNATState);
#if defined(RT_OS_WINDOWS)
#else /* RT_OS_WINDOWS */
#endif /* !RT_OS_WINDOWS */
/* you must provide the following functions: */
int slirp_can_output(void * pvUser);
int guest_port);
#ifdef VBOX_WITH_SLIRP_DNS_PROXY
#endif
#if defined(RT_OS_WINDOWS)
/*
* ICMP handle state change
*/
# define VBOX_ICMP_EVENT_INDEX 0
/**
* This event is for
* - slirp_input
* - slirp_link_up
* - slirp_link_down
* - wakeup
*/
# define VBOX_WAKEUP_EVENT_INDEX 1
/*
*/
# define VBOX_SOCKET_EVENT_INDEX 2
/*
* The number of events for WSAWaitForMultipleEvents().
*/
# define VBOX_EVENT_COUNT 3
#endif /* RT_OS_WINDOWS */
#ifdef VBOX_WITH_SLIRP_MT
#endif
/*
* Returns the timeout.
*/
# ifndef RT_OS_WINDOWS
/*
* Returns the number of sockets.
*/
# endif
#ifdef __cplusplus
}
#endif
#endif