From: Stefano Brivio <[email protected]> Date: Wed, 2 Jan 2019 13:29:27 +0100
> In ip6_neigh_lookup(), we must not return errors coming from > neigh_create(): if creation of a neighbour entry fails, the lookup should > return NULL, in the same way as it's done in __neigh_lookup(). > > Otherwise, callers legitimately checking for a non-NULL return value of > the lookup function might dereference an invalid pointer. > > For instance, on neighbour table overflow, ndisc_router_discovery() > crashes ndisc_update() by passing ERR_PTR(-ENOBUFS) as 'neigh' argument. > > Reported-by: Jianlin Shi <[email protected]> > Fixes: f8a1b43b709d ("net/ipv6: Create a neigh_lookup for FIB entries") > Signed-off-by: Stefano Brivio <[email protected]> Applied and queued up for -stable, thank you.
