wifi: rtw88: fix the 'para' buffer size to avoid reading out of bounds
[ Upstream commit 4c2c372de2e108319236203cce6de44d70ae15cd ]
Set the size to 6 instead of 2, since 'para' array is passed to
'rtw_fw_bt_wifi_control(rtwdev, para[0], ¶[1])', which reads
5 bytes:
void rtw_fw_bt_wifi_control(struct rtw_dev *rtwdev, u8 op_code, u8 *data)
{
...
SET_BT_WIFI_CONTROL_DATA1(h2c_pkt, *data);
SET_BT_WIFI_CONTROL_DATA2(h2c_pkt, *(data + 1));
...
SET_BT_WIFI_CONTROL_DATA5(h2c_pkt, *(data + 4));
Detected using the static analysis tool - Svace.
Fixes: 4136214f7c
("rtw88: add BT co-existence support")
Signed-off-by: Alexey Kodanev <aleksei.kodanev@bell-sw.com>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Link: https://patch.msgid.link/20250513121304.124141-1-aleksei.kodanev@bell-sw.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
f61b8fecec
commit
74e18211c2
@@ -309,7 +309,7 @@ static void rtw_coex_tdma_timer_base(struct rtw_dev *rtwdev, u8 type)
|
|||||||
{
|
{
|
||||||
struct rtw_coex *coex = &rtwdev->coex;
|
struct rtw_coex *coex = &rtwdev->coex;
|
||||||
struct rtw_coex_stat *coex_stat = &coex->stat;
|
struct rtw_coex_stat *coex_stat = &coex->stat;
|
||||||
u8 para[2] = {0};
|
u8 para[6] = {};
|
||||||
u8 times;
|
u8 times;
|
||||||
u16 tbtt_interval = coex_stat->wl_beacon_interval;
|
u16 tbtt_interval = coex_stat->wl_beacon_interval;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user