Lines Matching full:checksum

80 	case IPPROTO_TCP:  // For TCP & UDP the checksum neutrality of the chosen IPv6  in sched_cls_ingress6_nat_6_prog()
83 case IPPROTO_ESP: // since there is never a checksum to update. in sched_cls_ingress6_nat_6_prog()
108 // Calculate the IPv4 one's complement checksum of the IPv4 header. in sched_cls_ingress6_nat_6_prog()
119 // Calculate the *negative* IPv6 16-bit one's complement checksum of the IPv6 header. in sched_cls_ingress6_nat_6_prog()
125 // Note that there is no L4 checksum update: we are relying on the checksum neutrality in sched_cls_ingress6_nat_6_prog()
182 // Calculate the IPv4 one's complement checksum of the IPv4 header. in sched_cls_egress4_snat4_prog()
191 // for a correct checksum we should get *a* zero, but sum4 must be positive, ie 0xFFFF in sched_cls_egress4_snat4_prog()
204 case IPPROTO_TCP: // For TCP & UDP the checksum neutrality of the chosen IPv6 in sched_cls_egress4_snat4_prog()
207 break; // since there is never a checksum to update. in sched_cls_egress4_snat4_prog()
213 // If IPv4/UDP checksum is 0 then fallback to clatd so it can calculate the in sched_cls_egress4_snat4_prog()
214 // checksum. Otherwise the network or more likely the NAT64 gateway might in sched_cls_egress4_snat4_prog()
215 // drop the packet because in most cases IPv6/UDP packets with a zero checksum in sched_cls_egress4_snat4_prog()
216 // are invalid. See RFC 6935. TODO: calculate checksum via bpf_csum_diff() in sched_cls_egress4_snat4_prog()
246 // Calculate the IPv6 16-bit one's complement checksum of the IPv6 header. in sched_cls_egress4_snat4_prog()
260 // However, we've already verified the ipv4 checksum is correct and thus 0. in sched_cls_egress4_snat4_prog()