blob: 7b51f80030e85bf55586eb5e2ab5bd5e089d3f5b [file] [log] [blame]
Christopher Ferris106b3a82016-08-24 12:15:38 -07001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef _UAPI_MACSEC_H
20#define _UAPI_MACSEC_H
21#include <linux/types.h>
22#define MACSEC_GENL_NAME "macsec"
Christopher Ferris106b3a82016-08-24 12:15:38 -070023#define MACSEC_GENL_VERSION 1
24#define MACSEC_MAX_KEY_LEN 128
25#define MACSEC_KEYID_LEN 16
Christopher Ferris6cd53a52022-12-12 23:39:16 +000026#define MACSEC_SALT_LEN 12
Christopher Ferris76a1d452018-06-27 14:12:29 -070027#define MACSEC_CIPHER_ID_GCM_AES_128 0x0080C20001000001ULL
28#define MACSEC_CIPHER_ID_GCM_AES_256 0x0080C20001000002ULL
Christopher Ferrisaf09c702020-06-01 20:29:29 -070029#define MACSEC_CIPHER_ID_GCM_AES_XPN_128 0x0080C20001000003ULL
30#define MACSEC_CIPHER_ID_GCM_AES_XPN_256 0x0080C20001000004ULL
Christopher Ferris106b3a82016-08-24 12:15:38 -070031#define MACSEC_DEFAULT_CIPHER_ID 0x0080020001000001ULL
Christopher Ferris76a1d452018-06-27 14:12:29 -070032#define MACSEC_DEFAULT_CIPHER_ALT MACSEC_CIPHER_ID_GCM_AES_128
Christopher Ferris106b3a82016-08-24 12:15:38 -070033#define MACSEC_MIN_ICV_LEN 8
34#define MACSEC_MAX_ICV_LEN 32
Christopher Ferris49f525c2016-12-12 14:55:36 -080035#define MACSEC_STD_ICV_LEN 16
Christopher Ferris49f525c2016-12-12 14:55:36 -080036enum macsec_attrs {
Christopher Ferris106b3a82016-08-24 12:15:38 -070037 MACSEC_ATTR_UNSPEC,
38 MACSEC_ATTR_IFINDEX,
39 MACSEC_ATTR_RXSC_CONFIG,
Christopher Ferris49f525c2016-12-12 14:55:36 -080040 MACSEC_ATTR_SA_CONFIG,
Christopher Ferris106b3a82016-08-24 12:15:38 -070041 MACSEC_ATTR_SECY,
42 MACSEC_ATTR_TXSA_LIST,
43 MACSEC_ATTR_RXSC_LIST,
Christopher Ferris49f525c2016-12-12 14:55:36 -080044 MACSEC_ATTR_TXSC_STATS,
Christopher Ferris106b3a82016-08-24 12:15:38 -070045 MACSEC_ATTR_SECY_STATS,
Christopher Ferrisbb9fcb42020-04-06 11:38:04 -070046 MACSEC_ATTR_OFFLOAD,
Christopher Ferris106b3a82016-08-24 12:15:38 -070047 __MACSEC_ATTR_END,
48 NUM_MACSEC_ATTR = __MACSEC_ATTR_END,
Christopher Ferris49f525c2016-12-12 14:55:36 -080049 MACSEC_ATTR_MAX = __MACSEC_ATTR_END - 1,
Christopher Ferris106b3a82016-08-24 12:15:38 -070050};
51enum macsec_secy_attrs {
52 MACSEC_SECY_ATTR_UNSPEC,
Christopher Ferris49f525c2016-12-12 14:55:36 -080053 MACSEC_SECY_ATTR_SCI,
Christopher Ferris106b3a82016-08-24 12:15:38 -070054 MACSEC_SECY_ATTR_ENCODING_SA,
55 MACSEC_SECY_ATTR_WINDOW,
56 MACSEC_SECY_ATTR_CIPHER_SUITE,
Christopher Ferris49f525c2016-12-12 14:55:36 -080057 MACSEC_SECY_ATTR_ICV_LEN,
Christopher Ferris106b3a82016-08-24 12:15:38 -070058 MACSEC_SECY_ATTR_PROTECT,
59 MACSEC_SECY_ATTR_REPLAY,
60 MACSEC_SECY_ATTR_OPER,
Christopher Ferris49f525c2016-12-12 14:55:36 -080061 MACSEC_SECY_ATTR_VALIDATE,
Christopher Ferris106b3a82016-08-24 12:15:38 -070062 MACSEC_SECY_ATTR_ENCRYPT,
63 MACSEC_SECY_ATTR_INC_SCI,
64 MACSEC_SECY_ATTR_ES,
Christopher Ferris49f525c2016-12-12 14:55:36 -080065 MACSEC_SECY_ATTR_SCB,
Christopher Ferris106b3a82016-08-24 12:15:38 -070066 MACSEC_SECY_ATTR_PAD,
67 __MACSEC_SECY_ATTR_END,
68 NUM_MACSEC_SECY_ATTR = __MACSEC_SECY_ATTR_END,
Christopher Ferris49f525c2016-12-12 14:55:36 -080069 MACSEC_SECY_ATTR_MAX = __MACSEC_SECY_ATTR_END - 1,
Christopher Ferris106b3a82016-08-24 12:15:38 -070070};
71enum macsec_rxsc_attrs {
72 MACSEC_RXSC_ATTR_UNSPEC,
Christopher Ferris49f525c2016-12-12 14:55:36 -080073 MACSEC_RXSC_ATTR_SCI,
Christopher Ferris106b3a82016-08-24 12:15:38 -070074 MACSEC_RXSC_ATTR_ACTIVE,
75 MACSEC_RXSC_ATTR_SA_LIST,
76 MACSEC_RXSC_ATTR_STATS,
Christopher Ferris49f525c2016-12-12 14:55:36 -080077 MACSEC_RXSC_ATTR_PAD,
Christopher Ferris106b3a82016-08-24 12:15:38 -070078 __MACSEC_RXSC_ATTR_END,
79 NUM_MACSEC_RXSC_ATTR = __MACSEC_RXSC_ATTR_END,
80 MACSEC_RXSC_ATTR_MAX = __MACSEC_RXSC_ATTR_END - 1,
Christopher Ferris49f525c2016-12-12 14:55:36 -080081};
Christopher Ferris106b3a82016-08-24 12:15:38 -070082enum macsec_sa_attrs {
83 MACSEC_SA_ATTR_UNSPEC,
84 MACSEC_SA_ATTR_AN,
Christopher Ferris49f525c2016-12-12 14:55:36 -080085 MACSEC_SA_ATTR_ACTIVE,
Christopher Ferris106b3a82016-08-24 12:15:38 -070086 MACSEC_SA_ATTR_PN,
87 MACSEC_SA_ATTR_KEY,
88 MACSEC_SA_ATTR_KEYID,
Christopher Ferris49f525c2016-12-12 14:55:36 -080089 MACSEC_SA_ATTR_STATS,
Christopher Ferris106b3a82016-08-24 12:15:38 -070090 MACSEC_SA_ATTR_PAD,
Christopher Ferrisaf09c702020-06-01 20:29:29 -070091 MACSEC_SA_ATTR_SSCI,
92 MACSEC_SA_ATTR_SALT,
Christopher Ferris106b3a82016-08-24 12:15:38 -070093 __MACSEC_SA_ATTR_END,
94 NUM_MACSEC_SA_ATTR = __MACSEC_SA_ATTR_END,
Christopher Ferris49f525c2016-12-12 14:55:36 -080095 MACSEC_SA_ATTR_MAX = __MACSEC_SA_ATTR_END - 1,
Christopher Ferris106b3a82016-08-24 12:15:38 -070096};
Christopher Ferrisbb9fcb42020-04-06 11:38:04 -070097enum macsec_offload_attrs {
98 MACSEC_OFFLOAD_ATTR_UNSPEC,
99 MACSEC_OFFLOAD_ATTR_TYPE,
100 MACSEC_OFFLOAD_ATTR_PAD,
101 __MACSEC_OFFLOAD_ATTR_END,
102 NUM_MACSEC_OFFLOAD_ATTR = __MACSEC_OFFLOAD_ATTR_END,
103 MACSEC_OFFLOAD_ATTR_MAX = __MACSEC_OFFLOAD_ATTR_END - 1,
104};
Christopher Ferris106b3a82016-08-24 12:15:38 -0700105enum macsec_nl_commands {
106 MACSEC_CMD_GET_TXSC,
Christopher Ferris49f525c2016-12-12 14:55:36 -0800107 MACSEC_CMD_ADD_RXSC,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700108 MACSEC_CMD_DEL_RXSC,
109 MACSEC_CMD_UPD_RXSC,
110 MACSEC_CMD_ADD_TXSA,
Christopher Ferris49f525c2016-12-12 14:55:36 -0800111 MACSEC_CMD_DEL_TXSA,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700112 MACSEC_CMD_UPD_TXSA,
113 MACSEC_CMD_ADD_RXSA,
114 MACSEC_CMD_DEL_RXSA,
Christopher Ferris49f525c2016-12-12 14:55:36 -0800115 MACSEC_CMD_UPD_RXSA,
Christopher Ferrisbb9fcb42020-04-06 11:38:04 -0700116 MACSEC_CMD_UPD_OFFLOAD,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700117};
118enum macsec_rxsc_stats_attr {
119 MACSEC_RXSC_STATS_ATTR_UNSPEC,
Christopher Ferris49f525c2016-12-12 14:55:36 -0800120 MACSEC_RXSC_STATS_ATTR_IN_OCTETS_VALIDATED,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700121 MACSEC_RXSC_STATS_ATTR_IN_OCTETS_DECRYPTED,
122 MACSEC_RXSC_STATS_ATTR_IN_PKTS_UNCHECKED,
123 MACSEC_RXSC_STATS_ATTR_IN_PKTS_DELAYED,
Christopher Ferris49f525c2016-12-12 14:55:36 -0800124 MACSEC_RXSC_STATS_ATTR_IN_PKTS_OK,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700125 MACSEC_RXSC_STATS_ATTR_IN_PKTS_INVALID,
126 MACSEC_RXSC_STATS_ATTR_IN_PKTS_LATE,
127 MACSEC_RXSC_STATS_ATTR_IN_PKTS_NOT_VALID,
Christopher Ferris49f525c2016-12-12 14:55:36 -0800128 MACSEC_RXSC_STATS_ATTR_IN_PKTS_NOT_USING_SA,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700129 MACSEC_RXSC_STATS_ATTR_IN_PKTS_UNUSED_SA,
130 MACSEC_RXSC_STATS_ATTR_PAD,
131 __MACSEC_RXSC_STATS_ATTR_END,
Christopher Ferris49f525c2016-12-12 14:55:36 -0800132 NUM_MACSEC_RXSC_STATS_ATTR = __MACSEC_RXSC_STATS_ATTR_END,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700133 MACSEC_RXSC_STATS_ATTR_MAX = __MACSEC_RXSC_STATS_ATTR_END - 1,
134};
135enum macsec_sa_stats_attr {
Christopher Ferris49f525c2016-12-12 14:55:36 -0800136 MACSEC_SA_STATS_ATTR_UNSPEC,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700137 MACSEC_SA_STATS_ATTR_IN_PKTS_OK,
138 MACSEC_SA_STATS_ATTR_IN_PKTS_INVALID,
139 MACSEC_SA_STATS_ATTR_IN_PKTS_NOT_VALID,
Christopher Ferris49f525c2016-12-12 14:55:36 -0800140 MACSEC_SA_STATS_ATTR_IN_PKTS_NOT_USING_SA,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700141 MACSEC_SA_STATS_ATTR_IN_PKTS_UNUSED_SA,
142 MACSEC_SA_STATS_ATTR_OUT_PKTS_PROTECTED,
143 MACSEC_SA_STATS_ATTR_OUT_PKTS_ENCRYPTED,
Christopher Ferris49f525c2016-12-12 14:55:36 -0800144 __MACSEC_SA_STATS_ATTR_END,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700145 NUM_MACSEC_SA_STATS_ATTR = __MACSEC_SA_STATS_ATTR_END,
146 MACSEC_SA_STATS_ATTR_MAX = __MACSEC_SA_STATS_ATTR_END - 1,
147};
Christopher Ferris49f525c2016-12-12 14:55:36 -0800148enum macsec_txsc_stats_attr {
Christopher Ferris106b3a82016-08-24 12:15:38 -0700149 MACSEC_TXSC_STATS_ATTR_UNSPEC,
150 MACSEC_TXSC_STATS_ATTR_OUT_PKTS_PROTECTED,
151 MACSEC_TXSC_STATS_ATTR_OUT_PKTS_ENCRYPTED,
Christopher Ferris49f525c2016-12-12 14:55:36 -0800152 MACSEC_TXSC_STATS_ATTR_OUT_OCTETS_PROTECTED,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700153 MACSEC_TXSC_STATS_ATTR_OUT_OCTETS_ENCRYPTED,
154 MACSEC_TXSC_STATS_ATTR_PAD,
155 __MACSEC_TXSC_STATS_ATTR_END,
Christopher Ferris49f525c2016-12-12 14:55:36 -0800156 NUM_MACSEC_TXSC_STATS_ATTR = __MACSEC_TXSC_STATS_ATTR_END,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700157 MACSEC_TXSC_STATS_ATTR_MAX = __MACSEC_TXSC_STATS_ATTR_END - 1,
158};
159enum macsec_secy_stats_attr {
Christopher Ferris49f525c2016-12-12 14:55:36 -0800160 MACSEC_SECY_STATS_ATTR_UNSPEC,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700161 MACSEC_SECY_STATS_ATTR_OUT_PKTS_UNTAGGED,
162 MACSEC_SECY_STATS_ATTR_IN_PKTS_UNTAGGED,
163 MACSEC_SECY_STATS_ATTR_OUT_PKTS_TOO_LONG,
Christopher Ferris49f525c2016-12-12 14:55:36 -0800164 MACSEC_SECY_STATS_ATTR_IN_PKTS_NO_TAG,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700165 MACSEC_SECY_STATS_ATTR_IN_PKTS_BAD_TAG,
166 MACSEC_SECY_STATS_ATTR_IN_PKTS_UNKNOWN_SCI,
167 MACSEC_SECY_STATS_ATTR_IN_PKTS_NO_SCI,
Christopher Ferris49f525c2016-12-12 14:55:36 -0800168 MACSEC_SECY_STATS_ATTR_IN_PKTS_OVERRUN,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700169 MACSEC_SECY_STATS_ATTR_PAD,
170 __MACSEC_SECY_STATS_ATTR_END,
171 NUM_MACSEC_SECY_STATS_ATTR = __MACSEC_SECY_STATS_ATTR_END,
Christopher Ferris49f525c2016-12-12 14:55:36 -0800172 MACSEC_SECY_STATS_ATTR_MAX = __MACSEC_SECY_STATS_ATTR_END - 1,
Christopher Ferris106b3a82016-08-24 12:15:38 -0700173};
174#endif