Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost
[linux-2.6-microblaze.git] / include / uapi / linux / ioam6_genl.h
1 /* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
2 /*
3  *  IPv6 IOAM Generic Netlink API
4  *
5  *  Author:
6  *  Justin Iurman <justin.iurman@uliege.be>
7  */
8
9 #ifndef _UAPI_LINUX_IOAM6_GENL_H
10 #define _UAPI_LINUX_IOAM6_GENL_H
11
12 #define IOAM6_GENL_NAME "IOAM6"
13 #define IOAM6_GENL_VERSION 0x1
14
15 enum {
16         IOAM6_ATTR_UNSPEC,
17
18         IOAM6_ATTR_NS_ID,       /* u16 */
19         IOAM6_ATTR_NS_DATA,     /* u32 */
20         IOAM6_ATTR_NS_DATA_WIDE,/* u64 */
21
22 #define IOAM6_MAX_SCHEMA_DATA_LEN (255 * 4)
23         IOAM6_ATTR_SC_ID,       /* u32 */
24         IOAM6_ATTR_SC_DATA,     /* Binary */
25         IOAM6_ATTR_SC_NONE,     /* Flag */
26
27         IOAM6_ATTR_PAD,
28
29         __IOAM6_ATTR_MAX,
30 };
31
32 #define IOAM6_ATTR_MAX (__IOAM6_ATTR_MAX - 1)
33
34 enum {
35         IOAM6_CMD_UNSPEC,
36
37         IOAM6_CMD_ADD_NAMESPACE,
38         IOAM6_CMD_DEL_NAMESPACE,
39         IOAM6_CMD_DUMP_NAMESPACES,
40
41         IOAM6_CMD_ADD_SCHEMA,
42         IOAM6_CMD_DEL_SCHEMA,
43         IOAM6_CMD_DUMP_SCHEMAS,
44
45         IOAM6_CMD_NS_SET_SCHEMA,
46
47         __IOAM6_CMD_MAX,
48 };
49
50 #define IOAM6_CMD_MAX (__IOAM6_CMD_MAX - 1)
51
52 #endif /* _UAPI_LINUX_IOAM6_GENL_H */