http://bugs.winehq.org/show_bug.cgi?id=5534
blin@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |blin@gmx.net
------- Additional Comments From blin@gmx.net 2006-27-11 04:49 ------- There's two issues I can see in the trace. The first is the "Unknown SOL_SOCKET optname 0xfffffffb", which is caused by winsock2.h contains this: #define SO_DONTLINGER (int)(~SO_LINGER) and there's no unix equivalent to SO_DONTLINGER, so it's not converted. It just seems to unset SO_LINGER, though. unfortunately it's not possible to handle this in convert_sockopt, at least not the way it's designed right now.
convert_sockopt also can't handle #define SO_MAX_MSG_SIZE 0x2003, which also has no direct equivalent, but from http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winsock/win... I gather that this is not an actual socket option but a query command.
Another issue looks harmless, but I suspect it's also an error: warn:winsock:WSAIoctl unsupported WS_IOCTL cmd (48000016)
WSAIoctl doesn't know this command for two reasons. First, 48000016 is SIO_ADDRESS_LIST_QUERY, which the current wine code does not handle. Second, the value that is checked for if SIO_ADDRESS_LIST_QUERY is expanded by the preprocessor is 88000016, because it's constructed from IOC_OUT|IOC_WS2|22, and IOC_OUT in Linux is 80000000, in windows it's 40000000.
I'm not sure what the correct way to fix this would be.