]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
wifi: nl80211: Add checks for nla_nest_start() in nl80211_send_iface()
authorYuan Can <yuancan@huawei.com>
Tue, 29 Nov 2022 01:42:11 +0000 (01:42 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 31 Dec 2022 12:26:06 +0000 (13:26 +0100)
[ Upstream commit 5cc58b376675981386c6192405fe887cd29c527a ]

As the nla_nest_start() may fail with NULL returned, the return value needs
to be checked.

Fixes: ce08cd344a00 ("wifi: nl80211: expose link information for interfaces")
Signed-off-by: Yuan Can <yuancan@huawei.com>
Link: https://lore.kernel.org/r/20221129014211.56558-1-yuancan@huawei.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/wireless/nl80211.c

index 2705e3ee8fc4e83eebc4d9a43dd23b070cace22b..3e41edace1ba7aff4e5081a4516715eb2612186e 100644 (file)
@@ -3849,6 +3849,9 @@ static int nl80211_send_iface(struct sk_buff *msg, u32 portid, u32 seq, int flag
                for_each_valid_link(wdev, link_id) {
                        struct nlattr *link = nla_nest_start(msg, link_id + 1);
 
+                       if (!link)
+                               goto nla_put_failure;
+
                        if (nla_put_u8(msg, NL80211_ATTR_MLO_LINK_ID, link_id))
                                goto nla_put_failure;
                        if (nla_put(msg, NL80211_ATTR_MAC, ETH_ALEN,