master
1/* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) */
2/* Do not edit directly, auto-generated from: */
3/* Documentation/netlink/specs/ovpn.yaml */
4/* YNL-GEN uapi header */
5
6#ifndef _LINUX_OVPN_H
7#define _LINUX_OVPN_H
8
9#define OVPN_FAMILY_NAME "ovpn"
10#define OVPN_FAMILY_VERSION 1
11
12#define OVPN_NONCE_TAIL_SIZE 8
13
14enum ovpn_cipher_alg {
15 OVPN_CIPHER_ALG_NONE,
16 OVPN_CIPHER_ALG_AES_GCM,
17 OVPN_CIPHER_ALG_CHACHA20_POLY1305,
18};
19
20enum ovpn_del_peer_reason {
21 OVPN_DEL_PEER_REASON_TEARDOWN,
22 OVPN_DEL_PEER_REASON_USERSPACE,
23 OVPN_DEL_PEER_REASON_EXPIRED,
24 OVPN_DEL_PEER_REASON_TRANSPORT_ERROR,
25 OVPN_DEL_PEER_REASON_TRANSPORT_DISCONNECT,
26};
27
28enum ovpn_key_slot {
29 OVPN_KEY_SLOT_PRIMARY,
30 OVPN_KEY_SLOT_SECONDARY,
31};
32
33enum {
34 OVPN_A_PEER_ID = 1,
35 OVPN_A_PEER_REMOTE_IPV4,
36 OVPN_A_PEER_REMOTE_IPV6,
37 OVPN_A_PEER_REMOTE_IPV6_SCOPE_ID,
38 OVPN_A_PEER_REMOTE_PORT,
39 OVPN_A_PEER_SOCKET,
40 OVPN_A_PEER_SOCKET_NETNSID,
41 OVPN_A_PEER_VPN_IPV4,
42 OVPN_A_PEER_VPN_IPV6,
43 OVPN_A_PEER_LOCAL_IPV4,
44 OVPN_A_PEER_LOCAL_IPV6,
45 OVPN_A_PEER_LOCAL_PORT,
46 OVPN_A_PEER_KEEPALIVE_INTERVAL,
47 OVPN_A_PEER_KEEPALIVE_TIMEOUT,
48 OVPN_A_PEER_DEL_REASON,
49 OVPN_A_PEER_VPN_RX_BYTES,
50 OVPN_A_PEER_VPN_TX_BYTES,
51 OVPN_A_PEER_VPN_RX_PACKETS,
52 OVPN_A_PEER_VPN_TX_PACKETS,
53 OVPN_A_PEER_LINK_RX_BYTES,
54 OVPN_A_PEER_LINK_TX_BYTES,
55 OVPN_A_PEER_LINK_RX_PACKETS,
56 OVPN_A_PEER_LINK_TX_PACKETS,
57
58 __OVPN_A_PEER_MAX,
59 OVPN_A_PEER_MAX = (__OVPN_A_PEER_MAX - 1)
60};
61
62enum {
63 OVPN_A_KEYCONF_PEER_ID = 1,
64 OVPN_A_KEYCONF_SLOT,
65 OVPN_A_KEYCONF_KEY_ID,
66 OVPN_A_KEYCONF_CIPHER_ALG,
67 OVPN_A_KEYCONF_ENCRYPT_DIR,
68 OVPN_A_KEYCONF_DECRYPT_DIR,
69
70 __OVPN_A_KEYCONF_MAX,
71 OVPN_A_KEYCONF_MAX = (__OVPN_A_KEYCONF_MAX - 1)
72};
73
74enum {
75 OVPN_A_KEYDIR_CIPHER_KEY = 1,
76 OVPN_A_KEYDIR_NONCE_TAIL,
77
78 __OVPN_A_KEYDIR_MAX,
79 OVPN_A_KEYDIR_MAX = (__OVPN_A_KEYDIR_MAX - 1)
80};
81
82enum {
83 OVPN_A_IFINDEX = 1,
84 OVPN_A_PEER,
85 OVPN_A_KEYCONF,
86
87 __OVPN_A_MAX,
88 OVPN_A_MAX = (__OVPN_A_MAX - 1)
89};
90
91enum {
92 OVPN_CMD_PEER_NEW = 1,
93 OVPN_CMD_PEER_SET,
94 OVPN_CMD_PEER_GET,
95 OVPN_CMD_PEER_DEL,
96 OVPN_CMD_PEER_DEL_NTF,
97 OVPN_CMD_KEY_NEW,
98 OVPN_CMD_KEY_GET,
99 OVPN_CMD_KEY_SWAP,
100 OVPN_CMD_KEY_SWAP_NTF,
101 OVPN_CMD_KEY_DEL,
102
103 __OVPN_CMD_MAX,
104 OVPN_CMD_MAX = (__OVPN_CMD_MAX - 1)
105};
106
107#define OVPN_MCGRP_PEERS "peers"
108
109#endif /* _LINUX_OVPN_H */