We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 19bf346 commit cb9e5a0Copy full SHA for cb9e5a0
net/ipv6/route.c
@@ -1222,11 +1222,16 @@ static void ip6_multipath_l3_keys(const struct sk_buff *skb,
1222
const struct ipv6hdr *inner_iph;
1223
const struct icmp6hdr *icmph;
1224
struct ipv6hdr _inner_iph;
1225
+ struct icmp6hdr _icmph;
1226
1227
if (likely(outer_iph->nexthdr != IPPROTO_ICMPV6))
1228
goto out;
1229
- icmph = icmp6_hdr(skb);
1230
+ icmph = skb_header_pointer(skb, skb_transport_offset(skb),
1231
+ sizeof(_icmph), &_icmph);
1232
+ if (!icmph)
1233
+ goto out;
1234
+
1235
if (icmph->icmp6_type != ICMPV6_DEST_UNREACH &&
1236
icmph->icmp6_type != ICMPV6_PKT_TOOBIG &&
1237
icmph->icmp6_type != ICMPV6_TIME_EXCEED &&
0 commit comments