
Am 03.06.2010 05:20 schrieb Ivan Miljenovic:
So I thought it's just an error in the show instance of PortNumber, which shows the bytes flipped. But if I use the following code snippet
sock <- socket AF_INET Datagram 0 bindSocket sock $ SockAddrInet (PortNum 8888) iNADDR_ANY
to bind a socket to port 8888, netstat and TCPView reveal that the socket is actually bound to the wrong port 47138. I'm using network-2.2.1.7 on Windows XP. Is that a bug or am I doing something wrong here?
Tried testing this as well; not sure how to test if the binding worked but "netstat --numeric-ports" didn't contain 8888 or 47138.
Hi Ivan, here's a complete program to reproduce the error: module Main (main) where import Network.Socket main :: IO () main = withSocketsDo $ do sock <- socket AF_INET Datagram 0 bindSocket sock $ SockAddrInet (PortNum 8888) iNADDR_ANY recvFrom sock 65535 return () The output of netstat/TCPView after starting the program is: MinSocketBind.exe:2724 UDP PC1:47138 *:* By the way, I'm using GHC 6.10.4, which I think shouldn't make a difference. Matthias