Lines Matching refs:tunnel
38 int flags, struct l2tp_tunnel *tunnel, u8 cmd);
51 struct l2tp_tunnel *tunnel;
62 tunnel = l2tp_tunnel_get(net, tunnel_id);
63 if (tunnel) {
64 session = l2tp_tunnel_get_session(tunnel, session_id);
65 l2tp_tunnel_dec_refcount(tunnel);
104 struct l2tp_tunnel *tunnel,
115 NLM_F_ACK, tunnel, cmd);
192 struct l2tp_tunnel *tunnel;
220 /* Managed tunnels take the tunnel socket from userspace.
222 * for the kernel to create the tunnel socket itself.
237 peer_tunnel_id, &cfg, &tunnel);
244 l2tp_tunnel_inc_refcount(tunnel);
245 ret = l2tp_tunnel_register(tunnel, net, &cfg);
247 kfree(tunnel);
250 ret = l2tp_tunnel_notify(&l2tp_nl_family, info, tunnel,
252 l2tp_tunnel_dec_refcount(tunnel);
260 struct l2tp_tunnel *tunnel;
271 tunnel = l2tp_tunnel_get(net, tunnel_id);
272 if (!tunnel) {
278 tunnel, L2TP_CMD_TUNNEL_DELETE);
280 l2tp_tunnel_delete(tunnel);
282 l2tp_tunnel_dec_refcount(tunnel);
290 struct l2tp_tunnel *tunnel;
301 tunnel = l2tp_tunnel_get(net, tunnel_id);
302 if (!tunnel) {
308 tunnel, L2TP_CMD_TUNNEL_MODIFY);
310 l2tp_tunnel_dec_refcount(tunnel);
367 /* Append attributes for the tunnel address, handling the different attribute types
368 * used for different tunnel encapsulation and AF_INET v.s. AF_INET6.
370 static int l2tp_nl_tunnel_send_addr(struct sk_buff *skb, struct l2tp_tunnel *tunnel)
372 struct sock *sk = tunnel->sock;
379 return l2tp_nl_tunnel_send_addr6(skb, sk, tunnel->encap);
381 return l2tp_nl_tunnel_send_addr4(skb, sk, tunnel->encap);
385 struct l2tp_tunnel *tunnel, u8 cmd)
394 if (nla_put_u8(skb, L2TP_ATTR_PROTO_VERSION, tunnel->version) ||
395 nla_put_u32(skb, L2TP_ATTR_CONN_ID, tunnel->tunnel_id) ||
396 nla_put_u32(skb, L2TP_ATTR_PEER_CONN_ID, tunnel->peer_tunnel_id) ||
398 nla_put_u16(skb, L2TP_ATTR_ENCAP_TYPE, tunnel->encap))
406 atomic_long_read(&tunnel->stats.tx_packets),
409 atomic_long_read(&tunnel->stats.tx_bytes),
412 atomic_long_read(&tunnel->stats.tx_errors),
415 atomic_long_read(&tunnel->stats.rx_packets),
418 atomic_long_read(&tunnel->stats.rx_bytes),
421 atomic_long_read(&tunnel->stats.rx_seq_discards),
424 atomic_long_read(&tunnel->stats.rx_cookie_discards),
427 atomic_long_read(&tunnel->stats.rx_oos_packets),
430 atomic_long_read(&tunnel->stats.rx_errors),
433 atomic_long_read(&tunnel->stats.rx_invalid),
438 if (l2tp_nl_tunnel_send_addr(skb, tunnel))
451 struct l2tp_tunnel *tunnel;
470 tunnel = l2tp_tunnel_get(net, tunnel_id);
471 if (!tunnel) {
477 NLM_F_ACK, tunnel, L2TP_CMD_TUNNEL_GET);
481 l2tp_tunnel_dec_refcount(tunnel);
486 l2tp_tunnel_dec_refcount(tunnel);
496 struct l2tp_tunnel *tunnel;
500 tunnel = l2tp_tunnel_get_nth(net, ti);
501 if (!tunnel)
506 tunnel, L2TP_CMD_TUNNEL_GET) < 0) {
507 l2tp_tunnel_dec_refcount(tunnel);
510 l2tp_tunnel_dec_refcount(tunnel);
527 struct l2tp_tunnel *tunnel;
538 tunnel = l2tp_tunnel_get(net, tunnel_id);
539 if (!tunnel) {
567 if (tunnel->version == 2 && cfg.pw_type != L2TP_PWTYPE_PPP) {
572 if (tunnel->version > 2) {
632 ret = l2tp_nl_cmd_ops[cfg.pw_type]->session_create(net, tunnel,
638 session = l2tp_tunnel_get_session(tunnel, session_id);
647 l2tp_tunnel_dec_refcount(tunnel);
694 l2tp_session_set_header_len(session, session->tunnel->version);
717 struct l2tp_tunnel *tunnel = session->tunnel;
723 if (nla_put_u32(skb, L2TP_ATTR_CONN_ID, tunnel->tunnel_id) ||
725 nla_put_u32(skb, L2TP_ATTR_PEER_CONN_ID, tunnel->peer_tunnel_id) ||
740 (l2tp_tunnel_uses_xfrm(tunnel) &&
833 struct l2tp_tunnel *tunnel = NULL;
838 if (!tunnel) {
839 tunnel = l2tp_tunnel_get_nth(net, ti);
840 if (!tunnel)
844 session = l2tp_session_get_nth(tunnel, si);
847 l2tp_tunnel_dec_refcount(tunnel);
848 tunnel = NULL;
857 l2tp_tunnel_dec_refcount(tunnel);