Lines Matching refs:tunnel
305 struct l2tp_tunnel *tunnel; in pppol2tp_sendmsg() local
320 tunnel = l2tp_sock_to_tunnel(ps->tunnel_sock); in pppol2tp_sendmsg()
321 if (tunnel == NULL) in pppol2tp_sendmsg()
324 uhlen = (tunnel->encap == L2TP_ENCAPTYPE_UDP) ? sizeof(struct udphdr) : 0; in pppol2tp_sendmsg()
391 struct l2tp_tunnel *tunnel; in pppol2tp_xmit() local
407 tunnel = l2tp_sock_to_tunnel(sk_tun); in pppol2tp_xmit()
408 if (tunnel == NULL) in pppol2tp_xmit()
411 uhlen = (tunnel->encap == L2TP_ENCAPTYPE_UDP) ? sizeof(struct udphdr) : 0; in pppol2tp_xmit()
595 struct l2tp_tunnel *tunnel; in pppol2tp_connect() local
670 tunnel = l2tp_tunnel_find(sock_net(sk), tunnel_id); in pppol2tp_connect()
677 if (tunnel == NULL) { in pppol2tp_connect()
682 error = l2tp_tunnel_create(sock_net(sk), fd, ver, tunnel_id, peer_tunnel_id, &tcfg, &tunnel); in pppol2tp_connect()
689 if (tunnel == NULL) in pppol2tp_connect()
693 if (tunnel->sock == NULL) in pppol2tp_connect()
697 if (tunnel->recv_payload_hook == NULL) in pppol2tp_connect()
698 tunnel->recv_payload_hook = pppol2tp_recv_payload_hook; in pppol2tp_connect()
700 if (tunnel->peer_tunnel_id == 0) in pppol2tp_connect()
701 tunnel->peer_tunnel_id = peer_tunnel_id; in pppol2tp_connect()
709 session = l2tp_session_find(sock_net(sk), tunnel, session_id); in pppol2tp_connect()
718 tunnel, session_id, in pppol2tp_connect()
731 if (ps->tunnel_sock != tunnel->sock) in pppol2tp_connect()
739 ps->tunnel_sock = tunnel->sock; in pppol2tp_connect()
754 dst = sk_dst_get(tunnel->sock); in pppol2tp_connect()
809 struct l2tp_tunnel *tunnel; in pppol2tp_session_create() local
813 tunnel = l2tp_tunnel_find(net, tunnel_id); in pppol2tp_session_create()
817 if (tunnel == NULL) in pppol2tp_session_create()
821 if (tunnel->sock == NULL) in pppol2tp_session_create()
826 session = l2tp_session_find(net, tunnel, session_id); in pppol2tp_session_create()
839 tunnel, session_id, in pppol2tp_session_create()
845 ps->tunnel_sock = tunnel->sock; in pppol2tp_session_create()
866 struct l2tp_tunnel *tunnel; in pppol2tp_getname() local
883 tunnel = l2tp_sock_to_tunnel(pls->tunnel_sock); in pppol2tp_getname()
884 if (tunnel == NULL) { in pppol2tp_getname()
889 inet = inet_sk(tunnel->sock); in pppol2tp_getname()
890 if ((tunnel->version == 2) && (tunnel->sock->sk_family == AF_INET)) { in pppol2tp_getname()
896 sp.pppol2tp.fd = tunnel->fd; in pppol2tp_getname()
898 sp.pppol2tp.s_tunnel = tunnel->tunnel_id; in pppol2tp_getname()
899 sp.pppol2tp.d_tunnel = tunnel->peer_tunnel_id; in pppol2tp_getname()
907 } else if ((tunnel->version == 2) && in pppol2tp_getname()
908 (tunnel->sock->sk_family == AF_INET6)) { in pppol2tp_getname()
915 sp.pppol2tp.fd = tunnel->fd; in pppol2tp_getname()
917 sp.pppol2tp.s_tunnel = tunnel->tunnel_id; in pppol2tp_getname()
918 sp.pppol2tp.d_tunnel = tunnel->peer_tunnel_id; in pppol2tp_getname()
923 memcpy(&sp.pppol2tp.addr.sin6_addr, &tunnel->sock->sk_v6_daddr, in pppol2tp_getname()
924 sizeof(tunnel->sock->sk_v6_daddr)); in pppol2tp_getname()
926 } else if ((tunnel->version == 3) && in pppol2tp_getname()
927 (tunnel->sock->sk_family == AF_INET6)) { in pppol2tp_getname()
934 sp.pppol2tp.fd = tunnel->fd; in pppol2tp_getname()
936 sp.pppol2tp.s_tunnel = tunnel->tunnel_id; in pppol2tp_getname()
937 sp.pppol2tp.d_tunnel = tunnel->peer_tunnel_id; in pppol2tp_getname()
942 memcpy(&sp.pppol2tp.addr.sin6_addr, &tunnel->sock->sk_v6_daddr, in pppol2tp_getname()
943 sizeof(tunnel->sock->sk_v6_daddr)); in pppol2tp_getname()
946 } else if (tunnel->version == 3) { in pppol2tp_getname()
952 sp.pppol2tp.fd = tunnel->fd; in pppol2tp_getname()
954 sp.pppol2tp.s_tunnel = tunnel->tunnel_id; in pppol2tp_getname()
955 sp.pppol2tp.d_tunnel = tunnel->peer_tunnel_id; in pppol2tp_getname()
1009 struct l2tp_tunnel *tunnel = session->tunnel; in pppol2tp_session_ioctl() local
1108 stats.tunnel_id = tunnel->tunnel_id; in pppol2tp_session_ioctl()
1135 static int pppol2tp_tunnel_ioctl(struct l2tp_tunnel *tunnel, in pppol2tp_tunnel_ioctl() argument
1142 l2tp_dbg(tunnel, PPPOL2TP_MSG_CONTROL, in pppol2tp_tunnel_ioctl()
1144 tunnel->name, cmd, arg); in pppol2tp_tunnel_ioctl()
1146 sk = tunnel->sock; in pppol2tp_tunnel_ioctl()
1163 l2tp_session_find(sock_net(sk), tunnel, stats.session_id); in pppol2tp_tunnel_ioctl()
1173 pppol2tp_copy_stats(&stats, &tunnel->stats); in pppol2tp_tunnel_ioctl()
1178 l2tp_info(tunnel, PPPOL2TP_MSG_CONTROL, "%s: get L2TP stats\n", in pppol2tp_tunnel_ioctl()
1179 tunnel->name); in pppol2tp_tunnel_ioctl()
1201 struct l2tp_tunnel *tunnel; in pppol2tp_ioctl() local
1230 tunnel = l2tp_sock_to_tunnel(ps->tunnel_sock); in pppol2tp_ioctl()
1231 if (tunnel == NULL) in pppol2tp_ioctl()
1234 err = pppol2tp_tunnel_ioctl(tunnel, cmd, arg); in pppol2tp_ioctl()
1260 struct l2tp_tunnel *tunnel, in pppol2tp_tunnel_setsockopt() argument
1267 tunnel->debug = val; in pppol2tp_tunnel_setsockopt()
1268 l2tp_info(tunnel, PPPOL2TP_MSG_CONTROL, "%s: set debug=%x\n", in pppol2tp_tunnel_setsockopt()
1269 tunnel->name, tunnel->debug); in pppol2tp_tunnel_setsockopt()
1313 l2tp_session_set_header_len(session, session->tunnel->version); in pppol2tp_session_setsockopt()
1361 struct l2tp_tunnel *tunnel; in pppol2tp_setsockopt() local
1391 tunnel = l2tp_sock_to_tunnel(ps->tunnel_sock); in pppol2tp_setsockopt()
1392 if (tunnel == NULL) in pppol2tp_setsockopt()
1395 err = pppol2tp_tunnel_setsockopt(sk, tunnel, optname, val); in pppol2tp_setsockopt()
1411 struct l2tp_tunnel *tunnel, in pppol2tp_tunnel_getsockopt() argument
1418 *val = tunnel->debug; in pppol2tp_tunnel_getsockopt()
1419 l2tp_info(tunnel, PPPOL2TP_MSG_CONTROL, "%s: get debug=%x\n", in pppol2tp_tunnel_getsockopt()
1420 tunnel->name, tunnel->debug); in pppol2tp_tunnel_getsockopt()
1487 struct l2tp_tunnel *tunnel; in pppol2tp_getsockopt() local
1518 tunnel = l2tp_sock_to_tunnel(ps->tunnel_sock); in pppol2tp_getsockopt()
1519 if (tunnel == NULL) in pppol2tp_getsockopt()
1522 err = pppol2tp_tunnel_getsockopt(sk, tunnel, optname, &val); in pppol2tp_getsockopt()
1556 struct l2tp_tunnel *tunnel; member
1563 pd->tunnel = l2tp_tunnel_find_nth(net, pd->tunnel_idx); in pppol2tp_next_tunnel()
1566 if (pd->tunnel == NULL) in pppol2tp_next_tunnel()
1570 if (pd->tunnel->version < 3) in pppol2tp_next_tunnel()
1577 pd->session = l2tp_session_find_nth(pd->tunnel, pd->session_idx); in pppol2tp_next_session()
1599 if (pd->tunnel == NULL) in pppol2tp_seq_start()
1605 if ((pd->tunnel == NULL) && (pd->session == NULL)) in pppol2tp_seq_start()
1625 struct l2tp_tunnel *tunnel = v; in pppol2tp_seq_tunnel_show() local
1628 tunnel->name, in pppol2tp_seq_tunnel_show()
1629 (tunnel == tunnel->sock->sk_user_data) ? 'Y' : 'N', in pppol2tp_seq_tunnel_show()
1630 atomic_read(&tunnel->ref_count) - 1); in pppol2tp_seq_tunnel_show()
1632 tunnel->debug, in pppol2tp_seq_tunnel_show()
1633 atomic_long_read(&tunnel->stats.tx_packets), in pppol2tp_seq_tunnel_show()
1634 atomic_long_read(&tunnel->stats.tx_bytes), in pppol2tp_seq_tunnel_show()
1635 atomic_long_read(&tunnel->stats.tx_errors), in pppol2tp_seq_tunnel_show()
1636 atomic_long_read(&tunnel->stats.rx_packets), in pppol2tp_seq_tunnel_show()
1637 atomic_long_read(&tunnel->stats.rx_bytes), in pppol2tp_seq_tunnel_show()
1638 atomic_long_read(&tunnel->stats.rx_errors)); in pppol2tp_seq_tunnel_show()
1644 struct l2tp_tunnel *tunnel = session->tunnel; in pppol2tp_seq_session_show() local
1650 if (tunnel->sock) { in pppol2tp_seq_session_show()
1651 struct inet_sock *inet = inet_sk(tunnel->sock); in pppol2tp_seq_session_show()
1659 tunnel->tunnel_id, in pppol2tp_seq_session_show()
1661 tunnel->peer_tunnel_id, in pppol2tp_seq_session_show()
1705 pppol2tp_seq_tunnel_show(m, pd->tunnel); in pppol2tp_seq_show()