Skip to content

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
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information