Files
linux-stable-mirror/include/uapi/linux/psp.h
T
Wei Wang 06c2dce2d0 psp: add new netlink cmd for dev-assoc and dev-disassoc
The main purpose of this cmd is to be able to associate a
non-psp-capable device (e.g. veth or netkit) with a psp device.
One use case is if we create a pair of veth/netkit, and assign 1 end
inside a netns, while leaving the other end within the default netns,
with a real PSP device, e.g. netdevsim or a physical PSP-capable NIC.
With this command, we could associate the veth/netkit inside the netns
with PSP device, so the virtual device could act as PSP-capable device
to initiate PSP connections, and performs PSP encryption/decryption on
the real PSP device.

Signed-off-by: Wei Wang <weibunny@fb.com>
Reviewed-by: Daniel Zahka <daniel.zahka@gmail.com>
Link: https://patch.msgid.link/20260608233118.2694144-3-weibunny.kernel@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2026-06-12 18:31:32 -07:00

99 lines
1.9 KiB
C

/* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) */
/* Do not edit directly, auto-generated from: */
/* Documentation/netlink/specs/psp.yaml */
/* YNL-GEN uapi header */
/* To regenerate run: tools/net/ynl/ynl-regen.sh */
#ifndef _UAPI_LINUX_PSP_H
#define _UAPI_LINUX_PSP_H
#define PSP_FAMILY_NAME "psp"
#define PSP_FAMILY_VERSION 1
enum psp_version {
PSP_VERSION_HDR0_AES_GCM_128,
PSP_VERSION_HDR0_AES_GCM_256,
PSP_VERSION_HDR0_AES_GMAC_128,
PSP_VERSION_HDR0_AES_GMAC_256,
};
enum {
PSP_A_ASSOC_DEV_INFO_IFINDEX = 1,
PSP_A_ASSOC_DEV_INFO_NSID,
__PSP_A_ASSOC_DEV_INFO_MAX,
PSP_A_ASSOC_DEV_INFO_MAX = (__PSP_A_ASSOC_DEV_INFO_MAX - 1)
};
enum {
PSP_A_DEV_ID = 1,
PSP_A_DEV_IFINDEX,
PSP_A_DEV_PSP_VERSIONS_CAP,
PSP_A_DEV_PSP_VERSIONS_ENA,
PSP_A_DEV_ASSOC_LIST,
PSP_A_DEV_NSID,
PSP_A_DEV_BY_ASSOCIATION,
__PSP_A_DEV_MAX,
PSP_A_DEV_MAX = (__PSP_A_DEV_MAX - 1)
};
enum {
PSP_A_ASSOC_DEV_ID = 1,
PSP_A_ASSOC_VERSION,
PSP_A_ASSOC_RX_KEY,
PSP_A_ASSOC_TX_KEY,
PSP_A_ASSOC_SOCK_FD,
__PSP_A_ASSOC_MAX,
PSP_A_ASSOC_MAX = (__PSP_A_ASSOC_MAX - 1)
};
enum {
PSP_A_KEYS_KEY = 1,
PSP_A_KEYS_SPI,
__PSP_A_KEYS_MAX,
PSP_A_KEYS_MAX = (__PSP_A_KEYS_MAX - 1)
};
enum {
PSP_A_STATS_DEV_ID = 1,
PSP_A_STATS_KEY_ROTATIONS,
PSP_A_STATS_STALE_EVENTS,
PSP_A_STATS_RX_PACKETS,
PSP_A_STATS_RX_BYTES,
PSP_A_STATS_RX_AUTH_FAIL,
PSP_A_STATS_RX_ERROR,
PSP_A_STATS_RX_BAD,
PSP_A_STATS_TX_PACKETS,
PSP_A_STATS_TX_BYTES,
PSP_A_STATS_TX_ERROR,
__PSP_A_STATS_MAX,
PSP_A_STATS_MAX = (__PSP_A_STATS_MAX - 1)
};
enum {
PSP_CMD_DEV_GET = 1,
PSP_CMD_DEV_ADD_NTF,
PSP_CMD_DEV_DEL_NTF,
PSP_CMD_DEV_SET,
PSP_CMD_DEV_CHANGE_NTF,
PSP_CMD_KEY_ROTATE,
PSP_CMD_KEY_ROTATE_NTF,
PSP_CMD_RX_ASSOC,
PSP_CMD_TX_ASSOC,
PSP_CMD_GET_STATS,
PSP_CMD_DEV_ASSOC,
PSP_CMD_DEV_DISASSOC,
__PSP_CMD_MAX,
PSP_CMD_MAX = (__PSP_CMD_MAX - 1)
};
#define PSP_MCGRP_MGMT "mgmt"
#define PSP_MCGRP_USE "use"
#endif /* _UAPI_LINUX_PSP_H */