mac80211: add missing sanity checks for action frames
Various missing sanity checks caused rejected action frames to be interpreted as channel switch announcements, which can cause a client mode interface to switch away from its operating channel, thereby losing connectivity. This patch ensures that only spectrum management action frames are processed by the CSA handling function and prevents rejected action frames from getting processed by the MLME code. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Cc: stable@kernel.org Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:

committed by
John W. Linville

parent
045cfb71a3
commit
d790744880
@@ -2015,6 +2015,10 @@ ieee80211_rx_h_action(struct ieee80211_rx_data *rx)
|
||||
}
|
||||
break;
|
||||
default:
|
||||
/* do not process rejected action frames */
|
||||
if (mgmt->u.action.category & 0x80)
|
||||
return RX_DROP_MONITOR;
|
||||
|
||||
return RX_CONTINUE;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user