cec: clean up lib/platform
[deb_libcec.git] / src / lib / platform / windows / os-types.h
index 0a61c2e2d6d4089b2b39aa6a7525588c02b67839..84edac9e414244c65b51d7535d92d38add4f3bb6 100644 (file)
@@ -2,7 +2,7 @@
 /*
  * This file is part of the libCEC(R) library.
  *
- * libCEC(R) is Copyright (C) 2011 Pulse-Eight Limited.  All rights reserved.
+ * libCEC(R) is Copyright (C) 2011-2012 Pulse-Eight Limited.  All rights reserved.
  * libCEC(R) is an original work, containing original code.
  *
  * libCEC(R) is a trademark of Pulse-Eight Limited.
 #define __WINDOWS__
 #endif
 
+#ifndef _WINSOCKAPI_
+#define _WINSOCKAPI_
+#endif
+
 #pragma warning(disable:4005) // Disable "warning C4005: '_WINSOCKAPI_' : macro redefinition"
 #include <winsock2.h>
 #pragma warning(default:4005)
 #include <stddef.h>
 #include <process.h>
 
+typedef SOCKET tcp_socket_t;
+#define INVALID_SOCKET_VALUE        INVALID_SOCKET
+typedef HANDLE serial_socket_t;
+#define INVALID_SERIAL_SOCKET_VALUE INVALID_HANDLE_VALUE
+
 typedef signed __int8    int8_t;
 typedef signed __int16   int16_t;
 typedef signed __int32   int32_t;
@@ -55,9 +64,16 @@ typedef unsigned __int16 uint16_t;
 typedef unsigned __int32 uint32_t;
 typedef unsigned __int64 uint64_t;
 
-#define snprintf _snprintf
+#ifndef _SSIZE_T_DEFINED
+#ifdef  _WIN64
+typedef __int64    ssize_t;
+#else
+typedef _W64 int   ssize_t;
+#endif
+#define _SSIZE_T_DEFINED
+#endif
 
-typedef SOCKET socket_t;
+#define snprintf _snprintf
 
 #if defined(_MSC_VER)
 #pragma warning (push)