diff --git a/src/connect.c b/src/connect.c index 2cb64037..8d1855fb 100644 --- a/src/connect.c +++ b/src/connect.c @@ -281,6 +281,9 @@ socket_t ssh_connect_host_nonblocking(ssh_session session, const char *host, * connection, otherwise return the first address without error or error */ if (s == -1) { s = first; + } else if (s != first) { + /* Clean up the saved socket */ + ssh_connect_socket_close(first); } return s;