I looked at the bug report, and I think I can explain the problem. The application calls WSAIoctrl three times with flag SIO_GET_EXTENSION_FUNCTION_POINTER to obtain pointers to Winsock functions. On at least one of the calls, I forgot to check the return value for an error. This oversight was never noticed on Windows. But apparently SIO_GET_EXTENSION_FUNCTION_POINTER isn't implemented in Wine, so the function is probably failing on Linux (returning a null pointer) and HotkeyNet is calling the null pointer, The reason I say it's not implemented is that I found the following code in Wine's WSAIoctrl in socket.c: Code: case WS_SIO_GET_EXTENSION_FUNCTION_POINTER: FIXME("SIO_GET_EXTENSION_FUNCTION_POINTER %s: stub\n", debugstr_guid(lpvInBuffer)); WSASetLastError(WSAEOPNOTSUPP); return SOCKET_ERROR; If this is a correct explanation of the problem then HotkeyNet can only run on Wine if it's used on a single PC without connecting to others PCs, because the three function pointers it obtains with WSAIoctrl are essential to its network communications. The three Windows functions are: AcceptEx ConnectEx GetAcceptExSockaddrs If there is some other way of linking to these functions in Wine, please let me know. I don't think the Win32 API provides any other method of linking to them.