mirror of
https://github.com/torvalds/linux.git
synced 2026-07-28 10:09:10 +02:00
staging: rtl8723bs: fix buffer over-read in rtw_update_protection
rtw_update_protection() is called with a pointer offset into the ies buffer but the full ie_length is passed, causing a potential buffer over-read. Fixes:e945c43df6("Staging: rtl8723bs: Delete dead code from update_current_network()") Fixes:d3fcee1b78("staging: rtl8723bs: fix camel case in struct wlan_bssid_ex") Reported-by: Luka Gejak <luka.gejak@linux.dev> Closes: https://lore.kernel.org/linux-staging/DI2H39EAAFBZ.3KI5NWN02AQ2S@linux.dev Cc: stable@vger.kernel.org Signed-off-by: Salman Alghamdi <me@cipherat.com> Reviewed-by: Luka Gejak <luka.gejak@linux.dev> Link: https://patch.msgid.link/20260508222649.23989-1-me@cipherat.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
5d6919055d
commit
514ab98364
|
|
@ -464,8 +464,11 @@ static void update_current_network(struct adapter *adapter, struct wlan_bssid_ex
|
|||
|
||||
if (check_fwstate(pmlmepriv, _FW_LINKED) && (is_same_network(&pmlmepriv->cur_network.network, pnetwork, 0))) {
|
||||
update_network(&pmlmepriv->cur_network.network, pnetwork, adapter, true);
|
||||
if (pmlmepriv->cur_network.network.ie_length < sizeof(struct ndis_802_11_fix_ie))
|
||||
return;
|
||||
|
||||
rtw_update_protection(adapter, (pmlmepriv->cur_network.network.ies) + sizeof(struct ndis_802_11_fix_ie),
|
||||
pmlmepriv->cur_network.network.ie_length);
|
||||
pmlmepriv->cur_network.network.ie_length - sizeof(struct ndis_802_11_fix_ie));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1072,8 +1075,11 @@ static void rtw_joinbss_update_network(struct adapter *padapter, struct wlan_net
|
|||
break;
|
||||
}
|
||||
|
||||
if (cur_network->network.ie_length < sizeof(struct ndis_802_11_fix_ie))
|
||||
return;
|
||||
|
||||
rtw_update_protection(padapter, (cur_network->network.ies) + sizeof(struct ndis_802_11_fix_ie),
|
||||
(cur_network->network.ie_length));
|
||||
(cur_network->network.ie_length - sizeof(struct ndis_802_11_fix_ie)));
|
||||
|
||||
rtw_update_ht_cap(padapter, cur_network->network.ies, cur_network->network.ie_length, (u8) cur_network->network.configuration.ds_config);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user