Home
last modified time | relevance | path

Searched refs:tunnel (Results 1 – 25 of 88) sorted by relevance

1234

/linux/net/l2tp/
H A Dl2tp_core.c143 static void l2tp_tunnel_free(struct l2tp_tunnel *tunnel) in l2tp_tunnel_free() argument
145 struct sock *sk = tunnel->sock; in l2tp_tunnel_free()
147 trace_free_tunnel(tunnel); in l2tp_tunnel_free()
151 switch (tunnel->encap) { in l2tp_tunnel_free()
162 tunnel->sock = NULL; in l2tp_tunnel_free()
166 kfree_rcu(tunnel, rcu); in l2tp_tunnel_free()
172 if (session->tunnel) in l2tp_session_free()
173 l2tp_tunnel_put(session->tunnel); in l2tp_session_free()
181 struct l2tp_tunnel *tunnel; in l2tp_sk_to_tunnel() local
186 idr_for_each_entry_ul(&pn->l2tp_tunnel_idr, tunnel, tmp, tunnel_id) { in l2tp_sk_to_tunnel()
[all …]
H A Dl2tp_debugfs.c39 struct l2tp_tunnel *tunnel; member
46 if (pd->tunnel) in l2tp_dfs_next_tunnel()
47 l2tp_tunnel_put(pd->tunnel); in l2tp_dfs_next_tunnel()
49 pd->tunnel = l2tp_tunnel_get_next(pd->net, &pd->tkey); in l2tp_dfs_next_tunnel()
59 pd->session = l2tp_session_get_next(pd->net, pd->tunnel->sock, in l2tp_dfs_next_session()
60 pd->tunnel->version, in l2tp_dfs_next_session()
61 pd->tunnel->tunnel_id, &pd->skey); in l2tp_dfs_next_session()
84 if (!pd->tunnel) in l2tp_dfs_seq_start()
90 if (!pd->tunnel && !pd->session) in l2tp_dfs_seq_start()
117 if (pd->tunnel) { in l2tp_dfs_seq_stop()
[all …]
H A Dl2tp_ppp.c257 struct l2tp_tunnel *tunnel; in pppol2tp_sendmsg() local
270 tunnel = session->tunnel; in pppol2tp_sendmsg()
272 uhlen = (tunnel->encap == L2TP_ENCAPTYPE_UDP) ? sizeof(struct udphdr) : 0; in pppol2tp_sendmsg()
334 struct l2tp_tunnel *tunnel; in pppol2tp_xmit() local
345 tunnel = session->tunnel; in pppol2tp_xmit()
347 uhlen = (tunnel->encap == L2TP_ENCAPTYPE_UDP) ? sizeof(struct udphdr) : 0; in pppol2tp_xmit()
616 static int pppol2tp_tunnel_mtu(const struct l2tp_tunnel *tunnel) in pppol2tp_tunnel_mtu() argument
620 mtu = l2tp_tunnel_dst_mtu(tunnel); in pppol2tp_tunnel_mtu()
631 struct l2tp_tunnel *tunnel; in pppol2tp_tunnel_get() local
636 tunnel = l2tp_tunnel_get(net, info->tunnel_id); in pppol2tp_tunnel_get()
[all …]
H A Dl2tp_netlink.c38 int flags, struct l2tp_tunnel *tunnel, u8 cmd);
51 struct l2tp_tunnel *tunnel; in l2tp_nl_session_get() local
62 tunnel = l2tp_tunnel_get(net, tunnel_id); in l2tp_nl_session_get()
63 if (tunnel) { in l2tp_nl_session_get()
64 session = l2tp_session_get(net, tunnel->sock, tunnel->version, in l2tp_nl_session_get()
66 l2tp_tunnel_put(tunnel); in l2tp_nl_session_get()
105 struct l2tp_tunnel *tunnel, in l2tp_tunnel_notify() argument
116 NLM_F_ACK, tunnel, cmd); in l2tp_tunnel_notify()
119 ret = genlmsg_multicast_netns(family, tunnel in l2tp_tunnel_notify()
196 struct l2tp_tunnel *tunnel; l2tp_nl_cmd_tunnel_create() local
264 struct l2tp_tunnel *tunnel; l2tp_nl_cmd_tunnel_delete() local
294 struct l2tp_tunnel *tunnel; l2tp_nl_cmd_tunnel_modify() local
374 l2tp_nl_tunnel_send_addr(struct sk_buff * skb,struct l2tp_tunnel * tunnel) l2tp_nl_tunnel_send_addr() argument
389 l2tp_nl_tunnel_send(struct sk_buff * skb,u32 portid,u32 seq,int flags,struct l2tp_tunnel * tunnel,u8 cmd) l2tp_nl_tunnel_send() argument
455 struct l2tp_tunnel *tunnel; l2tp_nl_cmd_tunnel_get() local
506 struct l2tp_tunnel *tunnel; l2tp_nl_cmd_tunnel_dump() local
537 struct l2tp_tunnel *tunnel; l2tp_nl_cmd_session_create() local
704 struct l2tp_tunnel *tunnel = session->tunnel; l2tp_nl_cmd_session_modify() local
730 struct l2tp_tunnel *tunnel = session->tunnel; l2tp_nl_session_send() local
847 struct l2tp_tunnel *tunnel = NULL; l2tp_nl_cmd_session_dump() local
[all...]
H A Dtrace.h28 TP_PROTO(struct l2tp_tunnel *tunnel),
29 TP_ARGS(tunnel),
34 memcpy(__entry->name, tunnel->name, L2TP_TUNNEL_NAME_MAX);
52 TP_PROTO(struct l2tp_tunnel *tunnel),
53 TP_ARGS(tunnel),
63 memcpy(__entry->name, tunnel->name, L2TP_TUNNEL_NAME_MAX);
64 __entry->fd = tunnel->fd;
65 __entry->tid = tunnel->tunnel_id;
66 __entry->ptid = tunnel->peer_tunnel_id;
67 __entry->version = tunnel->version;
[all …]
H A Dl2tp_core.h71 struct l2tp_tunnel *tunnel; /* back pointer to tunnel context */ member
194 int (*session_create)(struct net *net, struct l2tp_tunnel *tunnel,
212 void l2tp_tunnel_put(struct l2tp_tunnel *tunnel);
238 int l2tp_tunnel_register(struct l2tp_tunnel *tunnel, struct net *net,
240 void l2tp_tunnel_delete(struct l2tp_tunnel *tunnel);
243 struct l2tp_tunnel *tunnel,
247 struct l2tp_tunnel *tunnel);
287 static inline u32 l2tp_tunnel_dst_mtu(const struct l2tp_tunnel *tunnel) in l2tp_tunnel_dst_mtu() argument
292 dst = sk_dst_get(tunnel->sock); in l2tp_tunnel_dst_mtu()
303 static inline bool l2tp_tunnel_uses_xfrm(const struct l2tp_tunnel *tunnel) in l2tp_tunnel_uses_xfrm() argument
[all …]
/linux/drivers/net/
H A Damt.c123 static u32 amt_source_hash(struct amt_tunnel_list *tunnel, union amt_addr *src) in amt_source_hash() argument
125 u32 hash = jhash(src, sizeof(*src), tunnel->amt->hash_seed); in amt_source_hash()
127 return reciprocal_scale(hash, tunnel->amt->hash_buckets); in amt_source_hash()
184 static struct amt_source_node *amt_lookup_src(struct amt_tunnel_list *tunnel, in amt_lookup_src() argument
189 u32 hash = amt_source_hash(tunnel, src); in amt_lookup_src()
200 static u32 amt_group_hash(struct amt_tunnel_list *tunnel, union amt_addr *group) in amt_group_hash() argument
202 u32 hash = jhash(group, sizeof(*group), tunnel->amt->hash_seed); in amt_group_hash()
204 return reciprocal_scale(hash, tunnel->amt->hash_buckets); in amt_group_hash()
207 static struct amt_group_node *amt_lookup_group(struct amt_tunnel_list *tunnel, in amt_lookup_group() argument
212 u32 hash = amt_group_hash(tunnel, group); in amt_lookup_group()
[all …]
/linux/net/ipv4/
H A Dip_tunnel.c238 struct ip_tunnel *tunnel; in __ip_tunnel_create() local
264 tunnel = netdev_priv(dev); in __ip_tunnel_create()
265 tunnel->parms = *parms; in __ip_tunnel_create()
266 tunnel->net = net; in __ip_tunnel_create()
283 struct ip_tunnel *tunnel = netdev_priv(dev); in ip_tunnel_bind_dev() local
287 int t_hlen = tunnel->hlen + sizeof(struct iphdr); in ip_tunnel_bind_dev()
289 iph = &tunnel->parms.iph; in ip_tunnel_bind_dev()
297 iph->saddr, tunnel->parms.o_key, in ip_tunnel_bind_dev()
298 iph->tos & INET_DSCP_MASK, tunnel->net, in ip_tunnel_bind_dev()
299 tunnel->parms.link, tunnel->fwmark, 0, 0); in ip_tunnel_bind_dev()
[all …]
H A Dip_gre.c275 struct ip_tunnel *tunnel; in erspan_rcv() local
288 tunnel = ip_tunnel_lookup(itn, skb->dev->ifindex, flags, in erspan_rcv()
299 tunnel = ip_tunnel_lookup(itn, skb->dev->ifindex, flags, in erspan_rcv()
303 if (tunnel) { in erspan_rcv()
318 if (tunnel->collect_md) { in erspan_rcv()
356 ip_tunnel_rcv(tunnel, skb, tpi, tun_dst, log_ecn_error); in erspan_rcv()
371 struct ip_tunnel *tunnel; in __ipgre_rcv() local
374 tunnel = ip_tunnel_lookup(itn, skb->dev->ifindex, tpi->flags, in __ipgre_rcv()
377 if (tunnel) { in __ipgre_rcv()
387 if (tunnel->dev->header_ops == &ipgre_header_ops) in __ipgre_rcv()
[all …]
H A Dipip.c22 /* tunnel.c: an IP tunnel driver
24 The purpose of this driver is to provide an IP tunnel through
25 which you can tunnel network traffic transparently across subnets.
36 Made the tunnels use dev->name not tunnel: when error reporting.
42 Changed to tunnel to destination gateway in addition to the
43 tunnel's pointopoint address
51 /* Things I wish I had known when writing the tunnel driver:
55 contains the tunnel device that _we_ are.
204 /* no tunnel inf
221 struct ip_tunnel *tunnel; ipip_tunnel_rcv() local
285 struct ip_tunnel *tunnel = netdev_priv(dev); ipip_tunnel_xmit() local
359 struct ip_tunnel *tunnel = netdev_priv(ctx->dev); ipip_fill_forward_path() local
426 struct ip_tunnel *tunnel = netdev_priv(dev); ipip_tunnel_init() local
562 struct ip_tunnel *tunnel = netdev_priv(dev); ipip_fill_info() local
[all...]
H A Dip_vti.c50 struct ip_tunnel *tunnel; in vti_input() local
58 tunnel = ip_tunnel_lookup(itn, skb->dev->ifindex, flags, in vti_input()
60 if (tunnel) { in vti_input()
64 XFRM_TUNNEL_SKB_CB(skb)->tunnel.ip4 = tunnel; in vti_input()
67 skb->dev = tunnel->dev; in vti_input()
103 struct ip_tunnel *tunnel = XFRM_TUNNEL_SKB_CB(skb)->tunnel.ip4; in vti_rcv_cb() local
107 if (!tunnel) in vti_rcv_cb()
110 dev = tunnel->dev; in vti_rcv_cb()
134 skb->mark = be32_to_cpu(tunnel->parms.i_key); in vti_rcv_cb()
141 skb_scrub_packet(skb, !net_eq(tunnel->net, dev_net(skb->dev))); in vti_rcv_cb()
[all …]
/linux/net/ipv6/
H A Dsit.c74 static bool check_6rd(struct ip_tunnel *tunnel, const struct in6_addr *v6dst,
516 struct ip_tunnel *tunnel = netdev_priv(dev); in ipip6_tunnel_uninit() local
517 struct sit_net *sitn = net_generic(tunnel->net, sit_net_id); in ipip6_tunnel_uninit()
522 ipip6_tunnel_unlink(sitn, tunnel); in ipip6_tunnel_uninit()
523 ipip6_tunnel_del_prl(tunnel, NULL); in ipip6_tunnel_uninit()
525 dst_cache_reset(&tunnel->dst_cache); in ipip6_tunnel_uninit()
526 netdev_put(dev, &tunnel->dev_tracker); in ipip6_tunnel_uninit()
607 static inline bool is_spoofed_6rd(struct ip_tunnel *tunnel, const __be32 v4addr, in is_spoofed_6rd() argument
611 if (check_6rd(tunnel, v6addr, &v4embed) && v4addr != v4embed) in is_spoofed_6rd()
628 static bool only_dnatted(const struct ip_tunnel *tunnel, in only_dnatted() argument
[all …]
H A Dip6_gre.c460 struct ip6_tnl *tunnel; in ip6gre_rcv() local
463 tunnel = ip6gre_tunnel_lookup(skb->dev, in ip6gre_rcv()
466 if (tunnel) { in ip6gre_rcv()
467 if (tunnel->parms.collect_md) { in ip6gre_rcv()
479 ip6_tnl_rcv(tunnel, skb, tpi, tun_dst, log_ecn_error); in ip6gre_rcv()
481 ip6_tnl_rcv(tunnel, skb, tpi, NULL, log_ecn_error); in ip6gre_rcv()
497 struct ip6_tnl *tunnel; in ip6erspan_rcv() local
507 tunnel = ip6gre_tunnel_lookup(skb->dev, in ip6erspan_rcv()
510 if (tunnel) { in ip6erspan_rcv()
521 if (tunnel->parms.collect_md) { in ip6erspan_rcv()
[all …]
H A Dip6_tunnel.c808 static int __ip6_tnl_rcv(struct ip6_tnl *tunnel, struct sk_buff *skb, in __ip6_tnl_rcv() argument
819 if (test_bit(IP_TUNNEL_CSUM_BIT, tunnel->parms.i_flags) != in __ip6_tnl_rcv()
821 DEV_STATS_INC(tunnel->dev, rx_crc_errors); in __ip6_tnl_rcv()
822 DEV_STATS_INC(tunnel->dev, rx_errors); in __ip6_tnl_rcv()
826 if (test_bit(IP_TUNNEL_SEQ_BIT, tunnel->parms.i_flags)) { in __ip6_tnl_rcv()
828 (tunnel->i_seqno && in __ip6_tnl_rcv()
829 (s32)(ntohl(tpi->seq) - tunnel->i_seqno) < 0)) { in __ip6_tnl_rcv()
830 DEV_STATS_INC(tunnel->dev, rx_fifo_errors); in __ip6_tnl_rcv()
831 DEV_STATS_INC(tunnel->dev, rx_errors); in __ip6_tnl_rcv()
834 tunnel->i_seqno = ntohl(tpi->seq) + 1; in __ip6_tnl_rcv()
[all …]
H A Dxfrm6_protocol.c69 XFRM_TUNNEL_SKB_CB(skb)->tunnel.ip6 = NULL; in xfrm6_rcv_encap()
116 XFRM_TUNNEL_SKB_CB(skb)->tunnel.ip6 = NULL; in xfrm6_esp_rcv()
145 XFRM_TUNNEL_SKB_CB(skb)->tunnel.ip6 = NULL; in xfrm6_ah_rcv()
174 XFRM_TUNNEL_SKB_CB(skb)->tunnel.ip6 = NULL; in xfrm6_ipcomp_rcv()
/linux/Documentation/networking/
H A Dl2tp.rst27 An L2TP tunnel carries one or more L2TP sessions. Each tunnel is
30 to/from L2TP. Fields in the L2TP header identify the tunnel or session
40 1) Create a tunnel socket. Exchange L2TP control protocol messages
41 with the peer over that socket in order to establish a tunnel.
43 2) Create a tunnel context in the kernel, using information
47 tunnel socket in order to establish a session.
62 To create a tunnel socket for use by L2TP, the standard POSIX
65 For example, for a tunnel using IPv4 addresses and UDP encapsulation::
69 Or for a tunnel using IPv6 addresses and IP encapsulation::
78 `include/uapi/linux/l2tp.h`_. The address includes the L2TP tunnel
[all …]
H A Dbareudp.rst11 The Bareudp tunnel module provides a generic L3 encapsulation support for
12 tunnelling different L3 protocols like MPLS, IP, NSH etc. inside a UDP tunnel.
31 This creates a bareudp tunnel device which tunnels L3 traffic with ethertype
45 For an IPv4 tunnel the multiproto mode allows the tunnel to also handle
50 For MPLS, the multiproto mode allows the tunnel to handle both unicast
56 The OVS or TC flower layer must set the tunnel information in the SKB dst field before
58 bareUDP device extracts and stores the tunnel information in the SKB dst field before
H A Dgtp.rst12 of a GTP tunnel endpoint.
24 such a tunnel between that external data network and the phone. The
25 tunnel endpoints thus reside on the phone and in the gateway. All
35 is translated into GTP *without breaking the end-to-end tunnel*. So
39 or P-GW (LTE), which terminates the tunnel, decapsulates the packet
53 The module implements the function of a tunnel endpoint, i.e. it is
70 to handle the tunnel establishment, authentication etc. and only the
159 Local GTP-U entity and tunnel identification
169 A specific tunnel is only defined by the destination entity. Since the
171 a tunnel. The source IP and Port have no meaning for the tunnel.
[all …]
/linux/tools/testing/selftests/bpf/
H A Dwith_tunnels.sh
/linux/tools/testing/selftests/net/
H A Dvrf-xfrm-tests.sh218 tmpl src ${HOST1_4} dst ${HOST2_4} proto esp mode tunnel
223 tmpl src ${HOST1_4} dst ${HOST2_4} proto esp mode tunnel
228 tmpl src ${HOST2_4} dst ${HOST1_4} proto esp mode tunnel
233 tmpl src ${HOST2_4} dst ${HOST1_4} proto esp mode tunnel
239 tmpl src ${HOST1_6} dst ${HOST2_6} proto esp mode tunnel
244 tmpl src ${HOST1_6} dst ${HOST2_6} proto esp mode tunnel
249 tmpl src ${HOST2_6} dst ${HOST1_6} proto esp mode tunnel
254 tmpl src ${HOST2_6} dst ${HOST1_6} proto esp mode tunnel
260 proto esp spi ${SPI_1} reqid 0 mode tunnel \
267 proto esp spi ${SPI_1} reqid 0 mode tunnel \
[all …]
H A Dxfrm_policy.sh38 … add src $lnet dst $rnet dir out tmpl src $me dst $remote proto esp mode tunnel priority 100 actio…
40 … add src $rnet dst $lnet dir fwd tmpl src $remote dst $me proto esp mode tunnel priority 100 actio…
52 …st $me proto esp spi $spi_in enc aes $KEY_AES auth sha1 $KEY_SHA mode tunnel sel src $rnet dst …
53 … $remote proto esp spi $spi_out enc aes $KEY_AES auth sha1 $KEY_SHA mode tunnel sel src $lnet dst …
148 …olicy add dst $encryptip dir out tmpl src $me dst $remote proto esp mode tunnel priority 1 action …
272 …::0000 dst ff01::0014:0000:0001 dir in tmpl src :: dst :: proto esp mode tunnel priority 100 actio…
275 …rc e000:0001::0000 dst ff01::01 dir in tmpl src :: dst :: proto esp mode tunnel priority 100 actio…
/linux/drivers/net/ethernet/mellanox/mlx5/core/en/tc/act/
H A Dtun.c14 if (!act->tunnel) { in tc_act_can_offload_tun_encap()
29 parse_state->tun_info = act->tunnel; in tc_act_parse_tun_encap()
/linux/net/mpls/
H A DKconfig34 tristate "MPLS: IP over MPLS tunnel support"
37 mpls ip tunnel support.
/linux/arch/arm64/boot/dts/qcom/
H A Dsc7280-idp-ec-h1.dtsi29 i2c_tunnel: i2c-tunnel {
30 compatible = "google,cros-ec-i2c-tunnel";
/linux/drivers/gpu/drm/i915/display/
H A Dintel_atomic.c260 if (crtc_state->dp_tunnel_ref.tunnel) in intel_crtc_duplicate_state()
261 drm_dp_tunnel_ref_get(crtc_state->dp_tunnel_ref.tunnel, in intel_crtc_duplicate_state()
323 if (crtc_state->dp_tunnel_ref.tunnel) in intel_crtc_destroy_state()

1234