]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
tipc: convert dest node's address to network order
authorHoang Le <hoang.h.le@dektech.com.au>
Thu, 11 Mar 2021 03:33:22 +0000 (10:33 +0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 22 May 2021 08:59:39 +0000 (10:59 +0200)
[ Upstream commit 1980d37565061ab44bdc2f9e4da477d3b9752e81 ]

(struct tipc_link_info)->dest is in network order (__be32), so we must
convert the value to network order before assigning. The problem detected
by sparse:

net/tipc/netlink_compat.c:699:24: warning: incorrect type in assignment (different base types)
net/tipc/netlink_compat.c:699:24:    expected restricted __be32 [usertype] dest
net/tipc/netlink_compat.c:699:24:    got int

Acked-by: Jon Maloy <jmaloy@redhat.com>
Signed-off-by: Hoang Le <hoang.h.le@dektech.com.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/tipc/netlink_compat.c

index f8e111218a0ec12da5e176e8bf5462edc231ee97..5086e27d3011e2ae0ecd2f6b13cb80259a655fe5 100644 (file)
@@ -671,7 +671,7 @@ static int tipc_nl_compat_link_dump(struct tipc_nl_compat_msg *msg,
        if (err)
                return err;
 
-       link_info.dest = nla_get_flag(link[TIPC_NLA_LINK_DEST]);
+       link_info.dest = htonl(nla_get_flag(link[TIPC_NLA_LINK_DEST]));
        link_info.up = htonl(nla_get_flag(link[TIPC_NLA_LINK_UP]));
        nla_strlcpy(link_info.str, link[TIPC_NLA_LINK_NAME],
                    TIPC_MAX_LINK_NAME);