Home
last modified time | relevance | path

Searched refs:exthdr (Results 1 – 16 of 16) sorted by relevance

/Linux-v6.6/net/ipv6/
Doutput_core.c67 struct ipv6_opt_hdr *exthdr; in ip6_find_1stfragopt() local
91 exthdr = (struct ipv6_opt_hdr *)(skb_network_header(skb) + in ip6_find_1stfragopt()
93 offset += ipv6_optlen(exthdr); in ip6_find_1stfragopt()
96 *nexthdr = &exthdr->nexthdr; in ip6_find_1stfragopt()
Dah6.c248 } exthdr = { .iph = iph }; in ipv6_clear_mutable_options() local
249 char *end = exthdr.raw + len; in ipv6_clear_mutable_options()
252 exthdr.iph++; in ipv6_clear_mutable_options()
254 while (exthdr.raw < end) { in ipv6_clear_mutable_options()
258 ipv6_rearrange_destopt(iph, exthdr.opth); in ipv6_clear_mutable_options()
261 if (!zero_out_mutable_opts(exthdr.opth)) { in ipv6_clear_mutable_options()
270 ipv6_rearrange_rthdr(iph, exthdr.rth); in ipv6_clear_mutable_options()
277 nexthdr = exthdr.opth->nexthdr; in ipv6_clear_mutable_options()
278 exthdr.raw += ipv6_optlen(exthdr.opth); in ipv6_clear_mutable_options()
Desp6_offload.c35 struct ipv6_opt_hdr *exthdr; in esp6_nexthdr_esp_offset() local
41 exthdr = (void *)ipv6_hdr + off; in esp6_nexthdr_esp_offset()
42 if (exthdr->nexthdr == NEXTHDR_ESP) in esp6_nexthdr_esp_offset()
45 off += ipv6_optlen(exthdr); in esp6_nexthdr_esp_offset()
/Linux-v6.6/drivers/media/pci/saa7164/
Dsaa7164-api.c923 struct tmComResExtDevDescrHeader *exthdr; in saa7164_api_dump_subdevs() local
1225 exthdr = (struct tmComResExtDevDescrHeader *)(buf + idx); in saa7164_api_dump_subdevs()
1227 exthdr->unitid); in saa7164_api_dump_subdevs()
1229 exthdr->deviceid); in saa7164_api_dump_subdevs()
1231 exthdr->devicetype); in saa7164_api_dump_subdevs()
1232 if (exthdr->devicetype & 0x1) in saa7164_api_dump_subdevs()
1234 if (exthdr->devicetype & 0x2) in saa7164_api_dump_subdevs()
1236 if (exthdr->devicetype & 0x4) in saa7164_api_dump_subdevs()
1238 if (exthdr->devicetype & 0x8) in saa7164_api_dump_subdevs()
1240 if (exthdr->devicetype & 0x20) in saa7164_api_dump_subdevs()
[all …]
/Linux-v6.6/tools/testing/selftests/net/
Dcmsg_sender.c71 struct option_cmsg_u32 exthdr; member
178 opt.v6.exthdr.ena = true; in cs_parse_args()
181 opt.v6.exthdr.val = IPV6_HOPOPTS; in cs_parse_args()
184 opt.v6.exthdr.val = IPV6_DSTOPTS; in cs_parse_args()
187 opt.v6.exthdr.val = IPV6_RTHDRDSTOPTS; in cs_parse_args()
297 if (opt.v6.exthdr.ena) { in cs_write_cmsg()
304 cmsg->cmsg_type = opt.v6.exthdr.val; in cs_write_cmsg()
/Linux-v6.6/drivers/net/ethernet/huawei/hinic/
Dhinic_tx.c205 u8 *exthdr; in get_inner_l3_l4_type() local
214 exthdr = ip->hdr + sizeof(*ip->v6); in get_inner_l3_l4_type()
216 if (exthdr != l4->hdr) { in get_inner_l3_l4_type()
217 int start = exthdr - skb->data; in get_inner_l3_l4_type()
377 unsigned char *exthdr; in offload_csum() local
382 exthdr = ip.hdr + sizeof(*ip.v6); in offload_csum()
385 if (l4.hdr != exthdr) in offload_csum()
386 ipv6_skip_exthdr(skb, exthdr - skb->data, in offload_csum()
/Linux-v6.6/tools/testing/selftests/bpf/progs/
Dtest_cls_redirect.c292 } exthdr = { in pkt_skip_ipv6_extension_headers() local
299 switch (exthdr.next) { in pkt_skip_ipv6_extension_headers()
309 if (!buf_copy(pkt, &exthdr, sizeof(exthdr))) { in pkt_skip_ipv6_extension_headers()
315 (exthdr.len + 1) * 8 - sizeof(exthdr))) { in pkt_skip_ipv6_extension_headers()
333 *upper_proto = exthdr.next; in pkt_skip_ipv6_extension_headers()
Dtest_cls_redirect_dynptr.c197 } exthdr = { in pkt_skip_ipv6_extension_headers() local
203 switch (exthdr.next) { in pkt_skip_ipv6_extension_headers()
213 if (bpf_dynptr_read(&exthdr, sizeof(exthdr), dynptr, *offset, 0)) in pkt_skip_ipv6_extension_headers()
217 *offset += (exthdr.len + 1) * 8; in pkt_skip_ipv6_extension_headers()
233 *upper_proto = exthdr.next; in pkt_skip_ipv6_extension_headers()
/Linux-v6.6/net/netfilter/
Dnft_exthdr.c707 const struct nft_exthdr *exthdr; in nft_exthdr_reduce() local
714 exthdr = nft_expr_priv(track->regs[priv->dreg].selector); in nft_exthdr_reduce()
715 if (priv->type != exthdr->type || in nft_exthdr_reduce()
716 priv->op != exthdr->op || in nft_exthdr_reduce()
717 priv->flags != exthdr->flags || in nft_exthdr_reduce()
718 priv->offset != exthdr->offset || in nft_exthdr_reduce()
719 priv->len != exthdr->len) { in nft_exthdr_reduce()
/Linux-v6.6/net/xfrm/
Dxfrm_output.c93 struct ipv6_opt_hdr *exthdr; in mip6_rthdr_offset() local
129 exthdr = (struct ipv6_opt_hdr *)(skb_network_header(skb) + in mip6_rthdr_offset()
131 offset += ipv6_optlen(exthdr); in mip6_rthdr_offset()
134 *nexthdr = &exthdr->nexthdr; in mip6_rthdr_offset()
Dxfrm_policy.c3456 struct ipv6_opt_hdr *exthdr; in decode_session6() local
3477 while (nh + offset + sizeof(*exthdr) < skb->data || in decode_session6()
3478 pskb_may_pull(skb, nh + offset + sizeof(*exthdr) - skb->data)) { in decode_session6()
3480 exthdr = (struct ipv6_opt_hdr *)(nh + offset); in decode_session6()
3489 offset += ipv6_optlen(exthdr); in decode_session6()
3490 nexthdr = exthdr->nexthdr; in decode_session6()
3542 offset += ipv6_optlen(exthdr); in decode_session6()
/Linux-v6.6/drivers/net/ethernet/intel/iavf/
Diavf_txrx.c1988 unsigned char *exthdr; in iavf_tx_enable_csum() local
2014 exthdr = ip.hdr + sizeof(*ip.v6); in iavf_tx_enable_csum()
2016 if (l4.hdr != exthdr) in iavf_tx_enable_csum()
2017 ipv6_skip_exthdr(skb, exthdr - skb->data, in iavf_tx_enable_csum()
2088 exthdr = ip.hdr + sizeof(*ip.v6); in iavf_tx_enable_csum()
2090 if (l4.hdr != exthdr) in iavf_tx_enable_csum()
2091 ipv6_skip_exthdr(skb, exthdr - skb->data, in iavf_tx_enable_csum()
/Linux-v6.6/drivers/net/ethernet/intel/ice/
Dice_txrx.c1808 unsigned char *exthdr; in ice_tx_csum() local
1851 exthdr = ip.hdr + sizeof(*ip.v6); in ice_tx_csum()
1853 ret = ipv6_skip_exthdr(skb, exthdr - skb->data, in ice_tx_csum()
1932 exthdr = ip.hdr + sizeof(*ip.v6); in ice_tx_csum()
1934 if (l4.hdr != exthdr) in ice_tx_csum()
1935 ipv6_skip_exthdr(skb, exthdr - skb->data, &l4_proto, in ice_tx_csum()
/Linux-v6.6/drivers/net/ethernet/intel/i40e/
Di40e_txrx.c3276 unsigned char *exthdr; in i40e_tx_enable_csum() local
3320 exthdr = ip.hdr + sizeof(*ip.v6); in i40e_tx_enable_csum()
3322 ret = ipv6_skip_exthdr(skb, exthdr - skb->data, in i40e_tx_enable_csum()
3395 exthdr = ip.hdr + sizeof(*ip.v6); in i40e_tx_enable_csum()
3397 if (l4.hdr != exthdr) in i40e_tx_enable_csum()
3398 ipv6_skip_exthdr(skb, exthdr - skb->data, in i40e_tx_enable_csum()
/Linux-v6.6/drivers/net/ethernet/hisilicon/hns3/
Dhns3_enet.c1244 unsigned char *exthdr; in hns3_get_l4_protocol() local
1253 exthdr = l3.hdr + sizeof(*l3.v6); in hns3_get_l4_protocol()
1255 if (l4_hdr != exthdr) in hns3_get_l4_protocol()
1256 ipv6_skip_exthdr(skb, exthdr - skb->data, in hns3_get_l4_protocol()
1277 exthdr = l3.hdr + sizeof(*l3.v6); in hns3_get_l4_protocol()
1279 if (l4_hdr != exthdr) in hns3_get_l4_protocol()
1280 ipv6_skip_exthdr(skb, exthdr - skb->data, in hns3_get_l4_protocol()
/Linux-v6.6/Documentation/networking/
Drds.rst445 If the rcvr is not mprds-capable, the exthdr in the ping will be