Vista - recv / WSAGetLastError never return WSAECONNRESET

I hope it is ok to post Winsock2 questions in this forum.

I have a nonblocking TCP socket which I am calling recv on. After the network cable is pulled out of the back of the machine, the function continues to return -1 & WSAGetLastError returns WSAEWOULDBLOCK for that socket. From looking at how socket communication worked on previous versions of windows, I should get at least 1 WSAECONNRESET from WSAGetLastError.

Is this a known bug? Any easy workaround? I would like to keep changes to this code as small as possible.

[532 byte] By [Locke355] at [2008-2-15]