In the Linux kernel, the following vulnerability has been resolved:
icmp: prevent possible NULL dereferences from icmp_build_probe()
First problem is a double call to __in_dev_get_rcu(), because
the second one could return NULL.
if (__in_dev_get_rcu(dev) && __in_dev_get_rcu(dev)->ifa_list)
Second problem is a read from dev->ip6_ptr with no NULL check:
if (!list_empty(&rcu_dereference(dev->ip6_ptr)->addr_list))
Use the correct RCU API to fix these.
v2: add missing include <net/addrconf.h>
git.kernel.org/stable/c/23b7ee4a8d559bf38eac7ce5bb2f6ebf76f9c401
git.kernel.org/stable/c/3e2979bf080c40da4f7c93aff8575ab8bc62b767
git.kernel.org/stable/c/599c9ad5e1d43f5c12d869f5fd406ba5d8c55270
git.kernel.org/stable/c/c58e88d49097bd12dfcfef4f075b43f5d5830941
git.kernel.org/stable/c/d68dc711d84fdcf698e5d45308c3ddeede586350