* psdk_inc/_ip_types.h (struct __ms_timeval): Define on LP64 systems. (TIMEVAL): Define based on struct __ms_timeval on LP64, based on struct timeval otherwise. (PTIMEVAL): Ditto. (LPTIMEVAL): Ditto. * winsock.h: Replace all `struct timeval *' usages with PTIMEVAL. * winsock2.h: Ditto. * ws2spi.h: Ditto. * ws2tcpip.h: Ditto. git-svn-id: svn+ssh://svn.code.sf.net/p/mingw-w64/code/trunk@5288 4407c894-4637-0410-b4f5-ada5f102cad1
diff --git a/mingw-w64-headers/include/ChangeLog b/mingw-w64-headers/include/ChangeLog index 88332de..da0de49 100644 --- a/mingw-w64-headers/include/ChangeLog +++ b/mingw-w64-headers/include/ChangeLog
@@ -1,5 +1,17 @@ 2012-07-30 Corinna Vinschen <vinschen@redhat.com> + * psdk_inc/_ip_types.h (struct __ms_timeval): Define on LP64 systems. + (TIMEVAL): Define based on struct __ms_timeval on LP64, based on + struct timeval otherwise. + (PTIMEVAL): Ditto. + (LPTIMEVAL): Ditto. + * winsock.h: Replace all `struct timeval *' usages with PTIMEVAL. + * winsock2.h: Ditto. + * ws2spi.h: Ditto. + * ws2tcpip.h: Ditto. + +2012-07-30 Corinna Vinschen <vinschen@redhat.com> + * af_irda.h: Temporarily redefine u_long as __ms_u_long on LP64 systems. * in6addr.h: Ditto. * inaddr.h: Ditto.
diff --git a/mingw-w64-headers/include/psdk_inc/_ip_types.h b/mingw-w64-headers/include/psdk_inc/_ip_types.h index 7da85ae..5a3ba26 100644 --- a/mingw-w64-headers/include/psdk_inc/_ip_types.h +++ b/mingw-w64-headers/include/psdk_inc/_ip_types.h
@@ -103,9 +103,19 @@ typedef struct linger *PLINGER; typedef struct linger *LPLINGER; +#ifdef __LP64__ +struct __ms_timeval { + __LONG32 tv_sec; + __LONG32 tv_usec; +}; +typedef struct __ms_timeval TIMEVAL; +typedef struct __ms_timeval *PTIMEVAL; +typedef struct __ms_timeval *LPTIMEVAL; +#else typedef struct timeval TIMEVAL; typedef struct timeval *PTIMEVAL; typedef struct timeval *LPTIMEVAL; +#endif #ifdef __LP64__ #pragma pop_macro("u_long")
diff --git a/mingw-w64-headers/include/winsock.h b/mingw-w64-headers/include/winsock.h index baf8dec..81ea00a 100644 --- a/mingw-w64-headers/include/winsock.h +++ b/mingw-w64-headers/include/winsock.h
@@ -296,7 +296,7 @@ WINSOCK_API_LINKAGE int WSAAPI recv(SOCKET s,char *buf,int len,int flags); WINSOCK_API_LINKAGE int WSAAPI recvfrom(SOCKET s,char *buf,int len,int flags,struct sockaddr *from,int *fromlen); #ifndef __INSIDE_CYGWIN__ - WINSOCK_API_LINKAGE int WSAAPI select(int nfds,fd_set *readfds,fd_set *writefds,fd_set *exceptfds,const struct timeval *timeout); + WINSOCK_API_LINKAGE int WSAAPI select(int nfds,fd_set *readfds,fd_set *writefds,fd_set *exceptfds,const PTIMEVAL timeout); #endif /* !__INSIDE_CYGWIN__ */ WINSOCK_API_LINKAGE int WSAAPI send(SOCKET s,const char *buf,int len,int flags); WINSOCK_API_LINKAGE int WSAAPI sendto(SOCKET s,const char *buf,int len,int flags,const struct sockaddr *to,int tolen);
diff --git a/mingw-w64-headers/include/winsock2.h b/mingw-w64-headers/include/winsock2.h index ed27181..4d84136 100644 --- a/mingw-w64-headers/include/winsock2.h +++ b/mingw-w64-headers/include/winsock2.h
@@ -864,7 +864,7 @@ typedef u_short (WSAAPI *LPFN_NTOHS)(u_short netshort); typedef int (WSAAPI *LPFN_RECV)(SOCKET s,char *buf,int len,int flags); typedef int (WSAAPI *LPFN_RECVFROM)(SOCKET s,char *buf,int len,int flags,struct sockaddr *from,int *fromlen); - typedef int (WSAAPI *LPFN_SELECT)(int nfds,fd_set *readfds,fd_set *writefds,fd_set *exceptfds,const struct timeval *timeout); + typedef int (WSAAPI *LPFN_SELECT)(int nfds,fd_set *readfds,fd_set *writefds,fd_set *exceptfds,const PTIMEVAL timeout); typedef int (WSAAPI *LPFN_SEND)(SOCKET s,const char *buf,int len,int flags); typedef int (WSAAPI *LPFN_SENDTO)(SOCKET s,const char *buf,int len,int flags,const struct sockaddr *to,int tolen); typedef int (WSAAPI *LPFN_SETSOCKOPT)(SOCKET s,int level,int optname,const char *optval,int optlen); @@ -983,7 +983,7 @@ WINSOCK_API_LINKAGE int WSAAPI recv(SOCKET s,char *buf,int len,int flags); WINSOCK_API_LINKAGE int WSAAPI recvfrom(SOCKET s,char *buf,int len,int flags,struct sockaddr *from,int *fromlen); #ifndef __INSIDE_CYGWIN__ - WINSOCK_API_LINKAGE int WSAAPI select(int nfds,fd_set *readfds,fd_set *writefds,fd_set *exceptfds,const struct timeval *timeout); + WINSOCK_API_LINKAGE int WSAAPI select(int nfds,fd_set *readfds,fd_set *writefds,fd_set *exceptfds,const PTIMEVAL timeout); #endif /* !__INSIDE_CYGWIN__ */ WINSOCK_API_LINKAGE int WSAAPI send(SOCKET s,const char *buf,int len,int flags); WINSOCK_API_LINKAGE int WSAAPI sendto(SOCKET s,const char *buf,int len,int flags,const struct sockaddr *to,int tolen); @@ -1156,7 +1156,7 @@ LPSOCKADDR LocalAddress, LPDWORD RemoteAddressLength, LPSOCKADDR RemoteAddress, - const struct timeval *timeout, + const PTIMEVAL timeout, LPWSAOVERLAPPED Reserved ); @@ -1168,7 +1168,7 @@ LPSOCKADDR LocalAddress, LPDWORD RemoteAddressLength, LPSOCKADDR RemoteAddress, - const struct timeval *timeout, + const PTIMEVAL timeout, LPWSAOVERLAPPED Reserved ); @@ -1180,7 +1180,7 @@ LPSOCKADDR LocalAddress, LPDWORD RemoteAddressLength, LPSOCKADDR RemoteAddress, - const struct timeval *timeout, + const PTIMEVAL timeout, LPWSAOVERLAPPED Reserved ); #define WSAConnectByName __MINGW_NAME_AW(WSAConnectByName)
diff --git a/mingw-w64-headers/include/ws2spi.h b/mingw-w64-headers/include/ws2spi.h index 4956e7a..4742199 100644 --- a/mingw-w64-headers/include/ws2spi.h +++ b/mingw-w64-headers/include/ws2spi.h
@@ -57,7 +57,7 @@ typedef int (WSPAPI *LPWSPRECV)(SOCKET s,LPWSABUF lpBuffers,DWORD dwBufferCount,LPDWORD lpNumberOfBytesRecvd,LPDWORD lpFlags,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine,LPWSATHREADID lpThreadId,LPINT lpErrno); typedef int (WSPAPI *LPWSPRECVDISCONNECT)(SOCKET s,LPWSABUF lpInboundDisconnectData,LPINT lpErrno); typedef int (WSPAPI *LPWSPRECVFROM)(SOCKET s,LPWSABUF lpBuffers,DWORD dwBufferCount,LPDWORD lpNumberOfBytesRecvd,LPDWORD lpFlags,struct sockaddr *lpFrom,LPINT lpFromlen,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine,LPWSATHREADID lpThreadId,LPINT lpErrno); - typedef int (WSPAPI *LPWSPSELECT)(int nfds,fd_set *readfds,fd_set *writefds,fd_set *exceptfds,const struct timeval *timeout,LPINT lpErrno); + typedef int (WSPAPI *LPWSPSELECT)(int nfds,fd_set *readfds,fd_set *writefds,fd_set *exceptfds,const PTIMEVAL timeout,LPINT lpErrno); typedef int (WSPAPI *LPWSPSEND)(SOCKET s,LPWSABUF lpBuffers,DWORD dwBufferCount,LPDWORD lpNumberOfBytesSent,DWORD dwFlags,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine,LPWSATHREADID lpThreadId,LPINT lpErrno); typedef int (WSPAPI *LPWSPSENDDISCONNECT)(SOCKET s,LPWSABUF lpOutboundDisconnectData,LPINT lpErrno); typedef int (WSPAPI *LPWSPSENDTO)(SOCKET s,LPWSABUF lpBuffers,DWORD dwBufferCount,LPDWORD lpNumberOfBytesSent,DWORD dwFlags,const struct sockaddr *lpTo,int iTolen,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine,LPWSATHREADID lpThreadId,LPINT lpErrno);
diff --git a/mingw-w64-headers/include/ws2tcpip.h b/mingw-w64-headers/include/ws2tcpip.h index 19927c7..6ecdc2d 100644 --- a/mingw-w64-headers/include/ws2tcpip.h +++ b/mingw-w64-headers/include/ws2tcpip.h
@@ -338,23 +338,23 @@ WINSOCK_API_LINKAGE int WSAAPI GetAddrInfoExA(PCSTR pName, PCSTR pServiceName, DWORD dwNameSpace, LPGUID lpNspId,const ADDRINFOEXA *pHints,PADDRINFOEXA *ppResult, - struct timeval *timeout,LPOVERLAPPED lpOverlapped, + PTIMEVAL timeout,LPOVERLAPPED lpOverlapped, LPLOOKUPSERVICE_COMPLETION_ROUTINE lpCompletionRoutine, LPHANDLE lpNameHandle); WINSOCK_API_LINKAGE int WSAAPI GetAddrInfoExW(PCWSTR pName,PCWSTR pServiceName,DWORD dwNameSpace, LPGUID lpNspId,const ADDRINFOEXW *pHints,PADDRINFOEXW *ppResult, - struct timeval *timeout,LPOVERLAPPED lpOverlapped, + PTIMEVAL timeout,LPOVERLAPPED lpOverlapped, LPLOOKUPSERVICE_COMPLETION_ROUTINE lpCompletionRoutine, LPHANDLE lpNameHandle); WINSOCK_API_LINKAGE int WSAAPI SetAddrInfoExA(PCSTR pName, PCSTR pServiceName, SOCKET_ADDRESS *pAddresses, DWORD dwAddressCount,LPBLOB lpBlob,DWORD dwFlags,DWORD dwNameSpace, - LPGUID lpNspId,struct timeval *timeout,LPOVERLAPPED lpOverlapped, + LPGUID lpNspId,PTIMEVAL timeout,LPOVERLAPPED lpOverlapped, LPLOOKUPSERVICE_COMPLETION_ROUTINE lpCompletionRoutine, LPHANDLE lpNameHandle); WINSOCK_API_LINKAGE int WSAAPI SetAddrInfoExW(PCWSTR pName,PCWSTR pServiceName,SOCKET_ADDRESS *pAddresses, DWORD dwAddressCount,LPBLOB lpBlob,DWORD dwFlags,DWORD dwNameSpace, - LPGUID lpNspId,struct timeval *timeout,LPOVERLAPPED lpOverlapped, + LPGUID lpNspId,PTIMEVAL timeout,LPOVERLAPPED lpOverlapped, LPLOOKUPSERVICE_COMPLETION_ROUTINE lpCompletionRoutine, LPHANDLE lpNameHandle); @@ -365,24 +365,24 @@ #define LPFN_GETADDRINFOEX __MINGW_NAME_AW(LPFN_GETADDRINFOEX) typedef int (WSAAPI *LPFN_GETADDRINFOEXA)(PCSTR pName, PCSTR pServiceName, DWORD dwNameSpace, LPGUID lpNspId,const ADDRINFOEXA *pHints,PADDRINFOEXA *ppResult, - struct timeval *timeout,LPOVERLAPPED lpOverlapped, + PTIMEVAL timeout,LPOVERLAPPED lpOverlapped, LPLOOKUPSERVICE_COMPLETION_ROUTINE lpCompletionRoutine, LPHANDLE lpNameHandle); typedef int (WSAAPI *LPFN_GETADDRINFOEXW)(PCWSTR pName,PCWSTR pServiceName,DWORD dwNameSpace, LPGUID lpNspId,const ADDRINFOEXW *pHints,PADDRINFOEXW *ppResult, - struct timeval *timeout,LPOVERLAPPED lpOverlapped, + PTIMEVAL timeout,LPOVERLAPPED lpOverlapped, LPLOOKUPSERVICE_COMPLETION_ROUTINE lpCompletionRoutine, LPHANDLE lpNameHandle); #define LPFN_SETADDRINFOEX __MINGW_NAME_AW(LPFN_SETADDRINFOEX) typedef int (WSAAPI *LPFN_SETADDRINFOEXA)(PCSTR pName, PCSTR pServiceName, SOCKET_ADDRESS *pAddresses, DWORD dwAddressCount,LPBLOB lpBlob,DWORD dwFlags,DWORD dwNameSpace, - LPGUID lpNspId,struct timeval *timeout,LPOVERLAPPED lpOverlapped, + LPGUID lpNspId,PTIMEVAL timeout,LPOVERLAPPED lpOverlapped, LPLOOKUPSERVICE_COMPLETION_ROUTINE lpCompletionRoutine, LPHANDLE lpNameHandle); typedef int (WSAAPI *LPFN_SETADDRINFOEXW)(PCWSTR pName,PCWSTR pServiceName,SOCKET_ADDRESS *pAddresses, DWORD dwAddressCount,LPBLOB lpBlob,DWORD dwFlags,DWORD dwNameSpace, - LPGUID lpNspId,struct timeval *timeout,LPOVERLAPPED lpOverlapped, + LPGUID lpNspId,PTIMEVAL timeout,LPOVERLAPPED lpOverlapped, LPLOOKUPSERVICE_COMPLETION_ROUTINE lpCompletionRoutine, LPHANDLE lpNameHandle);