net: systemport: fix index check to avoid an array out of bounds access
[ Upstream commit c0368595c1639947839c0db8294ee96aca0b3b86 ] Currently the bounds check on index is off by one and can lead to an out of bounds access on array priv->filters_loc when index is RXCHK_BRCM_TAG_MAX. Fixes: bb9051a2b230 ("net: systemport: Add support for WAKE_FILTER") Signed-off-by: Colin Ian King <colin.king@canonical.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
62a24fad96
commit
6ea05d53b9
@ -2135,7 +2135,7 @@ static int bcm_sysport_rule_set(struct bcm_sysport_priv *priv,
|
||||
return -ENOSPC;
|
||||
|
||||
index = find_first_zero_bit(priv->filters, RXCHK_BRCM_TAG_MAX);
|
||||
if (index > RXCHK_BRCM_TAG_MAX)
|
||||
if (index >= RXCHK_BRCM_TAG_MAX)
|
||||
return -ENOSPC;
|
||||
|
||||
/* Location is the classification ID, and index is the position
|
||||
|
Loading…
x
Reference in New Issue
Block a user