hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
kernel/drivers/net/wireless/mac80211_hwsim.c
....@@ -3625,12 +3625,13 @@
36253625 frame_data_len = nla_len(info->attrs[HWSIM_ATTR_FRAME]);
36263626 frame_data = (void *)nla_data(info->attrs[HWSIM_ATTR_FRAME]);
36273627
3628
+ if (frame_data_len < sizeof(struct ieee80211_hdr_3addr) ||
3629
+ frame_data_len > IEEE80211_MAX_DATA_LEN)
3630
+ goto err;
3631
+
36283632 /* Allocate new skb here */
36293633 skb = alloc_skb(frame_data_len, GFP_KERNEL);
36303634 if (skb == NULL)
3631
- goto err;
3632
-
3633
- if (frame_data_len > IEEE80211_MAX_DATA_LEN)
36343635 goto err;
36353636
36363637 /* Copy the data */