libslirp.h revision 6a6a129fc27bed9d93ababe1e549afc49cc53f51
#ifndef _LIBSLIRP_H
#define _LIBSLIRP_H
#ifdef _WIN32
#include <winsock2.h>
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __cplusplus
}
#endif
#else
#ifdef RT_OS_OS2 /* temporary workaround, see ticket #127 */
#endif
#endif
#ifdef __cplusplus
extern "C" {
#endif
void slirp_term(PNATState);
void slirp_link_up(PNATState);
void slirp_link_down(PNATState);
/* you must provide the following functions: */
int slirp_can_output(void * pvUser);
int guest_port);
#if defined(VBOX_WITH_SIMPLIFIED_SLIRP_SYNC) && defined(RT_OS_WINDOWS)
/**
* This event is for
* - slirp_input
* - slirp_link_up
* - slirp_link_down
* - wakeup
*
* The event index should be smaller than VBOX_SOCKET_EVENT_INDEX to ensure
* that we can detect if that event was set (WSAWaitForMultipleEvents()
* returns the index of the first active event).
*/
#define VBOX_WAKEUP_EVENT_INDEX 0
/*
*/
#define VBOX_SOCKET_EVENT_INDEX 1
/*
* The number of events for WSAWaitForMultipleEvents().
*/
#define VBOX_EVENT_COUNT 2
#endif
/*
* Return the timeout.
*/
#ifdef __cplusplus
}
#endif
#endif