xref: /linux/drivers/net/ovpn/udp.h (revision 2c7e4a2663a1ab5a740c59c31991579b6b865a26)
1f6226ae7SAntonio Quartulli /* SPDX-License-Identifier: GPL-2.0-only */
2f6226ae7SAntonio Quartulli /*  OpenVPN data channel offload
3f6226ae7SAntonio Quartulli  *
4f6226ae7SAntonio Quartulli  *  Copyright (C) 2019-2025 OpenVPN, Inc.
5f6226ae7SAntonio Quartulli  *
6f6226ae7SAntonio Quartulli  *  Author:	Antonio Quartulli <antonio@openvpn.net>
7f6226ae7SAntonio Quartulli  */
8f6226ae7SAntonio Quartulli 
9f6226ae7SAntonio Quartulli #ifndef _NET_OVPN_UDP_H_
10f6226ae7SAntonio Quartulli #define _NET_OVPN_UDP_H_
11f6226ae7SAntonio Quartulli 
1208857b5eSAntonio Quartulli #include <net/sock.h>
1308857b5eSAntonio Quartulli 
1408857b5eSAntonio Quartulli struct ovpn_peer;
15f6226ae7SAntonio Quartulli struct ovpn_priv;
16f6226ae7SAntonio Quartulli struct socket;
17f6226ae7SAntonio Quartulli 
18*ba499a07SAntonio Quartulli int ovpn_udp_socket_attach(struct ovpn_socket *ovpn_sock, struct socket *sock,
19f6226ae7SAntonio Quartulli 			   struct ovpn_priv *ovpn);
20f6226ae7SAntonio Quartulli void ovpn_udp_socket_detach(struct ovpn_socket *ovpn_sock);
21f6226ae7SAntonio Quartulli 
22*ba499a07SAntonio Quartulli void ovpn_udp_send_skb(struct ovpn_peer *peer, struct sock *sk,
2308857b5eSAntonio Quartulli 		       struct sk_buff *skb);
2408857b5eSAntonio Quartulli 
25f6226ae7SAntonio Quartulli #endif /* _NET_OVPN_UDP_H_ */
26