/* 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 _LINUX_PSP_H
#define _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_DEV_ID = 1,
	PSP_A_DEV_IFINDEX,
	PSP_A_DEV_PSP_VERSIONS_CAP,
	PSP_A_DEV_PSP_VERSIONS_ENA,

	__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_MAX,
	PSP_CMD_MAX = (__PSP_CMD_MAX - 1)
};

#define PSP_MCGRP_MGMT	"mgmt"
#define PSP_MCGRP_USE	"use"

#endif /* _LINUX_PSP_H */
