https://bugs.winehq.org/show_bug.cgi?id=54413
Bug ID: 54413 Summary: ws2_32:sock - DuplicateHandle(socket) sometimes look like a socket in test_WSAGetOverlappedResult() on Windows Product: Wine Version: unspecified Hardware: x86-64 OS: Windows Status: NEW Severity: normal Priority: P2 Component: winsock Assignee: wine-bugs@winehq.org Reporter: fgouget@codeweavers.com
ws2_32:sock - DuplicateHandle(socket) sometimes look like a socket in test_WSAGetOverlappedResult() on Windows:
sock.c:12512: Test failed: got 1. sock.c:12513: Test failed: got 0.
See https://test.winehq.org/data/patterns.html#ws2_32:sock
This failure is pretty rare, there are only 4 known instances: * 2022-09-27 on w1064 64 bit (21h2) * 2022-11-15 on w10pro64-hi-u8 64 bit (21h1) * 2023-01-25 on w11pro64 64 bit (21h2) * 2023-01-25 on w1064v2009 64 bit
The test creates a socket, treats it as a handle and duplicates it, then checks whether the duplicate handle behaves like a socket which it normally does not, causing WSAGetOverlappedResult() to fail (return 0) and WSAGetLastError() to be set to WSAENOTSOCK.
But in these four cases WSAGetOverlappedResult() succeeded which would indicate the duplicate handle looked like a socket?