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 _UAPI_LINUX_OVPN_H 7 #define _UAPI_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 14 enum ovpn_cipher_alg { 15 OVPN_CIPHER_ALG_NONE, 16 OVPN_CIPHER_ALG_AES_GCM, 17 OVPN_CIPHER_ALG_CHACHA20_POLY1305, 18 }; 19 20 enum 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 28 enum ovpn_key_slot { 29 OVPN_KEY_SLOT_PRIMARY, 30 OVPN_KEY_SLOT_SECONDARY, 31 }; 32 33 enum { 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 62 enum { 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 74 enum { 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 82 enum { 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 91 enum { 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 /* _UAPI_LINUX_OVPN_H */ 110