Adam, This does the trick, thanks! I certainly would not have been able to track down such an insidious `issue' without much agony and despair.
- Scott On Fri, Mar 7, 2008 at 10:48 AM, Adam Langley <[EMAIL PROTECTED]> wrote: > On Fri, Mar 7, 2008 at 8:10 AM, Scott Bell <[EMAIL PROTECTED]> wrote: > > my test program. The Haskell version, however, does not > > return from recvFrom. I've also tried wrapping this in a > > withSocketsDo, with no effect. > > So this is a long standing, ah, issue with the Network modules. > > Try sending a UDP packet to port 45607 and you'll find that the > Haskell code gets it. > > hex(45607) = 0xb227 > 0x27b2 = 10162 > > In short, PortNum doesn't do the endian conversion for you. And I > don't know a good way to figure out the endianness of the underlying > system from Haskell I'm afraid. I usually end up FFIing out to htons > or just assuming that the system is little-endian. > > We should really fix this unless there's some trick that I've been > missing all this time. > > > AGL > > -- > Adam Langley [EMAIL PROTECTED] http://www.imperialviolet.org > _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe