diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2020-05-08 17:37:20 +0300 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2020-05-09 04:43:27 +0300 |
commit | 6d32a5119811d2e9b5caa284181944c6f1f192ed (patch) | |
tree | 3a488f8d1fdcbc2eddfff874ef81ae5004980f01 /drivers/net/ethernet/freescale | |
parent | 5099dea0a59f1c89525bb0ceac36689178a4c125 (diff) | |
download | linux-6d32a5119811d2e9b5caa284181944c6f1f192ed.tar.xz |
dpaa2-eth: prevent array underflow in update_cls_rule()
The "location" is controlled by the user via the ethtool_set_rxnfc()
function. This update_cls_rule() function checks for array overflows
but it doesn't check if the value is negative. I have changed the type
to unsigned to prevent array underflows.
Fixes: afb90dbb5f78 ("dpaa2-eth: Add ethtool support for flow classification")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'drivers/net/ethernet/freescale')
-rw-r--r-- | drivers/net/ethernet/freescale/dpaa2/dpaa2-ethtool.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethernet/freescale/dpaa2/dpaa2-ethtool.c b/drivers/net/ethernet/freescale/dpaa2/dpaa2-ethtool.c index 94347c695233..b7141fdc279e 100644 --- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-ethtool.c +++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-ethtool.c @@ -635,7 +635,7 @@ static int num_rules(struct dpaa2_eth_priv *priv) static int update_cls_rule(struct net_device *net_dev, struct ethtool_rx_flow_spec *new_fs, - int location) + unsigned int location) { struct dpaa2_eth_priv *priv = netdev_priv(net_dev); struct dpaa2_eth_cls_rule *rule; |