Lines Matching refs:iph
198 static int ipv6_exthdrs_len(struct ipv6hdr *iph, in ipv6_exthdrs_len() argument
201 struct ipv6_opt_hdr *opth = (void *)iph; in ipv6_exthdrs_len()
202 int len = 0, proto, optlen = sizeof(*iph); in ipv6_exthdrs_len()
204 proto = iph->nexthdr; in ipv6_exthdrs_len()
226 struct ipv6hdr *iph; in ipv6_gro_receive() local
234 hlen = off + sizeof(*iph); in ipv6_gro_receive()
235 iph = skb_gro_header(skb, hlen, off); in ipv6_gro_receive()
236 if (unlikely(!iph)) in ipv6_gro_receive()
241 flush += ntohs(iph->payload_len) != skb->len - hlen; in ipv6_gro_receive()
243 proto = iph->nexthdr; in ipv6_gro_receive()
252 iph = skb_gro_network_header(skb); in ipv6_gro_receive()
254 skb_gro_pull(skb, sizeof(*iph)); in ipv6_gro_receive()
272 first_word = *(__be32 *)iph ^ *(__be32 *)iph2; in ipv6_gro_receive()
281 !ipv6_addr_equal(&iph->saddr, &iph2->saddr) || in ipv6_gro_receive()
282 !ipv6_addr_equal(&iph->daddr, &iph2->daddr) || in ipv6_gro_receive()
283 iph->nexthdr != iph2->nexthdr) { in ipv6_gro_receive()
289 if (memcmp(iph + 1, iph2 + 1, in ipv6_gro_receive()
297 skb_gro_postpull_rcsum(skb, iph, nlen); in ipv6_gro_receive()
341 struct ipv6hdr *iph; in ipv6_gro_complete() local
350 payload_len = skb->len - nhoff - sizeof(*iph); in ipv6_gro_complete()
362 iph = (struct ipv6hdr *)(skb->data + nhoff); in ipv6_gro_complete()
363 hop_jumbo = (struct hop_jumbo_hdr *)(iph + 1); in ipv6_gro_complete()
366 hop_jumbo->nexthdr = iph->nexthdr; in ipv6_gro_complete()
372 iph->nexthdr = NEXTHDR_HOP; in ipv6_gro_complete()
373 iph->payload_len = 0; in ipv6_gro_complete()
375 iph = (struct ipv6hdr *)(skb->data + nhoff); in ipv6_gro_complete()
376 iph->payload_len = htons(payload_len); in ipv6_gro_complete()
379 nhoff += sizeof(*iph) + ipv6_exthdrs_len(iph, &ops); in ipv6_gro_complete()