VirtualBox

source: vbox/trunk/src/libs/libxml2-2.9.2/include/wsockcompat.h@ 64696

最後變更 在這個檔案從64696是 58072,由 vboxsync 提交於 9 年 前

libxml 2.9.2 unmodified

  • 屬性 svn:eol-style 設為 native
檔案大小: 2.8 KB
 
1/* include/wsockcompat.h
2 * Windows -> Berkeley Sockets compatibility things.
3 */
4
5#if !defined __XML_WSOCKCOMPAT_H__
6#define __XML_WSOCKCOMPAT_H__
7
8#ifdef _WIN32_WCE
9#include <winsock.h>
10#else
11#undef HAVE_ERRNO_H
12#include <winsock2.h>
13
14/* the following is a workaround a problem for 'inline' keyword in said
15 header when compiled with Borland C++ 6 */
16#if defined(__BORLANDC__) && !defined(__cplusplus)
17#define inline __inline
18#define _inline __inline
19#endif
20
21#include <ws2tcpip.h>
22
23/* Check if ws2tcpip.h is a recent version which provides getaddrinfo() */
24#if defined(GetAddrInfo)
25#include <wspiapi.h>
26#define HAVE_GETADDRINFO
27#endif
28#endif
29
30#if defined( __MINGW32__ ) || defined( _MSC_VER )
31/* Include <errno.h> here to ensure that it doesn't get included later
32 * (e.g. by iconv.h) and overwrites the definition of EWOULDBLOCK. */
33#include <errno.h>
34#undef EWOULDBLOCK
35#endif
36
37#if !defined SOCKLEN_T
38#define SOCKLEN_T int
39#endif
40
41#define EWOULDBLOCK WSAEWOULDBLOCK
42#define ESHUTDOWN WSAESHUTDOWN
43
44#if (!defined(_MSC_VER) || (_MSC_VER < 1600))
45#define EINPROGRESS WSAEINPROGRESS
46#define EALREADY WSAEALREADY
47#define ENOTSOCK WSAENOTSOCK
48#define EDESTADDRREQ WSAEDESTADDRREQ
49#define EMSGSIZE WSAEMSGSIZE
50#define EPROTOTYPE WSAEPROTOTYPE
51#define ENOPROTOOPT WSAENOPROTOOPT
52#define EPROTONOSUPPORT WSAEPROTONOSUPPORT
53#define ESOCKTNOSUPPORT WSAESOCKTNOSUPPORT
54#define EOPNOTSUPP WSAEOPNOTSUPP
55#define EPFNOSUPPORT WSAEPFNOSUPPORT
56#define EAFNOSUPPORT WSAEAFNOSUPPORT
57#define EADDRINUSE WSAEADDRINUSE
58#define EADDRNOTAVAIL WSAEADDRNOTAVAIL
59#define ENETDOWN WSAENETDOWN
60#define ENETUNREACH WSAENETUNREACH
61#define ENETRESET WSAENETRESET
62#define ECONNABORTED WSAECONNABORTED
63#define ECONNRESET WSAECONNRESET
64#define ENOBUFS WSAENOBUFS
65#define EISCONN WSAEISCONN
66#define ENOTCONN WSAENOTCONN
67#define ETOOMANYREFS WSAETOOMANYREFS
68#define ETIMEDOUT WSAETIMEDOUT
69#define ECONNREFUSED WSAECONNREFUSED
70#define ELOOP WSAELOOP
71#define EHOSTDOWN WSAEHOSTDOWN
72#define EHOSTUNREACH WSAEHOSTUNREACH
73#define EPROCLIM WSAEPROCLIM
74#define EUSERS WSAEUSERS
75#define EDQUOT WSAEDQUOT
76#define ESTALE WSAESTALE
77#define EREMOTE WSAEREMOTE
78/* These cause conflicts with the codes from errno.h. Since they are
79 not used in the relevant code (nanoftp, nanohttp), we can leave
80 them disabled.
81#define ENAMETOOLONG WSAENAMETOOLONG
82#define ENOTEMPTY WSAENOTEMPTY
83*/
84#endif /* _MSC_VER */
85
86#endif /* __XML_WSOCKCOMPAT_H__ */
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette