[Haskell-cafe] Re: all threads are blocked by recvFrom

Vitaliy Akimov vitaliy.akimov at gmail.com
Tue Mar 18 12:51:02 EDT 2008

It's not an issue of error codes. Though error code of WSAEWOULDBLOCK
and EAGAIN is different this is not the problem. You've posted a link
to preprocessed source code. And there is no implementation of
throwErrnoIfMinus1Retry_repeatOnBlock for Windows. This function for
Windows treat WSAEWOULDBLOCK as error, and it doesn't have loop for
its correct processing. It's not a surprise since the socket isn't
supposed to be blocked on windows.

Here is source code with setting socket to non-blocking mode [1]. It
terminates with error:
>	UdpEcho.exe: recvFrom: failed (Resource temporarily unavailable

[1] http://hpaste.org/6476


2008/3/18, Adam Langley <agl at imperialviolet.org>:
> On Tue, Mar 18, 2008 at 3:41 AM, Vitaliy Akimov
> <vitaliy.akimov at gmail.com> wrote:
> >  Unfortunally this way seems to be wrong. Error codes for winsockets
>  >  and BSD-sockets are different.
> Hmm, "Networking broken on Windows" would seem to be a pretty big
>  issue. One of the Windows peeps like to speak up here?
>  AGL
>  --
>  Adam Langley agl at imperialviolet.org http://www.imperialviolet.org

More information about the Haskell-Cafe mailing list