| /Linux-v5.4/net/ipv4/ |
| D | ip_tunnel_core.c | 128 md->u.tun_info.mode & IP_TUNNEL_INFO_TX) in iptunnel_metadata_reply() 136 dst = &res->u.tun_info; in iptunnel_metadata_reply() 137 src = &md->u.tun_info; in iptunnel_metadata_reply() 227 struct ip_tunnel_info *tun_info; in ip_tun_build_state() local 237 new_state = lwtunnel_state_alloc(sizeof(*tun_info)); in ip_tun_build_state() 243 tun_info = lwt_tun_info(new_state); in ip_tun_build_state() 246 err = dst_cache_init(&tun_info->dst_cache, GFP_KERNEL); in ip_tun_build_state() 254 tun_info->key.tun_id = nla_get_be64(tb[LWTUNNEL_IP_ID]); in ip_tun_build_state() 257 tun_info->key.u.ipv4.dst = nla_get_in_addr(tb[LWTUNNEL_IP_DST]); in ip_tun_build_state() 260 tun_info->key.u.ipv4.src = nla_get_in_addr(tb[LWTUNNEL_IP_SRC]); in ip_tun_build_state() [all …]
|
| D | ip_tunnel.c | 552 struct ip_tunnel_info *tun_info; in ip_md_tunnel_xmit() local 561 tun_info = skb_tunnel_info(skb); in ip_md_tunnel_xmit() 562 if (unlikely(!tun_info || !(tun_info->mode & IP_TUNNEL_INFO_TX) || in ip_md_tunnel_xmit() 563 ip_tunnel_info_af(tun_info) != AF_INET)) in ip_md_tunnel_xmit() 565 key = &tun_info->key; in ip_md_tunnel_xmit() 581 use_cache = ip_tunnel_dst_cache_usable(skb, tun_info); in ip_md_tunnel_xmit() 583 rt = dst_cache_get_ip4(&tun_info->dst_cache, &fl4.saddr); in ip_md_tunnel_xmit() 591 dst_cache_set_ip4(&tun_info->dst_cache, &rt->dst, in ip_md_tunnel_xmit() 647 struct ip_tunnel_info *tun_info = NULL; in ip_tunnel_xmit() local 673 tun_info = skb_tunnel_info(skb); in ip_tunnel_xmit() [all …]
|
| D | ip_gre.c | 309 md = ip_tunnel_info_opts(&tun_dst->u.tun_info); in erspan_rcv() 315 info = &tun_dst->u.tun_info; in erspan_rcv() 456 struct ip_tunnel_info *tun_info; in gre_fb_xmit() local 461 tun_info = skb_tunnel_info(skb); in gre_fb_xmit() 462 if (unlikely(!tun_info || !(tun_info->mode & IP_TUNNEL_INFO_TX) || in gre_fb_xmit() 463 ip_tunnel_info_af(tun_info) != AF_INET)) in gre_fb_xmit() 466 key = &tun_info->key; in gre_fb_xmit() 473 if (gre_handle_offloads(skb, !!(tun_info->key.tun_flags & TUNNEL_CSUM))) in gre_fb_xmit() 476 flags = tun_info->key.tun_flags & in gre_fb_xmit() 479 tunnel_id_to_key32(tun_info->key.tun_id), in gre_fb_xmit() [all …]
|
| D | udp_tunnel.c | 217 info = &tun_dst->u.tun_info; in udp_tun_rx_dst()
|
| /Linux-v5.4/include/net/ |
| D | dst_metadata.h | 23 struct ip_tunnel_info tun_info; member 45 return &md_dst->u.tun_info; in skb_tunnel_info() 80 return memcmp(&a->u.tun_info, &b->u.tun_info, in skb_metadata_dst_cmp() 81 sizeof(a->u.tun_info) + in skb_metadata_dst_cmp() 82 a->u.tun_info.options_len); in skb_metadata_dst_cmp() 103 tun_dst->u.tun_info.options_len = 0; in tun_rx_dst() 104 tun_dst->u.tun_info.mode = 0; in tun_rx_dst() 117 md_size = md_dst->u.tun_info.options_len; in tun_dst_unclone() 122 memcpy(&new_md->u.tun_info, &md_dst->u.tun_info, in tun_dst_unclone() 138 return &dst->u.tun_info; in skb_tunnel_info_unclone() [all …]
|
| D | ip_tunnels.h | 214 *tun_info) in ip_tunnel_info_af() 216 return tun_info->mode & IP_TUNNEL_INFO_IPV6 ? AF_INET6 : AF_INET; in ip_tunnel_info_af()
|
| /Linux-v5.4/drivers/net/ethernet/mellanox/mlx5/core/en/ |
| D | tc_tun_geneve.c | 19 e->tun_info->options_len; in mlx5e_tc_tun_calc_hlen_geneve() 96 const struct ip_tunnel_info *tun_info = e->tun_info; in mlx5e_gen_ip_tunnel_header_geneve() local 104 udp->dest = tun_info->key.tp_dst; in mlx5e_gen_ip_tunnel_header_geneve() 108 geneveh->opt_len = tun_info->options_len / 4; in mlx5e_gen_ip_tunnel_header_geneve() 109 geneveh->oam = !!(tun_info->key.tun_flags & TUNNEL_OAM); in mlx5e_gen_ip_tunnel_header_geneve() 110 geneveh->critical = !!(tun_info->key.tun_flags & TUNNEL_CRIT_OPT); in mlx5e_gen_ip_tunnel_header_geneve() 111 mlx5e_tunnel_id_to_vni(tun_info->key.tun_id, geneveh->vni); in mlx5e_gen_ip_tunnel_header_geneve() 114 if (tun_info->key.tun_flags & TUNNEL_GENEVE_OPT) { in mlx5e_gen_ip_tunnel_header_geneve() 117 ip_tunnel_info_opts_get(geneveh->options, tun_info); in mlx5e_gen_ip_tunnel_header_geneve()
|
| D | tc_tun_gre.c | 14 return gre_calc_hlen(e->tun_info->key.tun_flags); in mlx5e_tc_tun_calc_hlen_gretap() 31 const struct ip_tunnel_key *tun_key = &e->tun_info->key; in mlx5e_gen_ip_tunnel_header_gretap()
|
| D | tc_tun_vxlan.c | 65 int dst_port = be16_to_cpu(e->tun_info->key.tp_dst); in mlx5e_tc_tun_init_encap_attr_vxlan() 86 const struct ip_tunnel_key *tun_key = &e->tun_info->key; in mlx5e_gen_ip_tunnel_header_vxlan()
|
| D | tc_tun.c | 213 const struct ip_tunnel_key *tun_key = &e->tun_info->key; in mlx5e_tc_tun_create_header_ipv4() 332 const struct ip_tunnel_key *tun_key = &e->tun_info->key; in mlx5e_tc_tun_create_header_ipv6()
|
| /Linux-v5.4/net/netfilter/ |
| D | nft_tunnel.c | 27 struct ip_tunnel_info *tun_info; in nft_tunnel_get_eval() local 29 tun_info = skb_tunnel_info(pkt->skb); in nft_tunnel_get_eval() 33 if (!tun_info) { in nft_tunnel_get_eval() 39 !(tun_info->mode & IP_TUNNEL_INFO_TX)) || in nft_tunnel_get_eval() 41 (tun_info->mode & IP_TUNNEL_INFO_TX))) in nft_tunnel_get_eval() 47 if (!tun_info) { in nft_tunnel_get_eval() 53 !(tun_info->mode & IP_TUNNEL_INFO_TX)) || in nft_tunnel_get_eval() 55 (tun_info->mode & IP_TUNNEL_INFO_TX))) in nft_tunnel_get_eval() 56 *dest = ntohl(tunnel_id_to_key32(tun_info->key.tun_id)); in nft_tunnel_get_eval() 409 memcpy(&md->u.tun_info, &info, sizeof(info)); in nft_tunnel_obj_init() [all …]
|
| /Linux-v5.4/net/openvswitch/ |
| D | flow.c | 842 int ovs_flow_key_extract(const struct ip_tunnel_info *tun_info, in ovs_flow_key_extract() argument 851 if (tun_info) { in ovs_flow_key_extract() 852 key->tun_proto = ip_tunnel_info_af(tun_info); in ovs_flow_key_extract() 853 memcpy(&key->tun_key, &tun_info->key, sizeof(key->tun_key)); in ovs_flow_key_extract() 855 if (tun_info->options_len) { in ovs_flow_key_extract() 856 BUILD_BUG_ON((1 << (sizeof(tun_info->options_len) * in ovs_flow_key_extract() 860 ip_tunnel_info_opts_get(TUN_METADATA_OPTS(key, tun_info->options_len), in ovs_flow_key_extract() 861 tun_info); in ovs_flow_key_extract() 862 key->tun_opts_len = tun_info->options_len; in ovs_flow_key_extract()
|
| D | vport.c | 425 const struct ip_tunnel_info *tun_info) in ovs_vport_receive() argument 439 tun_info = NULL; in ovs_vport_receive() 443 error = ovs_flow_key_extract(tun_info, skb, &key); in ovs_vport_receive()
|
| D | flow_netlink.c | 952 struct ip_tunnel_info *tun_info) in ovs_nla_put_tunnel_info() argument 954 return __ip_tun_to_nlattr(skb, &tun_info->key, in ovs_nla_put_tunnel_info() 955 ip_tunnel_info_opts(tun_info), in ovs_nla_put_tunnel_info() 956 tun_info->options_len, in ovs_nla_put_tunnel_info() 957 ip_tunnel_info_af(tun_info), tun_info->mode); in ovs_nla_put_tunnel_info() 2562 struct ip_tunnel_info *tun_info; in validate_and_copy_set_tun() local 2601 err = dst_cache_init(&tun_dst->u.tun_info.dst_cache, GFP_KERNEL); in validate_and_copy_set_tun() 2617 tun_info = &tun_dst->u.tun_info; in validate_and_copy_set_tun() 2618 tun_info->mode = IP_TUNNEL_INFO_TX; in validate_and_copy_set_tun() 2620 tun_info->mode |= IP_TUNNEL_INFO_IPV6; in validate_and_copy_set_tun() [all …]
|
| D | flow_netlink.h | 50 struct ip_tunnel_info *tun_info);
|
| D | flow.h | 274 int ovs_flow_key_extract(const struct ip_tunnel_info *tun_info,
|
| /Linux-v5.4/net/sched/ |
| D | act_tunnel_key.c | 332 ret = dst_cache_init(&metadata->u.tun_info.dst_cache, GFP_KERNEL); in tunnel_key_init() 339 &metadata->u.tun_info, in tunnel_key_init() 345 metadata->u.tun_info.mode |= IP_TUNNEL_INFO_TX; in tunnel_key_init() 536 ¶ms->tcft_enc_metadata->u.tun_info; in tunnel_key_dump() 543 ¶ms->tcft_enc_metadata->u.tun_info) || in tunnel_key_dump()
|
| /Linux-v5.4/net/ipv6/ |
| D | ip6_gre.c | 575 info = &tun_dst->u.tun_info; in ip6erspan_rcv() 728 struct ip_tunnel_info *tun_info; in __gre6_xmit() local 732 tun_info = skb_tunnel_info(skb); in __gre6_xmit() 733 if (unlikely(!tun_info || in __gre6_xmit() 734 !(tun_info->mode & IP_TUNNEL_INFO_TX) || in __gre6_xmit() 735 ip_tunnel_info_af(tun_info) != AF_INET6)) in __gre6_xmit() 738 key = &tun_info->key; in __gre6_xmit() 752 tunnel_id_to_key32(tun_info->key.tun_id), in __gre6_xmit() 962 struct ip_tunnel_info *tun_info; in ip6erspan_tunnel_xmit() local 967 tun_info = skb_tunnel_info(skb); in ip6erspan_tunnel_xmit() [all …]
|
| D | ip6_tunnel.c | 1249 struct ip_tunnel_info *tun_info; in ip4ip6_tnl_xmit() local 1252 tun_info = skb_tunnel_info(skb); in ip4ip6_tnl_xmit() 1253 if (unlikely(!tun_info || !(tun_info->mode & IP_TUNNEL_INFO_TX) || in ip4ip6_tnl_xmit() 1254 ip_tunnel_info_af(tun_info) != AF_INET6)) in ip4ip6_tnl_xmit() 1256 key = &tun_info->key; in ip4ip6_tnl_xmit() 1321 struct ip_tunnel_info *tun_info; in ip6ip6_tnl_xmit() local 1324 tun_info = skb_tunnel_info(skb); in ip6ip6_tnl_xmit() 1325 if (unlikely(!tun_info || !(tun_info->mode & IP_TUNNEL_INFO_TX) || in ip6ip6_tnl_xmit() 1326 ip_tunnel_info_af(tun_info) != AF_INET6)) in ip6ip6_tnl_xmit() 1328 key = &tun_info->key; in ip6ip6_tnl_xmit()
|
| /Linux-v5.4/include/net/tc_act/ |
| D | tc_tunnel_key.h | 57 return ¶ms->tcft_enc_metadata->u.tun_info; in tcf_tunnel_info()
|
| /Linux-v5.4/drivers/net/ethernet/mellanox/mlx5/core/ |
| D | en_tc.c | 142 const struct ip_tunnel_info *tun_info[MLX5_MAX_FLOW_FWD_VPORTS]; member 1283 kfree(attr->parse_attr->tun_info[out_index]); in mlx5e_tc_del_fdb_flow() 1564 kfree(e->tun_info); in mlx5e_encap_dealloc() 2968 e_key.ip_tun_key = &e->tun_info->key; in mlx5e_encap_get() 2978 static struct ip_tunnel_info *dup_tun_info(const struct ip_tunnel_info *tun_info) in dup_tun_info() argument 2980 size_t tun_size = sizeof(*tun_info) + tun_info->options_len; in dup_tun_info() 2982 return kmemdup(tun_info, tun_size, GFP_KERNEL); in dup_tun_info() 2996 const struct ip_tunnel_info *tun_info; in mlx5e_attach_encap() local 3004 tun_info = parse_attr->tun_info[out_index]; in mlx5e_attach_encap() 3005 family = ip_tunnel_info_af(tun_info); in mlx5e_attach_encap() [all …]
|
| D | en_rep.h | 165 const struct ip_tunnel_info *tun_info; member
|
| /Linux-v5.4/net/core/ |
| D | dst.c | 294 dst_cache_destroy(&md_dst->u.tun_info.dst_cache); in metadata_dst_free() 327 dst_cache_destroy(&one_md_dst->u.tun_info.dst_cache); in metadata_dst_free_percpu()
|
| /Linux-v5.4/drivers/net/ethernet/netronome/nfp/flower/ |
| D | tunnel_conf.c | 54 } tun_info[]; member 185 if (pay_len != struct_size(payload, tun_info, count)) { in nfp_tunnel_keep_alive() 192 ipv4_addr = payload->tun_info[i].ipv4; in nfp_tunnel_keep_alive() 193 port = be32_to_cpu(payload->tun_info[i].egress_port); in nfp_tunnel_keep_alive()
|
| /Linux-v5.4/net/bridge/ |
| D | br_vlan_tunnel.c | 71 metadata->u.tun_info.mode |= IP_TUNNEL_INFO_TX | IP_TUNNEL_INFO_BRIDGE; in __vlan_tunnel_info_add()
|