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/wireguard.yaml */ 4 /* YNL-GEN uapi header */ 5 /* To regenerate run: tools/net/ynl/ynl-regen.sh */ 6 7 #ifndef _UAPI_LINUX_WIREGUARD_H 8 #define _UAPI_LINUX_WIREGUARD_H 9 10 #define WG_GENL_NAME "wireguard" 11 #define WG_GENL_VERSION 1 12 13 #define WG_KEY_LEN 32 14 15 enum wgdevice_flag { 16 WGDEVICE_F_REPLACE_PEERS = 1, 17 }; 18 19 enum wgpeer_flag { 20 WGPEER_F_REMOVE_ME = 1, 21 WGPEER_F_REPLACE_ALLOWEDIPS = 2, 22 WGPEER_F_UPDATE_ONLY = 4, 23 }; 24 25 enum wgallowedip_flag { 26 WGALLOWEDIP_F_REMOVE_ME = 1, 27 }; 28 29 enum wgdevice_attribute { 30 WGDEVICE_A_UNSPEC, 31 WGDEVICE_A_IFINDEX, 32 WGDEVICE_A_IFNAME, 33 WGDEVICE_A_PRIVATE_KEY, 34 WGDEVICE_A_PUBLIC_KEY, 35 WGDEVICE_A_FLAGS, 36 WGDEVICE_A_LISTEN_PORT, 37 WGDEVICE_A_FWMARK, 38 WGDEVICE_A_PEERS, 39 40 __WGDEVICE_A_LAST 41 }; 42 #define WGDEVICE_A_MAX (__WGDEVICE_A_LAST - 1) 43 44 enum wgpeer_attribute { 45 WGPEER_A_UNSPEC, 46 WGPEER_A_PUBLIC_KEY, 47 WGPEER_A_PRESHARED_KEY, 48 WGPEER_A_FLAGS, 49 WGPEER_A_ENDPOINT, 50 WGPEER_A_PERSISTENT_KEEPALIVE_INTERVAL, 51 WGPEER_A_LAST_HANDSHAKE_TIME, 52 WGPEER_A_RX_BYTES, 53 WGPEER_A_TX_BYTES, 54 WGPEER_A_ALLOWEDIPS, 55 WGPEER_A_PROTOCOL_VERSION, 56 57 __WGPEER_A_LAST 58 }; 59 #define WGPEER_A_MAX (__WGPEER_A_LAST - 1) 60 61 enum wgallowedip_attribute { 62 WGALLOWEDIP_A_UNSPEC, 63 WGALLOWEDIP_A_FAMILY, 64 WGALLOWEDIP_A_IPADDR, 65 WGALLOWEDIP_A_CIDR_MASK, 66 WGALLOWEDIP_A_FLAGS, 67 68 __WGALLOWEDIP_A_LAST 69 }; 70 #define WGALLOWEDIP_A_MAX (__WGALLOWEDIP_A_LAST - 1) 71 72 enum wg_cmd { 73 WG_CMD_GET_DEVICE, 74 WG_CMD_SET_DEVICE, 75 76 __WG_CMD_MAX 77 }; 78 #define WG_CMD_MAX (__WG_CMD_MAX - 1) 79 80 #endif /* _UAPI_LINUX_WIREGUARD_H */ 81