Cleanup include statements
Remove useless includes and add some preprocessor conditions for platform specific headers.
diff --git a/lib/client.c b/lib/client.c
index a52bb4c..4775555 100644
--- a/lib/client.c
+++ b/lib/client.c
@@ -23,7 +23,6 @@
#ifdef WIN32
#include <tchar.h>
-#include <io.h>
#else
#ifdef LWS_BUILTIN_GETIFADDRS
#include <getifaddrs.h>
diff --git a/lib/libwebsockets.c b/lib/libwebsockets.c
index 7f9d20e..8ce6074 100644
--- a/lib/libwebsockets.c
+++ b/lib/libwebsockets.c
@@ -23,7 +23,6 @@
#if defined(WIN32) || defined(_WIN32)
#include <tchar.h>
-#include <io.h>
#include <mstcpip.h>
#else
#ifdef LWS_BUILTIN_GETIFADDRS
@@ -37,7 +36,9 @@
#include <netdb.h>
#endif
+#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
+#endif
#ifdef LWS_OPENSSL_SUPPORT
int openssl_websocket_private_data_index;
diff --git a/lib/output.c b/lib/output.c
index 8188ec2..4b5d948 100644
--- a/lib/output.c
+++ b/lib/output.c
@@ -21,10 +21,6 @@
#include "private-libwebsockets.h"
-#ifdef WIN32
-#include <io.h>
-#endif
-
static int
libwebsocket_0405_frame_mask_generate(struct libwebsocket *wsi)
{
diff --git a/lib/parsers.c b/lib/parsers.c
index dcf1cdc..62be441 100644
--- a/lib/parsers.c
+++ b/lib/parsers.c
@@ -21,11 +21,6 @@
#include "private-libwebsockets.h"
-#if defined(WIN32) || defined(_WIN32)
-#include <io.h>
-#endif
-
-
unsigned char lextable[] = {
#include "lextable.h"
};
diff --git a/lib/private-libwebsockets.h b/lib/private-libwebsockets.h
index 3332106..e27c3c2 100644
--- a/lib/private-libwebsockets.h
+++ b/lib/private-libwebsockets.h
@@ -32,6 +32,9 @@
#if _MSC_VER > 1000 || defined(_WIN32)
#else
+#include <errno.h>
+#include <fcntl.h>
+#include <signal.h>
#include <unistd.h>
#include <strings.h>
#endif
@@ -39,9 +42,6 @@
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <signal.h>
#include <limits.h>
#ifdef __MINGW64__
#else
@@ -53,7 +53,9 @@
#endif
#include <stdarg.h>
+#ifdef HAVE_SYS_STAT_H
#include <sys/stat.h>
+#endif
#if defined(WIN32) || defined(_WIN32)
#define LWS_NO_DAEMONIZE
@@ -79,7 +81,6 @@
#endif
#endif
#include <winsock2.h>
-#include <ws2ipdef.h>
#include <windows.h>
#define LWS_INVALID_FILE INVALID_HANDLE_VALUE
#else
diff --git a/lib/server.c b/lib/server.c
index bf9080a..7ff3350 100644
--- a/lib/server.c
+++ b/lib/server.c
@@ -24,7 +24,6 @@
#if defined(WIN32) || defined(_WIN32)
#include <tchar.h>
-#include <io.h>
#else
#ifdef LWS_BUILTIN_GETIFADDRS
#include <getifaddrs.h>
diff --git a/lib/sha-1.c b/lib/sha-1.c
index e0ab4dc..e280345 100644
--- a/lib/sha-1.c
+++ b/lib/sha-1.c
@@ -32,7 +32,12 @@
* implemented by Jun-ichiro itojun Itoh <itojun@itojun.org>
*/
+#include "private-libwebsockets.h"
+
+#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
+#endif
+
#if defined(WIN32) || defined(_WIN32)
#ifndef BIG_ENDIAN