Annotation of embedaddon/libxml2/include/wsockcompat.h, revision 1.1.1.3

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: 
1.1.1.2   misho      30: #if defined( __MINGW32__ ) || defined( _MSC_VER )
1.1       misho      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
1.1.1.2   misho      42: #define ESHUTDOWN               WSAESHUTDOWN
                     43: 
1.1.1.3 ! misho      44: #if (!defined(_MSC_VER) || (_MSC_VER < 1600))
1.1       misho      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: */
1.1.1.2   misho      84: #endif /* _MSC_VER */
1.1       misho      85: 
                     86: #endif /* __XML_WSOCKCOMPAT_H__ */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>