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)
committerJohannes Berg <johannes.berg@intel.com>
Thu, 1 Dec 2022 12:50:21 +0000 (13:50 +0100)
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>
net/wireless/nl80211.c

index 1ad0326..33a82ec 100644 (file)
@@ -3868,6 +3868,9 @@ static int nl80211_send_iface(struct sk_buff *msg, u32 portid, u32 seq, int flag
                        struct cfg80211_chan_def chandef = {};
                        int ret;
 
+                       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,