Lines Matching defs:iph
166 static int ipv6_exthdrs_len(struct ipv6hdr *iph,
169 struct ipv6_opt_hdr *opth = (void *)iph;
170 int len = 0, proto, optlen = sizeof(*iph);
172 proto = iph->nexthdr;
195 struct ipv6hdr *iph;
203 hlen = off + sizeof(*iph);
204 iph = skb_gro_header(skb, hlen, off);
205 if (unlikely(!iph))
209 skb_gro_pull(skb, sizeof(*iph));
212 flush += ntohs(iph->payload_len) != skb_gro_len(skb);
214 proto = iph->nexthdr;
228 iph = ipv6_hdr(skb);
244 first_word = *(__be32 *)iph ^ *(__be32 *)iph2;
253 !ipv6_addr_equal(&iph->saddr, &iph2->saddr) ||
254 !ipv6_addr_equal(&iph->daddr, &iph2->daddr) ||
255 iph->nexthdr != iph2->nexthdr) {
261 if (memcmp(iph + 1, iph2 + 1,
267 (__force __be32)(iph->hop_limit ^ iph2->hop_limit));
280 skb_gro_postpull_rcsum(skb, iph, nlen);
324 struct ipv6hdr *iph;
333 payload_len = skb->len - nhoff - sizeof(*iph);
345 iph = (struct ipv6hdr *)(skb->data + nhoff);
346 hop_jumbo = (struct hop_jumbo_hdr *)(iph + 1);
349 hop_jumbo->nexthdr = iph->nexthdr;
355 iph->nexthdr = NEXTHDR_HOP;
356 iph->payload_len = 0;
358 iph = (struct ipv6hdr *)(skb->data + nhoff);
359 iph->payload_len = htons(payload_len);
362 nhoff += sizeof(*iph) + ipv6_exthdrs_len(iph, &ops);