can multiple connect() possible stream sockets - TCP-IP

This is a discussion on can multiple connect() possible stream sockets - TCP-IP ; Hi,
i have a nonblocking tcp/ip client, It tries to connect to a array of hosts one after other, if an error like conn_refused comes then socket is made to shutdown immediately and subsequent connect() will get EINVAL, (socket already ...

can multiple connect() possible stream sockets

Hi,

i have a nonblocking tcp/ip client, It tries to connect to a array of hosts one after other, if an error like conn_refused comes then socket is made to shutdown immediately and subsequent connect() will get EINVAL, (socket already shutdown). so, my questions are?

1. Is the behaviour what i am seeing is right?
2. If so, is there a reason why only once we can connect on tcp sockets and multiple on datagrams?
3. any reference toe RFC?
4. How can the socket marked as shutdown can be reused or creating a new socket is the only way?