typedef UINT32 ssize_t;
typedef UINT32 mode_t;
-#elif defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__)
+#elif defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__CYGWIN__)
#define STAT stat
#define OPEN open
#define LSEEK lseek
#include <sys/types.h>
#include <sys/mman.h>
#include <sys/stat.h>
+#ifndef __CYGWIN__
#include <sys/syscall.h>
+#endif
#include <unistd.h>
#include <fcntl.h>
#endif
-#ifndef _WIN32
+#if !defined(_WIN32) && !defined(__CYGWIN__)
#ifdef __cplusplus
extern "C" {
#endif
-#ifndef _WIN32
+#if !defined(_WIN32) && !defined(__CYGWIN__)
FARPROC GetProcAddress(HMODULE hModule, LPCSTR lpProcName)
{
next_ifreq:
-#if !defined(__linux__) && !defined(__sun__)
+#if !defined(__linux__) && !defined(__sun__) && !defined(__CYGWIN__)
ifreq_len = IFNAMSIZ + ifreq->ifr_addr.sa_len;
#else
ifreq_len = sizeof(*ifreq);