[MSWSOCK] Revert r74753 and r74755 as it showed regressions

svn path=/trunk/; revision=74756
This commit is contained in:
Peter Hater 2017-06-03 00:30:20 +00:00
parent a59bc8597f
commit 21b16a63ed
3 changed files with 425 additions and 489 deletions

View file

@ -16,7 +16,6 @@ add_library(mswsock SHARED
${CMAKE_CURRENT_BINARY_DIR}/mswsock.def) ${CMAKE_CURRENT_BINARY_DIR}/mswsock.def)
set_module_type(mswsock win32dll UNICODE) set_module_type(mswsock win32dll UNICODE)
target_link_libraries(mswsock wine)
add_importlibs(mswsock ws2_32 advapi32 dnsapi msvcrt kernel32 ntdll) add_importlibs(mswsock ws2_32 advapi32 dnsapi msvcrt kernel32 ntdll)
add_pch(mswsock precomp.h SOURCE) add_pch(mswsock precomp.h SOURCE)
add_cd_file(TARGET mswsock DESTINATION reactos/system32 FOR all) add_cd_file(TARGET mswsock DESTINATION reactos/system32 FOR all)

View file

@ -12,9 +12,6 @@
#include <winsock2.h> #include <winsock2.h>
#include <mswsock.h> #include <mswsock.h>
#include <wine/debug.h>
WINE_DEFAULT_DEBUG_CHANNEL(mswsock);
LPFN_TRANSMITFILE pfnTransmitFile = NULL; LPFN_TRANSMITFILE pfnTransmitFile = NULL;
LPFN_GETACCEPTEXSOCKADDRS pfnGetAcceptExSockaddrs = NULL; LPFN_GETACCEPTEXSOCKADDRS pfnGetAcceptExSockaddrs = NULL;
LPFN_ACCEPTEX pfnAcceptEx = NULL; LPFN_ACCEPTEX pfnAcceptEx = NULL;
@ -33,10 +30,8 @@ TransmitFile(SOCKET Socket,
{ {
GUID TransmitFileGUID = WSAID_TRANSMITFILE; GUID TransmitFileGUID = WSAID_TRANSMITFILE;
DWORD cbBytesReturned; DWORD cbBytesReturned;
BOOL Ret;
TRACE("TransmitFile %p %p %ld %ld %p %p %lx\n", Socket, File, NumberOfBytesToWrite, NumberOfBytesPerSend, Overlapped, TransmitBuffers, Flags); if (WSAIoctl(Socket,
if (!pfnTransmitFile && WSAIoctl(Socket,
SIO_GET_EXTENSION_FUNCTION_POINTER, SIO_GET_EXTENSION_FUNCTION_POINTER,
&TransmitFileGUID, &TransmitFileGUID,
sizeof(TransmitFileGUID), sizeof(TransmitFileGUID),
@ -46,22 +41,16 @@ TransmitFile(SOCKET Socket,
NULL, NULL,
NULL) == SOCKET_ERROR) NULL) == SOCKET_ERROR)
{ {
ERR("TransmitFile WSAIoctl %lx\n", WSAGetLastError());
return FALSE; return FALSE;
} }
Ret = pfnTransmitFile(Socket, return pfnTransmitFile(Socket,
File, File,
NumberOfBytesToWrite, NumberOfBytesToWrite,
NumberOfBytesPerSend, NumberOfBytesPerSend,
Overlapped, Overlapped,
TransmitBuffers, TransmitBuffers,
Flags); Flags);
if (!Ret)
{
ERR("TransmitFile %lx\n", WSAGetLastError());
}
return Ret;
} }
/* /*
@ -81,10 +70,8 @@ AcceptEx(SOCKET ListenSocket,
GUID AcceptExGUID = WSAID_ACCEPTEX; GUID AcceptExGUID = WSAID_ACCEPTEX;
GUID GetAcceptExSockaddrsGUID = WSAID_GETACCEPTEXSOCKADDRS; GUID GetAcceptExSockaddrsGUID = WSAID_GETACCEPTEXSOCKADDRS;
DWORD cbBytesReturned; DWORD cbBytesReturned;
BOOL Ret;
TRACE("AcceptEx %p %p %p %ld %ld %ld %p %p\n", ListenSocket, AcceptSocket, OutputBuffer, ReceiveDataLength, LocalAddressLength, RemoteAddressLength, BytesReceived, Overlapped); if (WSAIoctl(ListenSocket,
if (!pfnAcceptEx && WSAIoctl(ListenSocket,
SIO_GET_EXTENSION_FUNCTION_POINTER, SIO_GET_EXTENSION_FUNCTION_POINTER,
&AcceptExGUID, &AcceptExGUID,
sizeof(AcceptExGUID), sizeof(AcceptExGUID),
@ -94,11 +81,10 @@ AcceptEx(SOCKET ListenSocket,
NULL, NULL,
NULL) == SOCKET_ERROR) NULL) == SOCKET_ERROR)
{ {
ERR("AcceptEx WSAIoctl %lx\n", WSAGetLastError());
return FALSE; return FALSE;
} }
if (!pfnGetAcceptExSockaddrs && WSAIoctl(ListenSocket, if (WSAIoctl(ListenSocket,
SIO_GET_EXTENSION_FUNCTION_POINTER, SIO_GET_EXTENSION_FUNCTION_POINTER,
&GetAcceptExSockaddrsGUID, &GetAcceptExSockaddrsGUID,
sizeof(GetAcceptExSockaddrsGUID), sizeof(GetAcceptExSockaddrsGUID),
@ -108,12 +94,11 @@ AcceptEx(SOCKET ListenSocket,
NULL, NULL,
NULL) == SOCKET_ERROR) NULL) == SOCKET_ERROR)
{ {
ERR("GetAcceptExSockaddrs WSAIoctl %lx\n", WSAGetLastError());
pfnAcceptEx = NULL; pfnAcceptEx = NULL;
return FALSE; return FALSE;
} }
Ret = pfnAcceptEx(ListenSocket, return pfnAcceptEx(ListenSocket,
AcceptSocket, AcceptSocket,
OutputBuffer, OutputBuffer,
ReceiveDataLength, ReceiveDataLength,
@ -121,11 +106,6 @@ AcceptEx(SOCKET ListenSocket,
RemoteAddressLength, RemoteAddressLength,
BytesReceived, BytesReceived,
Overlapped); Overlapped);
if (!Ret)
{
ERR("AcceptEx %lx\n", WSAGetLastError());
}
return Ret;
} }
@ -143,12 +123,8 @@ GetAcceptExSockaddrs(PVOID OutputBuffer,
LPSOCKADDR* RemoteSockaddr, LPSOCKADDR* RemoteSockaddr,
LPINT RemoteSockaddrLength) LPINT RemoteSockaddrLength)
{ {
TRACE("AcceptEx %p %ld %ld %ld %p %p %p %p\n", OutputBuffer, ReceiveDataLength, LocalAddressLength, RemoteAddressLength, LocalSockaddr, LocalSockaddrLength, RemoteSockaddr, RemoteSockaddrLength); if (pfnGetAcceptExSockaddrs)
if (!pfnGetAcceptExSockaddrs)
{ {
ERR("GetAcceptExSockaddrs is NULL\n");
return;
}
pfnGetAcceptExSockaddrs(OutputBuffer, pfnGetAcceptExSockaddrs(OutputBuffer,
ReceiveDataLength, ReceiveDataLength,
LocalAddressLength, LocalAddressLength,
@ -157,5 +133,6 @@ GetAcceptExSockaddrs(PVOID OutputBuffer,
LocalSockaddrLength, LocalSockaddrLength,
RemoteSockaddr, RemoteSockaddr,
RemoteSockaddrLength); RemoteSockaddrLength);
}
} }
/* EOF */ /* EOF */

File diff suppressed because it is too large Load diff