https://bugs.winehq.org/show_bug.cgi?id=55952
--- Comment #2 from Zeb Figura z.figura12@gmail.com --- As far as I can tell everything's working correctly on the Wine end? This looks like a mono bug to me.
Specifically, in SocketResponder.cs I see this:
// On Windows a Receive() is needed here before Shutdown() to consume the data some tests send. listenSocket.ReceiveTimeout = 10 * 1000; listenSocket.Receive (new byte [0]);
That is translated (and I think is supposed to be translated) into a zero-byte recv() call, which waits for the data but doesn't actually consume it.
Shutting down and exiting with data left in the pipe results in a TCP reset, both on Unix and on Windows, and that's propagated to the other end.
Does this test work with native .NET on Wine? I'd try myself, but winetricks dotnet4* doesn't seem to be working correctly anymore.