BUG: tcp: close socket fd upon connect error

When the data layer fails to initialize (eg: out of memory for SSL), we
must close the socket fd we just allocated.
This commit is contained in:
Willy Tarreau 2012-09-06 14:04:41 +02:00
parent 403edff4b8
commit 184636e3e7

View File

@ -459,8 +459,10 @@ int tcp_connect_server(struct connection *conn, int data)
fd_insert(fd);
conn_sock_want_send(conn); /* for connect status */
if (conn_data_init(conn) < 0)
if (conn_data_init(conn) < 0) {
fd_delete(fd);
return SN_ERR_RESOURCE;
}
if (data)
conn_data_want_send(conn); /* prepare to send data if any */