From: Michael Chapman Date: Tue, 17 Sep 2019 07:03:56 +0000 (+1000) Subject: util: fix byte order of port in virSocketAddrResolveService X-Git-Tag: v5.8.0-rc1~165 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=425e5783f9ee466528db48558e293411479e3547;p=thirdparty%2Flibvirt.git util: fix byte order of port in virSocketAddrResolveService The ports in the socket address structures returned by getaddrinfo() are in network byte order. Convert to host byte order before returning them. Reviewed-by: Daniel P. Berrangé Signed-off-by: Michael Chapman --- diff --git a/src/util/virsocketaddr.c b/src/util/virsocketaddr.c index c1fd5ec3d2..bba2089436 100644 --- a/src/util/virsocketaddr.c +++ b/src/util/virsocketaddr.c @@ -265,12 +265,12 @@ int virSocketAddrResolveService(const char *service) if (tmp->ai_family == AF_INET) { struct sockaddr_in in; memcpy(&in, tmp->ai_addr, sizeof(in)); - port = in.sin_port; + port = ntohs(in.sin_port); goto cleanup; } else if (tmp->ai_family == AF_INET6) { struct sockaddr_in6 in; memcpy(&in, tmp->ai_addr, sizeof(in)); - port = in.sin6_port; + port = ntohs(in.sin6_port); goto cleanup; } tmp++;