]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
lib: Fix samba_sockaddr_[get|set]_port
authorVolker Lendecke <vl@samba.org>
Sat, 13 Feb 2021 10:16:17 +0000 (11:16 +0100)
committerJeremy Allison <jra@samba.org>
Tue, 9 Mar 2021 22:36:28 +0000 (22:36 +0000)
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
lib/util/util_net.c

index 5e62fefa1462a8479eab3469bcecb345e242e107..fe474dc16be7663ed5b07432b3d2bd03fa10fb38 100644 (file)
@@ -1117,12 +1117,12 @@ bool sockaddr_storage_to_samba_sockaddr(
 bool samba_sockaddr_set_port(struct samba_sockaddr *sa, uint16_t port)
 {
        if (sa->u.sa.sa_family == AF_INET) {
-               sa->u.in.sin_port = port;
+               sa->u.in.sin_port = htons(port);
                return true;
        }
 #ifdef HAVE_IPV6
        if (sa->u.sa.sa_family == AF_INET6) {
-               sa->u.in6.sin6_port = port;
+               sa->u.in6.sin6_port = htons(port);
                return true;
        }
 #endif
@@ -1132,12 +1132,12 @@ bool samba_sockaddr_set_port(struct samba_sockaddr *sa, uint16_t port)
 bool samba_sockaddr_get_port(const struct samba_sockaddr *sa, uint16_t *port)
 {
        if (sa->u.sa.sa_family == AF_INET) {
-               *port = sa->u.in.sin_port;
+               *port = ntohs(sa->u.in.sin_port);
                return true;
        }
 #ifdef HAVE_IPV6
        if (sa->u.sa.sa_family == AF_INET6) {
-               *port = sa->u.in6.sin6_port;
+               *port = ntohs(sa->u.in6.sin6_port);
                return true;
        }
 #endif