| /Linux-v5.4/tools/testing/selftests/bpf/progs/ | 
| D | test_tcp_check_syncookie_kern.c | 52 	struct ipv6hdr *ipv6h;  in check_syncookie()  local98 		ipv6h = data + sizeof(struct ethhdr);  in check_syncookie()
 99 		if (ipv6h + 1 > data_end)  in check_syncookie()
 102 		if (ipv6h->nexthdr != IPPROTO_TCP)  in check_syncookie()
 109 		memcpy(tup.ipv6.saddr, &ipv6h->saddr, sizeof(tup.ipv6.saddr));  in check_syncookie()
 110 		memcpy(tup.ipv6.daddr, &ipv6h->daddr, sizeof(tup.ipv6.daddr));  in check_syncookie()
 122 		seq_mss = gen_syncookie(data_end, sk, ipv6h, sizeof(*ipv6h),  in check_syncookie()
 125 		ret = bpf_tcp_check_syncookie(sk, ipv6h, sizeof(*ipv6h),  in check_syncookie()
 
 | 
| /Linux-v5.4/net/ipv6/ | 
| D | udp_offload.c | 39 		const struct ipv6hdr *ipv6h;  in udp6_ufo_fragment()  local56 		ipv6h = ipv6_hdr(skb);  in udp6_ufo_fragment()
 60 		uh->check = udp_v6_check(skb->len, &ipv6h->saddr,  in udp6_ufo_fragment()
 61 					  &ipv6h->daddr, csum);  in udp6_ufo_fragment()
 144 	const struct ipv6hdr *ipv6h = ipv6_hdr(skb);  in udp6_gro_complete()  local
 148 		uh->check = ~udp_v6_check(skb->len - nhoff, &ipv6h->saddr,  in udp6_gro_complete()
 149 					  &ipv6h->daddr, 0);  in udp6_gro_complete()
 
 | 
| D | ip6_offload.c | 75 	struct ipv6hdr *ipv6h;  in ipv6_gso_segment()  local88 	if (unlikely(!pskb_may_pull(skb, sizeof(*ipv6h))))  in ipv6_gso_segment()
 94 	SKB_GSO_CB(skb)->encap_level += sizeof(*ipv6h);  in ipv6_gso_segment()
 96 	ipv6h = ipv6_hdr(skb);  in ipv6_gso_segment()
 97 	__skb_pull(skb, sizeof(*ipv6h));  in ipv6_gso_segment()
 100 	proto = ipv6_gso_pull_exthdrs(skb, ipv6h->nexthdr);  in ipv6_gso_segment()
 122 		ipv6h = (struct ipv6hdr *)(skb_mac_header(skb) + nhoff);  in ipv6_gso_segment()
 126 				      skb->head - (unsigned char *)(ipv6h + 1);  in ipv6_gso_segment()
 128 			payload_len = skb->len - nhoff - sizeof(*ipv6h);  in ipv6_gso_segment()
 129 		ipv6h->payload_len = htons(payload_len);  in ipv6_gso_segment()
 [all …]
 
 | 
| D | ip6_tunnel.c | 400 	const struct ipv6hdr *ipv6h = (const struct ipv6hdr *)raw;  in ip6_tnl_parse_tlv_enc_lim()  local402 	unsigned int off = nhoff + sizeof(*ipv6h);  in ip6_tnl_parse_tlv_enc_lim()
 403 	u8 next, nexthdr = ipv6h->nexthdr;  in ip6_tnl_parse_tlv_enc_lim()
 472 	const struct ipv6hdr *ipv6h = (const struct ipv6hdr *)skb->data;  in ip6_tnl_err()  local
 488 	t = ip6_tnl_lookup(dev_net(skb->dev), &ipv6h->daddr, &ipv6h->saddr);  in ip6_tnl_err()
 536 		len = sizeof(*ipv6h) + ntohs(ipv6h->payload_len);  in ip6_tnl_err()
 696 				       const struct ipv6hdr *ipv6h,  in ip4ip6_dscp_ecn_decapsulate()  argument
 699 	__u8 dsfield = ipv6_get_dsfield(ipv6h) & ~INET_ECN_MASK;  in ip4ip6_dscp_ecn_decapsulate()
 704 	return IP6_ECN_decapsulate(ipv6h, skb);  in ip4ip6_dscp_ecn_decapsulate()
 708 				       const struct ipv6hdr *ipv6h,  in ip6ip6_dscp_ecn_decapsulate()  argument
 [all …]
 
 | 
| D | tcpv6_offload.c | 53 		const struct ipv6hdr *ipv6h = ipv6_hdr(skb);  in tcp6_gso_segment()  local62 		__tcp_v6_send_check(skb, &ipv6h->saddr, &ipv6h->daddr);  in tcp6_gso_segment()
 
 | 
| D | ip6_gre.c | 425 	const struct ipv6hdr *ipv6h;  in ip6gre_err()  local433 	ipv6h = (const struct ipv6hdr *)skb->data;  in ip6gre_err()
 434 	t = ip6gre_tunnel_lookup(skb->dev, &ipv6h->daddr, &ipv6h->saddr,  in ip6gre_err()
 491 	const struct ipv6hdr *ipv6h;  in ip6gre_rcv()  local
 494 	ipv6h = ipv6_hdr(skb);  in ip6gre_rcv()
 496 				      &ipv6h->saddr, &ipv6h->daddr, tpi->key,  in ip6gre_rcv()
 527 	const struct ipv6hdr *ipv6h;  in ip6erspan_rcv()  local
 532 	ipv6h = ipv6_hdr(skb);  in ip6erspan_rcv()
 537 				      &ipv6h->saddr, &ipv6h->daddr, tpi->key,  in ip6erspan_rcv()
 663 	struct ipv6hdr *ipv6h;  in prepare_ip6gre_xmit_ipv6()  local
 [all …]
 
 | 
| D | ip6_vti.c | 302 	const struct ipv6hdr *ipv6h = ipv6_hdr(skb);  in vti6_rcv()  local305 	t = vti6_tnl_lookup(dev_net(skb->dev), &ipv6h->saddr, &ipv6h->daddr);  in vti6_rcv()
 317 		ipv6h = ipv6_hdr(skb);  in vti6_rcv()
 318 		if (!ip6_tnl_rcv_ctl(t, &ipv6h->daddr, &ipv6h->saddr)) {  in vti6_rcv()
 
 | 
| D | sit.c | 604 	const struct ipv6hdr *ipv6h;  in packet_is_spoofed()  local616 	ipv6h = ipv6_hdr(skb);  in packet_is_spoofed()
 618 	if (unlikely(is_spoofed_6rd(tunnel, iph->saddr, &ipv6h->saddr))) {  in packet_is_spoofed()
 620 				     &iph->saddr, &ipv6h->saddr,  in packet_is_spoofed()
 621 				     &iph->daddr, &ipv6h->daddr);  in packet_is_spoofed()
 625 	if (likely(!is_spoofed_6rd(tunnel, iph->daddr, &ipv6h->daddr)))  in packet_is_spoofed()
 628 	if (only_dnatted(tunnel, &ipv6h->daddr))  in packet_is_spoofed()
 632 			     &iph->saddr, &ipv6h->saddr,  in packet_is_spoofed()
 633 			     &iph->daddr, &ipv6h->daddr);  in packet_is_spoofed()
 
 | 
| D | exthdrs.c | 212 	struct ipv6hdr *ipv6h = ipv6_hdr(skb);  in ipv6_dest_hao()  local236 	ret = xfrm6_input_addr(skb, (xfrm_address_t *)&ipv6h->daddr,  in ipv6_dest_hao()
 248 		ipv6h = ipv6_hdr(skb);  in ipv6_dest_hao()
 254 	swap(ipv6h->saddr, hao->addr);  in ipv6_dest_hao()
 
 | 
| D | tcp_ipv6.c | 926 	struct ipv6hdr *ipv6h = ipv6_hdr(skb);  in tcp_v6_send_reset()  local954 		key = tcp_v6_md5_do_lookup(sk, &ipv6h->saddr);  in tcp_v6_send_reset()
 965 					   &ipv6h->saddr,  in tcp_v6_send_reset()
 966 					   th->source, &ipv6h->daddr,  in tcp_v6_send_reset()
 973 		key = tcp_v6_md5_do_lookup(sk1, &ipv6h->saddr);  in tcp_v6_send_reset()
 996 				label = ip6_flowlabel(ipv6h);  in tcp_v6_send_reset()
 1005 			label = ip6_flowlabel(ipv6h);  in tcp_v6_send_reset()
 
 | 
| D | reassembly.c | 61 static u8 ip6_frag_ecn(const struct ipv6hdr *ipv6h)  in ip6_frag_ecn()  argument63 	return 1 << (ipv6_get_dsfield(ipv6h) & INET_ECN_MASK);  in ip6_frag_ecn()
 
 | 
| D | ip6mr.c | 1999 	struct ipv6hdr *ipv6h;  in ip6mr_forward2()  local2019 	ipv6h = ipv6_hdr(skb);  in ip6mr_forward2()
 2023 		.daddr = ipv6h->daddr,  in ip6mr_forward2()
 2053 	if (skb_cow(skb, sizeof(*ipv6h) + LL_RESERVED_SPACE(dev)))  in ip6mr_forward2()
 2056 	ipv6h = ipv6_hdr(skb);  in ip6mr_forward2()
 2057 	ipv6h->hop_limit--;  in ip6mr_forward2()
 
 | 
| /Linux-v5.4/include/net/ | 
| D | dsfield.h | 22 static inline __u8 ipv6_get_dsfield(const struct ipv6hdr *ipv6h)  in ipv6_get_dsfield()  argument24 	return ntohs(*(const __be16 *)ipv6h) >> 4;  in ipv6_get_dsfield()
 44 static inline void ipv6_change_dsfield(struct ipv6hdr *ipv6h,__u8 mask,  in ipv6_change_dsfield()  argument
 47 	__be16 *p = (__force __be16 *)ipv6h;  in ipv6_change_dsfield()
 
 | 
| /Linux-v5.4/net/netfilter/ | 
| D | xt_TCPMSS.c | 221 	struct ipv6hdr *ipv6h = ipv6_hdr(skb);  in tcpmss_tg6()  local227 	nexthdr = ipv6h->nexthdr;  in tcpmss_tg6()
 228 	tcphoff = ipv6_skip_exthdr(skb, sizeof(*ipv6h), &nexthdr, &frag_off);  in tcpmss_tg6()
 234 				   sizeof(*ipv6h) + sizeof(struct tcphdr));  in tcpmss_tg6()
 238 		ipv6h = ipv6_hdr(skb);  in tcpmss_tg6()
 239 		oldlen = ipv6h->payload_len;  in tcpmss_tg6()
 244 		ipv6h->payload_len = newlen;  in tcpmss_tg6()
 
 | 
| D | nf_nat_proto.c | 376 	struct ipv6hdr *ipv6h;  in nf_nat_ipv6_manip_pkt()  local381 	if (skb_ensure_writable(skb, iphdroff + sizeof(*ipv6h)))  in nf_nat_ipv6_manip_pkt()
 384 	ipv6h = (void *)skb->data + iphdroff;  in nf_nat_ipv6_manip_pkt()
 385 	nexthdr = ipv6h->nexthdr;  in nf_nat_ipv6_manip_pkt()
 386 	hdroff = ipv6_skip_exthdr(skb, iphdroff + sizeof(*ipv6h),  in nf_nat_ipv6_manip_pkt()
 396 	ipv6h = (void *)skb->data + iphdroff;  in nf_nat_ipv6_manip_pkt()
 400 		ipv6h->saddr = target->src.u3.in6;  in nf_nat_ipv6_manip_pkt()
 402 		ipv6h->daddr = target->dst.u3.in6;  in nf_nat_ipv6_manip_pkt()
 458 	const struct ipv6hdr *ipv6h = (struct ipv6hdr *)(skb->data + iphdroff);  in nf_nat_ipv6_csum_update()  local
 462 		oldip = &ipv6h->saddr;  in nf_nat_ipv6_csum_update()
 [all …]
 
 | 
| D | xt_TCPOPTSTRIP.c | 98 	struct ipv6hdr *ipv6h = ipv6_hdr(skb);  in tcpoptstrip_tg6()  local103 	nexthdr = ipv6h->nexthdr;  in tcpoptstrip_tg6()
 104 	tcphoff = ipv6_skip_exthdr(skb, sizeof(*ipv6h), &nexthdr, &frag_off);  in tcpoptstrip_tg6()
 
 | 
| /Linux-v5.4/net/tls/ | 
| D | tls_device_fallback.c | 171 	const struct ipv6hdr *ipv6h;  in update_chksum()  local185 		ipv6h = ipv6_hdr(skb);  in update_chksum()
 186 		th->check = ~csum_ipv6_magic(&ipv6h->saddr, &ipv6h->daddr,  in update_chksum()
 
 | 
| /Linux-v5.4/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ | 
| D | tls_rxtx.c | 331 		struct ipv6hdr *ipv6h = (struct ipv6hdr *)iph;  in tls_update_resync_sn()  local334 						&ipv6h->saddr, th->source,  in tls_update_resync_sn()
 335 						&ipv6h->daddr, ntohs(th->dest),  in tls_update_resync_sn()
 
 | 
| /Linux-v5.4/net/sched/ | 
| D | sch_taprio.c | 295 	const struct ipv6hdr *ipv6h;  in get_tcp_tstamp()  local299 	ipv6h = skb_header_pointer(skb, offset, sizeof(_ipv6h), &_ipv6h);  in get_tcp_tstamp()
 300 	if (!ipv6h)  in get_tcp_tstamp()
 303 	if (ipv6h->version == 4) {  in get_tcp_tstamp()
 304 		iph = (struct iphdr *)ipv6h;  in get_tcp_tstamp()
 311 			ipv6h = skb_header_pointer(skb, offset,  in get_tcp_tstamp()
 314 			if (!ipv6h || ipv6h->nexthdr != IPPROTO_TCP)  in get_tcp_tstamp()
 319 	} else if (ipv6h->version == 6 && ipv6h->nexthdr != IPPROTO_TCP) {  in get_tcp_tstamp()
 
 | 
| D | sch_cake.c | 869 	const struct ipv6hdr *ipv6h;  in cake_get_tcphdr()  local875 	ipv6h = skb_header_pointer(skb, offset, sizeof(_ipv6h), &_ipv6h);  in cake_get_tcphdr()
 877 	if (!ipv6h)  in cake_get_tcphdr()
 880 	if (ipv6h->version == 4) {  in cake_get_tcphdr()
 881 		iph = (struct iphdr *)ipv6h;  in cake_get_tcphdr()
 888 			ipv6h = skb_header_pointer(skb, offset,  in cake_get_tcphdr()
 891 			if (!ipv6h || ipv6h->nexthdr != IPPROTO_TCP)  in cake_get_tcphdr()
 900 	} else if (ipv6h->version == 6) {  in cake_get_tcphdr()
 901 		if (ipv6h->nexthdr != IPPROTO_TCP)  in cake_get_tcphdr()
 1117 	const struct ipv6hdr *ipv6h, *ipv6h_check;  in cake_ack_filter()  local
 [all …]
 
 | 
| /Linux-v5.4/net/ipv6/netfilter/ | 
| D | nf_conntrack_reasm.c | 133 static inline u8 ip6_frag_ecn(const struct ipv6hdr *ipv6h)  in ip6_frag_ecn()  argument135 	return 1 << (ipv6_get_dsfield(ipv6h) & INET_ECN_MASK);  in ip6_frag_ecn()
 
 | 
| /Linux-v5.4/drivers/net/ethernet/mellanox/mlx4/ | 
| D | en_rx.c | 602 			       struct ipv6hdr *ipv6h)  in get_fixed_ipv6_csum()  argument604 	__u8 nexthdr = ipv6h->nexthdr;  in get_fixed_ipv6_csum()
 613 	temp = csum_add(hw_checksum, *(__wsum *)ipv6h);  in get_fixed_ipv6_csum()
 615 	skb->csum = csum_add(temp, (__force __wsum)*(__be16 *)&ipv6h->nexthdr);  in get_fixed_ipv6_csum()
 
 | 
| /Linux-v5.4/drivers/net/ethernet/qlogic/qlcnic/ | 
| D | qlcnic_io.c | 1271 	struct ipv6hdr *ipv6h;  in qlcnic_process_lro()  local1323 		ipv6h = (struct ipv6hdr *)skb->data;  in qlcnic_process_lro()
 1326 		ipv6h->payload_len = htons(length);  in qlcnic_process_lro()
 1793 	struct ipv6hdr *ipv6h;  in qlcnic_83xx_process_lro()  local
 1845 		ipv6h = (struct ipv6hdr *)skb->data;  in qlcnic_83xx_process_lro()
 1849 		ipv6h->payload_len = htons(length);  in qlcnic_83xx_process_lro()
 
 | 
| /Linux-v5.4/drivers/net/ethernet/freescale/dpaa/ | 
| D | dpaa_eth.c | 1403 	struct ipv6hdr *ipv6h = NULL;  in dpaa_enable_tx_csum()  local1441 		ipv6h = ipv6_hdr(skb);  in dpaa_enable_tx_csum()
 1442 		WARN_ON(!ipv6h);  in dpaa_enable_tx_csum()
 1443 		l4_proto = ipv6h->nexthdr;  in dpaa_enable_tx_csum()
 
 | 
| /Linux-v5.4/drivers/net/wireless/intel/iwlwifi/mvm/ | 
| D | tx.c | 128 		struct ipv6hdr *ipv6h =  in iwl_mvm_tx_csum()  local130 		unsigned int off = sizeof(*ipv6h);  in iwl_mvm_tx_csum()
 132 		protocol = ipv6h->nexthdr;  in iwl_mvm_tx_csum()
 
 |