00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _tds_sysdep_private_h_
00021 #define _tds_sysdep_private_h_
00022
00023
00024
00025 #undef TDS_RCSID
00026 #if defined(__GNUC__) && __GNUC__ >= 3
00027 #define TDS_RCSID(name, id) \
00028 static const char rcsid_##name[] __attribute__ ((unused)) = id
00029 #else
00030 #define TDS_RCSID(name, id) \
00031 static const char rcsid_##name[] = id; \
00032 static const void *const no_unused_##name##_warn[] = { rcsid_##name, no_unused_##name##_warn }
00033 #endif
00034
00035 #define TDS_ADDITIONAL_SPACE 0
00036
00037 #ifdef __cplusplus
00038 extern "C"
00039 {
00040 #if 0
00041 }
00042 #endif
00043 #endif
00044
00045 #ifdef __INCvxWorksh
00046 #include <ioLib.h>
00047 #endif
00048
00049 #if defined(DOS32X)
00050 #define READSOCKET(a,b,c) recv((a), (b), (c), 0L)
00051 #define WRITESOCKET(a,b,c) send((a), (b), (c), 0L)
00052 #define CLOSESOCKET(a) closesocket((a))
00053 #define IOCTLSOCKET(a,b,c) ioctlsocket((a), (b), (char*)(c))
00054 #define select select_s
00055 typedef int pid_t;
00056 #define strcasecmp stricmp
00057 #define strncasecmp strnicmp
00058 #define vsnprintf _vsnprintf
00059
00060 #define getpid() _gethostid()
00061 #endif
00062
00063 #if defined(WIN32) || defined(_WIN32) || defined(__WIN32__)
00064 #include <windows.h>
00065 #define READSOCKET(a,b,c) recv((a), (b), (c), 0L)
00066 #define WRITESOCKET(a,b,c) send((a), (b), (c), 0L)
00067 #define CLOSESOCKET(a) closesocket((a))
00068 #define IOCTLSOCKET(a,b,c) ioctlsocket((a), (b), (c))
00069 int _tds_socket_init(void);
00070 #define INITSOCKET() _tds_socket_init()
00071 void _tds_socket_done(void);
00072 #define DONESOCKET() _tds_socket_done()
00073 #define NETDB_REENTRANT 1
00074
00075 #define TDSSOCK_EINTR WSAEINTR
00076 #define TDSSOCK_EINPROGRESS WSAEWOULDBLOCK
00077 #define sock_errno WSAGetLastError()
00078 #ifndef __MINGW32__
00079 typedef DWORD pid_t;
00080 #endif
00081 #define strcasecmp stricmp
00082 #define strncasecmp strnicmp
00083 #define atoll _atoi64
00084 #define vsnprintf _vsnprintf
00085
00086 #ifndef WIN32
00087 #define WIN32 1
00088 #endif
00089
00090 #if defined(_WIN64) && !defined(WIN64)
00091 #define WIN64 1
00092 #endif
00093
00094 #define TDS_SDIR_SEPARATOR "\\"
00095
00096
00097 #ifdef __MSVCRT__
00098 #define getpid() _getpid()
00099 #define strdup(s) _strdup(s)
00100 #define stricmp(s1,s2) _stricmp(s1,s2)
00101 #define strnicmp(s1,s2,n) _strnicmp(s1,s2,n)
00102 #endif
00103
00104 #endif
00105
00106 #ifndef sock_errno
00107 #define sock_errno errno
00108 #endif
00109
00110 #ifndef TDSSOCK_EINTR
00111 #define TDSSOCK_EINTR EINTR
00112 #endif
00113
00114 #ifndef TDSSOCK_EINPROGRESS
00115 #define TDSSOCK_EINPROGRESS EINPROGRESS
00116 #endif
00117
00118 #ifndef INITSOCKET
00119 #define INITSOCKET() 0
00120 #endif
00121
00122 #ifndef DONESOCKET
00123 #define DONESOCKET() do { } while(0)
00124 #endif
00125
00126 #ifndef READSOCKET
00127 #define READSOCKET(a,b,c) read((a), (b), (c))
00128 #endif
00129
00130 #ifndef WRITESOCKET
00131 #define WRITESOCKET(a,b,c) write((a), (b), (c))
00132 #endif
00133
00134 #ifndef CLOSESOCKET
00135 #define CLOSESOCKET(a) close((a))
00136 #endif
00137
00138 #ifndef IOCTLSOCKET
00139 #define IOCTLSOCKET(a,b,c) ioctl((a), (b), (c))
00140 #endif
00141
00142 #ifndef TDS_SDIR_SEPARATOR
00143 #define TDS_SDIR_SEPARATOR "/"
00144 #endif
00145
00146 #ifdef __cplusplus
00147 #if 0
00148 {
00149 #endif
00150 }
00151 #endif
00152
00153 #endif