Add one stub and fix two others to return correct error codes. Also add few extended error constants to the header file. Vitaliy Margolen changelog: dlls/winsock/ws2_32.spec dlls/winsock/socket.c - add and fix few stubs to return correct error include/winsock.h - add more extended error codes Index: dlls/winsock/socket.c =================================================================== RCS file: /home/wine/wine/dlls/winsock/socket.c,v retrieving revision 1.124 diff -u -r1.124 socket.c --- dlls/winsock/socket.c 4 Apr 2003 22:29:52 -0000 1.124 +++ dlls/winsock/socket.c 9 Apr 2003 05:20:03 -0000 @@ -4261,7 +4261,8 @@ int WINAPI WSAInstallServiceClassA(LPWSASERVICECLASSINFOA info) { FIXME("Request to install service %s\n",debugstr_a(info->lpszServiceClassName)); - return WSAEACCES; + WSASetLastError(WSAEACCES); + return SOCKET_ERROR; } /*********************************************************************** @@ -4270,5 +4271,17 @@ int WINAPI WSAInstallServiceClassW(LPWSASERVICECLASSINFOW info) { FIXME("Request to install service %s\n",debugstr_w(info->lpszServiceClassName)); - return WSAEACCES; + WSASetLastError(WSAEACCES); + return SOCKET_ERROR; } + +/*********************************************************************** + * WSARemoveServiceClass (WS2_32.70) + */ +int WINAPI WSARemoveServiceClass(LPGUID info) +{ + FIXME("Request to remove service %p\n",info); + WSASetLastError(WSATYPE_NOT_FOUND); + return SOCKET_ERROR; +} + Index: dlls/winsock/ws2_32.spec =================================================================== RCS file: /home/wine/wine/dlls/winsock/ws2_32.spec,v retrieving revision 1.31 diff -u -r1.31 ws2_32.spec --- dlls/winsock/ws2_32.spec 20 Mar 2003 03:53:13 -0000 1.31 +++ dlls/winsock/ws2_32.spec 9 Apr 2003 05:20:03 -0000 @@ -71,7 +71,7 @@ 67 stdcall WSARecv(long ptr long ptr ptr ptr ptr) 68 stub WSARecvDisconnect 69 stdcall WSARecvFrom(long ptr long ptr ptr ptr ptr ptr ptr ) -70 stub WSARemoveServiceClass +70 stdcall WSARemoveServiceClass(ptr) 71 stdcall WSAResetEvent(long) kernel32.ResetEvent 72 stdcall WSASend(long ptr long ptr long ptr ptr) 73 stdcall WSASendDisconnect(long ptr) Index: include/winsock.h =================================================================== RCS file: /home/wine/wine/include/winsock.h,v retrieving revision 1.55 diff -u -r1.55 winsock.h --- include/winsock.h 4 Apr 2003 22:04:47 -0000 1.55 +++ include/winsock.h 9 Apr 2003 05:20:03 -0000 @@ -821,6 +821,18 @@ #define WSASYSNOTREADY (WSABASEERR+91) #define WSAVERNOTSUPPORTED (WSABASEERR+92) #define WSANOTINITIALISED (WSABASEERR+93) +#define WSAEDISCON (WSABASEERR+101) +#define WSAENOMORE (WSABASEERR+102) +#define WSAECANCELLED (WSABASEERR+103) +#define WSAEINVALIDPROCTABLE (WSABASEERR+104) +#define WSAEINVALIDPROVIDER (WSABASEERR+105) +#define WSAEPROVIDERFAILEDINIT (WSABASEERR+106) +#define WSASYSCALLFAILURE (WSABASEERR+107) +#define WSASERVICE_NOT_FOUND (WSABASEERR+108) +#define WSATYPE_NOT_FOUND (WSABASEERR+109) +#define WSA_E_NO_MORE (WSABASEERR+110) +#define WSA_E_CANCELLED (WSABASEERR+111) +#define WSAEREFUSED (WSABASEERR+112) /* * Error return codes from gethostbyname() and gethostbyaddr()