diff options
author | Volodymyr Mytnyk <vmytnyk@marvell.com> | 2022-02-18 14:29:11 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2022-02-19 18:56:50 +0000 |
commit | 48c77bdf729a91fa7f65765d3f60f01e0ac320c5 (patch) | |
tree | b3824abdd6668c73119604616d0d2902dcadb898 /drivers | |
parent | 173a272a9f17b7b88d13b12250123075966990d1 (diff) |
net: prestera: acl: fix 'client_map' buff overflow
smatch warnings:
drivers/net/ethernet/marvell/prestera/prestera_acl.c:103
prestera_acl_chain_to_client() error: buffer overflow
'client_map' 3 <= 3
prestera_acl_chain_to_client(u32 chain_index, ...)
...
u32 client_map[] = {
PRESTERA_HW_COUNTER_CLIENT_LOOKUP_0,
PRESTERA_HW_COUNTER_CLIENT_LOOKUP_1,
PRESTERA_HW_COUNTER_CLIENT_LOOKUP_2
};
if (chain_index > ARRAY_SIZE(client_map))
...
Fixes: fa5d824ce5dd ("net: prestera: acl: add multi-chain support offload")
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Volodymyr Mytnyk <vmytnyk@marvell.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/ethernet/marvell/prestera/prestera_acl.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethernet/marvell/prestera/prestera_acl.c b/drivers/net/ethernet/marvell/prestera/prestera_acl.c index 06303e31b32a..e4af8a503277 100644 --- a/drivers/net/ethernet/marvell/prestera/prestera_acl.c +++ b/drivers/net/ethernet/marvell/prestera/prestera_acl.c @@ -97,7 +97,7 @@ int prestera_acl_chain_to_client(u32 chain_index, u32 *client) PRESTERA_HW_COUNTER_CLIENT_LOOKUP_2 }; - if (chain_index > ARRAY_SIZE(client_map)) + if (chain_index >= ARRAY_SIZE(client_map)) return -EINVAL; *client = client_map[chain_index]; |