net/bonding: fix possible null pointer reference
Checks
Commit Message
In function check_for_bonded_ethdev the driver name is used without
validating the pointer references in the passed ethdev object.
Fixes: 740feaf349b1 ("ethdev: remove driver name from device private data")
Cc: stable@dpdk.org
Signed-off-by: Declan Doherty <declan.doherty@intel.com>
---
drivers/net/bonding/rte_eth_bond_api.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
Comments
On 1/8/2019 11:17 AM, Declan Doherty wrote:
> In function check_for_bonded_ethdev the driver name is used without
> validating the pointer references in the passed ethdev object.
>
> Fixes: 740feaf349b1 ("ethdev: remove driver name from device private data")
> Cc: stable@dpdk.org
>
> Signed-off-by: Declan Doherty <declan.doherty@intel.com>
Applied to dpdk-next-net/master, thanks.
@@ -19,7 +19,10 @@ int
check_for_bonded_ethdev(const struct rte_eth_dev *eth_dev)
{
/* Check valid pointer */
- if (eth_dev->device->driver->name == NULL)
+ if (eth_dev == NULL ||
+ eth_dev->device == NULL ||
+ eth_dev->device->driver == NULL ||
+ eth_dev->device->driver->name == NULL)
return -1;
/* return 0 if driver name matches */