diff options
Diffstat (limited to 'drivers/net/wireless/brcm80211/brcmfmac/cfg80211.c')
-rw-r--r-- | drivers/net/wireless/brcm80211/brcmfmac/cfg80211.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/wireless/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/brcm80211/brcmfmac/cfg80211.c index 70a6985334d5..da5826d788d6 100644 --- a/drivers/net/wireless/brcm80211/brcmfmac/cfg80211.c +++ b/drivers/net/wireless/brcm80211/brcmfmac/cfg80211.c | |||
@@ -4472,6 +4472,11 @@ brcmf_cfg80211_mgmt_tx(struct wiphy *wiphy, struct wireless_dev *wdev, | |||
4472 | cfg80211_mgmt_tx_status(wdev, *cookie, buf, len, true, | 4472 | cfg80211_mgmt_tx_status(wdev, *cookie, buf, len, true, |
4473 | GFP_KERNEL); | 4473 | GFP_KERNEL); |
4474 | } else if (ieee80211_is_action(mgmt->frame_control)) { | 4474 | } else if (ieee80211_is_action(mgmt->frame_control)) { |
4475 | if (len > BRCMF_FIL_ACTION_FRAME_SIZE + DOT11_MGMT_HDR_LEN) { | ||
4476 | brcmf_err("invalid action frame length\n"); | ||
4477 | err = -EINVAL; | ||
4478 | goto exit; | ||
4479 | } | ||
4475 | af_params = kzalloc(sizeof(*af_params), GFP_KERNEL); | 4480 | af_params = kzalloc(sizeof(*af_params), GFP_KERNEL); |
4476 | if (af_params == NULL) { | 4481 | if (af_params == NULL) { |
4477 | brcmf_err("unable to allocate frame\n"); | 4482 | brcmf_err("unable to allocate frame\n"); |