]> www.infradead.org Git - users/dwmw2/linux.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>
Wed, 19 May 2021 08:08:20 +0000 (10:08 +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 11be9a84f8de94a33e4574c98967398e20d81db5..561ea834f73274614f09555b182b7d2d86357944 100644 (file)
@@ -673,7 +673,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);