Skip to content

Commit

Permalink
net: iosm: Prevent underflow in ipc_chnl_cfg_get()
Browse files Browse the repository at this point in the history
The bounds check on "index" doesn't catch negative values.  Using
ARRAY_SIZE() directly is more readable and more robust because it prevents
negative values for "index".  Fortunately we only pass valid values to
ipc_chnl_cfg_get() so this patch does not affect runtime.

Reported-by: Solomon Ucko <solly.ucko@gmail.com>
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Reviewed-by: M Chetan Kumar <m.chetan.kumar@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Dan Carpenter authored and David S. Miller committed Aug 16, 2021
1 parent 517c54d commit 4f3f2e3
Showing 1 changed file with 3 additions and 4 deletions.
7 changes: 3 additions & 4 deletions drivers/net/wwan/iosm/iosm_ipc_chnl_cfg.c
Original file line number Diff line number Diff line change
Expand Up @@ -64,10 +64,9 @@ static struct ipc_chnl_cfg modem_cfg[] = {

int ipc_chnl_cfg_get(struct ipc_chnl_cfg *chnl_cfg, int index)
{
int array_size = ARRAY_SIZE(modem_cfg);

if (index >= array_size) {
pr_err("index: %d and array_size %d", index, array_size);
if (index >= ARRAY_SIZE(modem_cfg)) {
pr_err("index: %d and array size %zu", index,
ARRAY_SIZE(modem_cfg));
return -ECHRNG;
}

Expand Down

0 comments on commit 4f3f2e3

Please sign in to comment.