aboutsummaryrefslogtreecommitdiff
path: root/src/inet.c
diff options
context:
space:
mode:
authorDiego Nehab <diego.nehab@gmail.com>2015-12-03 12:56:18 -0200
committerDiego Nehab <diego.nehab@gmail.com>2015-12-03 12:56:18 -0200
commit83880dbed77f9a0a3627bce2e7bfbe1b862e091d (patch)
treeb5c9dcf94fe311c27a42096c04907fcd17265404 /src/inet.c
parentbe67f63f4e11e53690bf1431a236f86b484c9bf0 (diff)
downloadluasocket-83880dbed77f9a0a3627bce2e7bfbe1b862e091d.tar.gz
luasocket-83880dbed77f9a0a3627bce2e7bfbe1b862e091d.tar.bz2
luasocket-83880dbed77f9a0a3627bce2e7bfbe1b862e091d.zip
When zero-timeout, only try first address in connect.
Diffstat (limited to 'src/inet.c')
-rw-r--r--src/inet.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/inet.c b/src/inet.c
index 331b800..f4c8404 100644
--- a/src/inet.c
+++ b/src/inet.c
@@ -423,8 +423,8 @@ const char *inet_tryconnect(p_socket ps, int *family, const char *address,
423 /* try connecting to remote address */ 423 /* try connecting to remote address */
424 err = socket_strerror(socket_connect(ps, (SA *) iterator->ai_addr, 424 err = socket_strerror(socket_connect(ps, (SA *) iterator->ai_addr,
425 (socklen_t) iterator->ai_addrlen, tm)); 425 (socklen_t) iterator->ai_addrlen, tm));
426 /* if success, break out of loop */ 426 /* if success or timeout is zero, break out of loop */
427 if (err == NULL) { 427 if (err == NULL || timeout_iszero(tm)) {
428 *family = current_family; 428 *family = current_family;
429 break; 429 break;
430 } 430 }