wil6210: update cid boundary check of wil_find_cid/_by_idx()

The return value of wil_find_cid()/wil_find_cid_by_idx() is
validated with the lower boundary value.
Check the upper boundary value as well.

Signed-off-by: Alexei Avshalom Lazar <ailizaro@codeaurora.org>
Signed-off-by: Maya Erez <merez@codeaurora.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
Alexei Avshalom Lazar
2019-06-16 10:26:03 +03:00
zatwierdzone przez Kalle Valo
rodzic f2b6b46e48
commit c478ac9daa
2 zmienionych plików z 5 dodań i 5 usunięć

Wyświetl plik

@@ -380,8 +380,8 @@ static int wil_cfg80211_get_station(struct wiphy *wiphy,
wil_dbg_misc(wil, "get_station: %pM CID %d MID %d\n", mac, cid,
vif->mid);
if (cid < 0)
return cid;
if (!wil_cid_valid(wil, cid))
return -ENOENT;
rc = wil_cid_fill_sinfo(vif, cid, sinfo);
@@ -417,7 +417,7 @@ static int wil_cfg80211_dump_station(struct wiphy *wiphy,
int rc;
int cid = wil_find_cid_by_idx(wil, vif->mid, idx);
if (cid < 0)
if (!wil_cid_valid(wil, cid))
return -ENOENT;
ether_addr_copy(mac, wil->sta[cid].addr);