Module: wine Branch: master Commit: df710826e17e9d49a3943cea9b82b168f5095b1d URL: http://source.winehq.org/git/wine.git/?a=commit;h=df710826e17e9d49a3943cea9b...
Author: Mike Kaplinskiy mike.kaplinskiy@gmail.com Date: Sat May 8 15:10:58 2010 -0400
ws2_32: Improve SIO_GET_EXTENSION_FUNCTION_POINTER stub.
---
dlls/ws2_32/socket.c | 51 +++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 48 insertions(+), 3 deletions(-)
diff --git a/dlls/ws2_32/socket.c b/dlls/ws2_32/socket.c index e6a6973..63607fe 100644 --- a/dlls/ws2_32/socket.c +++ b/dlls/ws2_32/socket.c @@ -2706,9 +2706,54 @@ INT WINAPI WSAIoctl(SOCKET s, break;
case WS_SIO_GET_EXTENSION_FUNCTION_POINTER: - FIXME("SIO_GET_EXTENSION_FUNCTION_POINTER %s: stub\n", debugstr_guid(lpvInBuffer)); - WSASetLastError(WSAEOPNOTSUPP); - return SOCKET_ERROR; + { + static const GUID connectex_guid = WSAID_CONNECTEX; + static const GUID disconnectex_guid = WSAID_DISCONNECTEX; + static const GUID acceptex_guid = WSAID_ACCEPTEX; + static const GUID getaccepexsockaddrs_guid = WSAID_GETACCEPTEXSOCKADDRS; + static const GUID transmitfile_guid = WSAID_TRANSMITFILE; + static const GUID transmitpackets_guid = WSAID_TRANSMITPACKETS; + static const GUID wsarecvmsg_guid = WSAID_WSARECVMSG; + static const GUID wsasendmsg_guid = WSAID_WSASENDMSG; + + if ( IsEqualGUID(&connectex_guid, lpvInBuffer) ) + { + FIXME("SIO_GET_EXTENSION_FUNCTION_POINTER: unimplemented ConnectEx\n"); + } + else if ( IsEqualGUID(&disconnectex_guid, lpvInBuffer) ) + { + FIXME("SIO_GET_EXTENSION_FUNCTION_POINTER: unimplemented DisconnectEx\n"); + } + else if ( IsEqualGUID(&acceptex_guid, lpvInBuffer) ) + { + FIXME("SIO_GET_EXTENSION_FUNCTION_POINTER: unimplemented AcceptEx\n"); + } + else if ( IsEqualGUID(&getaccepexsockaddrs_guid, lpvInBuffer) ) + { + FIXME("SIO_GET_EXTENSION_FUNCTION_POINTER: unimplemented GetAcceptExSockaddrs\n"); + } + else if ( IsEqualGUID(&transmitfile_guid, lpvInBuffer) ) + { + FIXME("SIO_GET_EXTENSION_FUNCTION_POINTER: unimplemented TransmitFile\n"); + } + else if ( IsEqualGUID(&transmitpackets_guid, lpvInBuffer) ) + { + FIXME("SIO_GET_EXTENSION_FUNCTION_POINTER: unimplemented TransmitPackets\n"); + } + else if ( IsEqualGUID(&wsarecvmsg_guid, lpvInBuffer) ) + { + FIXME("SIO_GET_EXTENSION_FUNCTION_POINTER: unimplemented WSARecvMsg\n"); + } + else if ( IsEqualGUID(&wsasendmsg_guid, lpvInBuffer) ) + { + FIXME("SIO_GET_EXTENSION_FUNCTION_POINTER: unimplemented WSASendMsg\n"); + } + else + FIXME("SIO_GET_EXTENSION_FUNCTION_POINTER %s: stub\n", debugstr_guid(lpvInBuffer)); + + WSASetLastError(WSAEOPNOTSUPP); + return SOCKET_ERROR; + }
case WS_SIO_KEEPALIVE_VALS: {