| /Linux-v5.4/tools/testing/selftests/bpf/progs/ |
| D | test_tcp_check_syncookie_kern.c | 52 struct ipv6hdr *ipv6h; in check_syncookie() local 98 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() local 56 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() local 88 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() local 402 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() local 62 __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() local 433 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() local 305 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() local 616 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() local 236 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() local 954 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() argument 63 return 1 << (ipv6_get_dsfield(ipv6h) & INET_ECN_MASK); in ip6_frag_ecn()
|
| D | ip6mr.c | 1999 struct ipv6hdr *ipv6h; in ip6mr_forward2() local 2019 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() argument 24 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() local 227 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() local 381 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() local 103 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() local 185 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() local 334 &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() local 299 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() local 875 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() argument 135 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() argument 604 __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() local 1323 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() local 1441 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() local 130 unsigned int off = sizeof(*ipv6h); in iwl_mvm_tx_csum() 132 protocol = ipv6h->nexthdr; in iwl_mvm_tx_csum()
|