wifi: ath12k: Off by one in ath12k_wmi_process_csa_switch_count_event()
authorDan Carpenter <dan.carpenter@linaro.org>
Fri, 6 Dec 2024 12:52:29 +0000 (15:52 +0300)
committerJeff Johnson <jeff.johnson@oss.qualcomm.com>
Wed, 11 Dec 2024 17:18:54 +0000 (09:18 -0800)
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>
Link: https://patch.msgid.link/755becb1-819b-484d-8fac-9a2db53ced1b@stanley.mountain
Signed-off-by: Jeff Johnson <jeff.johnson@oss.qualcomm.com>
drivers/net/wireless/ath/ath12k/wmi.c

index 402ae477da61b401ccbbe2e6d96889557d37270d..46c5027e4f1cf00ad5cc8d707f4880e605b7f5c7 100644 (file)
@@ -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;