if (ip6->nexthdr == IP6_PROTO_FRAG) {
if (unlikely(l4hdr + sizeof(struct ip6_fraghdr) > data_end))
return XDP_DROP;
frag6 = (struct ip6_fraghdr*) l4hdr;
l4hdr = l4hdr + sizeof(struct ip6_fraghdr);
v6nexthdr = frag6->nexthdr;
if (ip6->nexthdr == IP6_PROTO_FRAG) {
if (unlikely(l4hdr + sizeof(struct ip6_fraghdr) > data_end))
return XDP_DROP;
frag6 = (struct ip6_fraghdr*) l4hdr;
l4hdr = l4hdr + sizeof(struct ip6_fraghdr);
v6nexthdr = frag6->nexthdr;