We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent f944ad1 commit cea67a2Copy full SHA for cea67a2
net/ipv6/route.c
@@ -1835,11 +1835,16 @@ static void ip6_multipath_l3_keys(const struct sk_buff *skb,
1835
const struct ipv6hdr *inner_iph;
1836
const struct icmp6hdr *icmph;
1837
struct ipv6hdr _inner_iph;
1838
+ struct icmp6hdr _icmph;
1839
1840
if (likely(outer_iph->nexthdr != IPPROTO_ICMPV6))
1841
goto out;
1842
- icmph = icmp6_hdr(skb);
1843
+ icmph = skb_header_pointer(skb, skb_transport_offset(skb),
1844
+ sizeof(_icmph), &_icmph);
1845
+ if (!icmph)
1846
+ goto out;
1847
+
1848
if (icmph->icmp6_type != ICMPV6_DEST_UNREACH &&
1849
icmph->icmp6_type != ICMPV6_PKT_TOOBIG &&
1850
icmph->icmp6_type != ICMPV6_TIME_EXCEED &&
0 commit comments