Berkeley description: A request to send or receive data
was disallowed because the socket is not connected and (when sending on
a datagram socket) no address was supplied.
WinSock description: Same as Berkeley, and then some. An
application attempted an input/output network function call before
establishing an association with a remote socket (i.e. before calling
connect() or accept()). It also has a specific meaning for setsockopt().
generates this error if you try to set SO_KEEPALIVE but the connection
has already been aborted (e.g. a TCP reset received from remote host).