5 #ifndef __MONO_UTILS_W32API_H__
6 #define __MONO_UTILS_W32API_H__
10 #define WAIT_TOO_MANY_POSTS ((gint) 0x0000012A)
11 #define WAIT_NOT_OWNED_BY_CALLER ((gint) 0x0000012B)
15 #define WAIT_FAILED ((gint) 0xFFFFFFFF)
16 #define WAIT_OBJECT_0 ((gint) 0x00000000)
17 #define WAIT_ABANDONED_0 ((gint) 0x00000080)
18 #define WAIT_TIMEOUT ((gint) 0x00000102)
19 #define WAIT_IO_COMPLETION ((gint) 0x000000C0)
23 typedef guint32 DWORD
;
24 typedef gboolean BOOL
;
26 typedef guint32 ULONG
;
29 typedef gpointer HANDLE
;
30 typedef gpointer HMODULE
;
34 #define __USE_W32_SOCKETS
38 /* The mingw version says: /usr/i686-pc-mingw32/sys-root/mingw/include/ws2tcpip.h:38:2: error: #error "ws2tcpip.h is not compatible with winsock.h. Include winsock2.h instead." */
44 /* Workaround for missing WSAPOLLFD typedef in mingw's winsock2.h
45 * that is required for mswsock.h below. Remove once
46 * http://sourceforge.net/p/mingw/bugs/1980/ is fixed. */
47 #if defined(__MINGW_MAJOR_VERSION) && __MINGW_MAJOR_VERSION == 4
48 typedef struct pollfd
{
52 } WSAPOLLFD
, *PWSAPOLLFD
, *LPWSAPOLLFD
;
55 #if G_HAVE_API_SUPPORT(HAVE_CLASSIC_WINAPI_SUPPORT | HAVE_UWP_WINAPI_SUPPORT)
59 #endif /* HOST_WIN32 */
61 #endif /* __MONO_UTILS_W32API_H__ */