Annotation of embedaddon/libxml2/include/wsockcompat.h, revision 1.1
1.1 ! misho 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: #ifdef __MINGW32__
! 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 EINPROGRESS WSAEINPROGRESS
! 43: #define EALREADY WSAEALREADY
! 44: #define ENOTSOCK WSAENOTSOCK
! 45: #define EDESTADDRREQ WSAEDESTADDRREQ
! 46: #define EMSGSIZE WSAEMSGSIZE
! 47: #define EPROTOTYPE WSAEPROTOTYPE
! 48: #define ENOPROTOOPT WSAENOPROTOOPT
! 49: #define EPROTONOSUPPORT WSAEPROTONOSUPPORT
! 50: #define ESOCKTNOSUPPORT WSAESOCKTNOSUPPORT
! 51: #define EOPNOTSUPP WSAEOPNOTSUPP
! 52: #define EPFNOSUPPORT WSAEPFNOSUPPORT
! 53: #define EAFNOSUPPORT WSAEAFNOSUPPORT
! 54: #define EADDRINUSE WSAEADDRINUSE
! 55: #define EADDRNOTAVAIL WSAEADDRNOTAVAIL
! 56: #define ENETDOWN WSAENETDOWN
! 57: #define ENETUNREACH WSAENETUNREACH
! 58: #define ENETRESET WSAENETRESET
! 59: #define ECONNABORTED WSAECONNABORTED
! 60: #define ECONNRESET WSAECONNRESET
! 61: #define ENOBUFS WSAENOBUFS
! 62: #define EISCONN WSAEISCONN
! 63: #define ENOTCONN WSAENOTCONN
! 64: #define ESHUTDOWN WSAESHUTDOWN
! 65: #define ETOOMANYREFS WSAETOOMANYREFS
! 66: #define ETIMEDOUT WSAETIMEDOUT
! 67: #define ECONNREFUSED WSAECONNREFUSED
! 68: #define ELOOP WSAELOOP
! 69: #define EHOSTDOWN WSAEHOSTDOWN
! 70: #define EHOSTUNREACH WSAEHOSTUNREACH
! 71: #define EPROCLIM WSAEPROCLIM
! 72: #define EUSERS WSAEUSERS
! 73: #define EDQUOT WSAEDQUOT
! 74: #define ESTALE WSAESTALE
! 75: #define EREMOTE WSAEREMOTE
! 76: /* These cause conflicts with the codes from errno.h. Since they are
! 77: not used in the relevant code (nanoftp, nanohttp), we can leave
! 78: them disabled.
! 79: #define ENAMETOOLONG WSAENAMETOOLONG
! 80: #define ENOTEMPTY WSAENOTEMPTY
! 81: */
! 82:
! 83: #endif /* __XML_WSOCKCOMPAT_H__ */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>