From 75bbb3b2c00d9539beb04b6c6ae3ab2d73ad181c Mon Sep 17 00:00:00 2001 From: Andy Green Date: Fri, 21 Jul 2017 20:35:58 +0800 Subject: [PATCH] client: always set port even if sockfd already created --- lib/client-handshake.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lib/client-handshake.c b/lib/client-handshake.c index 599ed09..42d1a9b 100644 --- a/lib/client-handshake.c +++ b/lib/client-handshake.c @@ -213,15 +213,11 @@ lws_client_connect_2(struct lws *wsi) #endif #ifdef LWS_USE_IPV6 - if (wsi->ipv6) { - sa46.sa6.sin6_port = htons(port); + if (wsi->ipv6) wsi->desc.sockfd = socket(AF_INET6, SOCK_STREAM, 0); - } else + else #endif - { - sa46.sa4.sin_port = htons(port); wsi->desc.sockfd = socket(AF_INET, SOCK_STREAM, 0); - } if (!lws_socket_is_valid(wsi->desc.sockfd)) { lwsl_warn("Unable to open socket\n"); @@ -276,11 +272,15 @@ lws_client_connect_2(struct lws *wsi) } #ifdef LWS_USE_IPV6 - if (wsi->ipv6) + if (wsi->ipv6) { + sa46.sa6.sin6_port = htons(port); n = sizeof(struct sockaddr_in6); - else + } else #endif + { + sa46.sa4.sin_port = htons(port); n = sizeof(struct sockaddr); + } if (connect(wsi->desc.sockfd, (const struct sockaddr *)&sa46, n) == -1 || LWS_ERRNO == LWS_EISCONN) { -- 2.7.4