mirror of
https://git.kernel.org/pub/scm/network/wireless/iwd.git
synced 2024-11-05 03:29:24 +01:00
network: add L_WARN for known network lookup failure
When updating the network ranking there was a potential out of bounds array access. The condition was if known_network_offset returned a negative value, indicating the known network was not found. Since network->info is only set for known networks this should not ever happen as network->info is checked prior. Though this is likely impossible, knownnetworks is complex enough that its better to just be paranoid and put an L_WARN_ON to check the return.
This commit is contained in:
parent
cf6499387f
commit
0d7fbfe523
@ -1376,6 +1376,8 @@ void network_rank_update(struct network *network, bool connected)
|
|||||||
if (network->info->connected_time != 0) {
|
if (network->info->connected_time != 0) {
|
||||||
int n = known_network_offset(network->info);
|
int n = known_network_offset(network->info);
|
||||||
|
|
||||||
|
L_WARN_ON(n < 0);
|
||||||
|
|
||||||
if (n >= (int) L_ARRAY_SIZE(rankmod_table))
|
if (n >= (int) L_ARRAY_SIZE(rankmod_table))
|
||||||
n = L_ARRAY_SIZE(rankmod_table) - 1;
|
n = L_ARRAY_SIZE(rankmod_table) - 1;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user