Cannot call connect with a socket that is already bound.
> import Network.Socket
> sock <- socket AF_INET Datagram 0
Loading package parsec-2.1.0.1 ... linking ... done.
Loading package network-2.2.0.1 ... linking ... done.
> bindSocket sock (SockAddrInet aNY_PORT iNADDR_ANY)
> connect sock undefined
*** Exception: user error (connect: can't peform connect on socket in status Bound)
Network.Socket.connect checks the !SocketStatus of the socket:
if currentStatus /= NotConnected
From The Open Group Base Specifications Issue 6: "If the socket has not already been bound to a local address, connect() shall bind it to an address which, unless the socket's address family is AF_UNIX, is an unused local address."
Trac metadata
Trac field | Value |
---|---|
Version | 6.10.1 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | libraries/network |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |