Re: [PATCH linux-next 4/4] net/dsa: fix possible NULL pointer dereference in dsa_slave_get_iflink

From: Guenter Roeck
Date: Tue Apr 14 2015 - 11:56:37 EST


On Tue, Apr 14, 2015 at 11:20:17PM +0800, Honggang Li wrote:
> Signed-off-by: Honggang Li <honli@xxxxxxxxxx>
> ---
> net/dsa/slave.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/net/dsa/slave.c b/net/dsa/slave.c
> index 827cda56..070b599 100644
> --- a/net/dsa/slave.c
> +++ b/net/dsa/slave.c
> @@ -59,7 +59,10 @@ static int dsa_slave_get_iflink(const struct net_device *dev)
> {
> struct dsa_slave_priv *p = netdev_priv(dev);
>
> - return p->parent->dst->master_netdev->ifindex;
> + if (p && p->parent && p->parent->dst && p->parent->dst->master_netdev)
> + return p->parent->dst->master_netdev->ifindex;
> + else
> + return 0;
> }
I would expect some explanation why you believe that any of those pointers
can be NULL.

Guenter
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/