When zero-timeout, only try first address in connect.

This commit is contained in:
Diego Nehab 2015-12-03 12:56:18 -02:00
parent be67f63f4e
commit 83880dbed7
3 changed files with 12 additions and 9 deletions

View file

@ -423,8 +423,8 @@ const char *inet_tryconnect(p_socket ps, int *family, const char *address,
/* try connecting to remote address */
err = socket_strerror(socket_connect(ps, (SA *) iterator->ai_addr,
(socklen_t) iterator->ai_addrlen, tm));
/* if success, break out of loop */
if (err == NULL) {
/* if success or timeout is zero, break out of loop */
if (err == NULL || timeout_iszero(tm)) {
*family = current_family;
break;
}