Lines Matching defs:uh

25 	struct udphdr *uh = udp_hdr(skb);
37 * We cannot rely on the value contained in uh->len as it is
43 partial = (__force __wsum)uh->len;
46 partial = csum_sub(csum_unfold(uh->check), partial);
119 uh = udp_hdr(skb);
126 uh->len = htons(skb_shinfo(skb)->gso_size +
128 skb->head - (unsigned char *)uh);
130 uh->len = htons(len);
136 uh->check = ~csum_fold(csum_add(partial,
140 uh->check = gso_make_checksum(skb, ~uh->check);
141 if (uh->check == 0)
142 uh->check = CSUM_MANGLED_0;
196 struct udphdr *uh;
202 uh = udp_hdr(seg);
205 if (uh->check) {
206 inet_proto_csum_replace4(&uh->check, seg, *oldip, *newip,
208 inet_proto_csum_replace2(&uh->check, seg, *oldport, *newport,
210 if (!uh->check)
211 uh->check = CSUM_MANGLED_0;
222 struct udphdr *uh, *uh2;
226 uh = udp_hdr(seg);
241 &uh2->source, &uh->source);
244 &uh2->dest, &uh->dest);
271 struct udphdr *uh;
278 if (gso_skb->len <= sizeof(*uh) + mss)
288 skb_shinfo(gso_skb)->gso_segs = DIV_ROUND_UP(gso_skb->len - sizeof(*uh),
295 if (skb_pagelen(gso_skb) - sizeof(*uh) == skb_shinfo(gso_skb)->gso_size)
303 uh = udp_hdr(gso_skb);
305 uh->check = ~udp_v6_check(gso_skb->len,
309 uh->check = ~udp_v4_check(gso_skb->len,
314 skb_pull(gso_skb, sizeof(*uh));
340 uh = udp_hdr(seg);
348 newlen = htons(sizeof(*uh) + mss);
349 check = csum16_add(csum16_sub(uh->check, uh->len), newlen);
361 uh->len = newlen;
362 uh->check = check;
367 uh->check = gso_make_checksum(seg, ~check) ? :
371 uh = udp_hdr(seg);
377 check = csum16_add(csum16_sub(uh->check, uh->len), newlen);
379 uh->len = newlen;
380 uh->check = check;
385 uh->check = gso_make_checksum(seg, ~check) ? : CSUM_MANGLED_0;
409 struct udphdr *uh;
437 uh = udp_hdr(skb);
440 uh->check = 0;
442 uh->check = udp_v4_check(skb->len, iph->saddr, iph->daddr, csum);
443 if (uh->check == 0)
444 uh->check = CSUM_MANGLED_0;
495 struct udphdr *uh = udp_gro_udphdr(skb);
504 if (!uh->check) {
510 ulen = ntohs(uh->len);
511 if (ulen <= sizeof(*uh) || ulen != skb_gro_len(skb)) {
525 if ((*(u32 *)&uh->source != *(u32 *)&uh2->source)) {
565 skb_gro_postpull_rcsum(skb, uh,
584 struct udphdr *uh, struct sock *sk)
617 (uh->check && skb->ip_summed != CHECKSUM_PARTIAL &&
636 if ((*(u32 *)&uh->source != *(u32 *)&uh2->source) ||
637 (!uh->check ^ !uh2->check)) {
644 skb_gro_postpull_rcsum(skb, uh, sizeof(struct udphdr));
670 struct udphdr *uh = udp_gro_udphdr(skb);
674 if (unlikely(!uh))
681 if (skb_gro_checksum_validate_zero_check(skb, IPPROTO_UDP, uh->check,
684 else if (uh->check)
691 sk = udp4_gro_lookup_skb(skb, uh->source, uh->dest);
693 pp = udp_gro_receive(head, skb, uh, sk);
703 struct udphdr *uh = udp_hdr(skb);
705 skb->csum_start = (unsigned char *)uh - skb->head;
722 struct udphdr *uh = (struct udphdr *)(skb->data + nhoff);
726 uh->len = newlen;
729 udp4_lib_lookup_skb, skb, uh->source, uh->dest);
731 skb_shinfo(skb)->gso_type = uh->check ? SKB_GSO_UDP_TUNNEL_CSUM
760 struct udphdr *uh = (struct udphdr *)(skb->data + nhoff);
764 uh->len = htons(skb->len - nhoff);
774 if (uh->check)
775 uh->check = ~udp_v4_check(skb->len - nhoff, iph->saddr,