Message ID | 755becb1-819b-484d-8fac-9a2db53ced1b@stanley.mountain |
---|---|
State | New |
Headers | show |
Series | [next] wifi: ath12k: Off by one in ath12k_wmi_process_csa_switch_count_event() | expand |
Dan Carpenter <dan.carpenter@linaro.org> writes: > The ahvif->vif->link_conf[] array has IEEE80211_MLD_MAX_NUM_LINKS elements > so this should be >= instead of > to avoid an out of bounds access. > > Fixes: 3952657848c0 ("wifi: ath12k: Use mac80211 vif's link_conf instead of bss_conf") > Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org> Acked-by: Kalle Valo <kvalo@kernel.org>
On Fri, 06 Dec 2024 15:52:29 +0300, Dan Carpenter wrote: > The ahvif->vif->link_conf[] array has IEEE80211_MLD_MAX_NUM_LINKS elements > so this should be >= instead of > to avoid an out of bounds access. > > Applied, thanks! [1/1] wifi: ath12k: Off by one in ath12k_wmi_process_csa_switch_count_event() commit: 58fa8109fa8dae2947567e8f56dbd55ad81bc35c Best regards,
diff --git a/drivers/net/wireless/ath/ath12k/wmi.c b/drivers/net/wireless/ath/ath12k/wmi.c index 402ae477da61..46c5027e4f1c 100644 --- a/drivers/net/wireless/ath/ath12k/wmi.c +++ b/drivers/net/wireless/ath/ath12k/wmi.c @@ -6873,7 +6873,7 @@ ath12k_wmi_process_csa_switch_count_event(struct ath12k_base *ab, } ahvif = arvif->ahvif; - if (arvif->link_id > IEEE80211_MLD_MAX_NUM_LINKS) { + if (arvif->link_id >= IEEE80211_MLD_MAX_NUM_LINKS) { ath12k_warn(ab, "Invalid CSA switch count even link id: %d\n", arvif->link_id); continue;
The ahvif->vif->link_conf[] array has IEEE80211_MLD_MAX_NUM_LINKS elements so this should be >= instead of > to avoid an out of bounds access. Fixes: 3952657848c0 ("wifi: ath12k: Use mac80211 vif's link_conf instead of bss_conf") Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org> --- drivers/net/wireless/ath/ath12k/wmi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)