Commit | Line | Data |
---|---|---|
8c6f6fa6 JI |
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 | ||
5fa918a3 JI |
52 | #define IOAM6_GENL_EV_GRP_NAME "ioam6_events" |
53 | ||
54 | enum ioam6_event_type { | |
55 | IOAM6_EVENT_UNSPEC, | |
56 | IOAM6_EVENT_TRACE, | |
57 | }; | |
58 | ||
59 | enum ioam6_event_attr { | |
60 | IOAM6_EVENT_ATTR_UNSPEC, | |
61 | ||
62 | IOAM6_EVENT_ATTR_TRACE_NAMESPACE, /* u16 */ | |
63 | IOAM6_EVENT_ATTR_TRACE_NODELEN, /* u8 */ | |
64 | IOAM6_EVENT_ATTR_TRACE_TYPE, /* u32 */ | |
65 | IOAM6_EVENT_ATTR_TRACE_DATA, /* Binary */ | |
66 | ||
67 | __IOAM6_EVENT_ATTR_MAX | |
68 | }; | |
69 | ||
70 | #define IOAM6_EVENT_ATTR_MAX (__IOAM6_EVENT_ATTR_MAX - 1) | |
71 | ||
8c6f6fa6 | 72 | #endif /* _UAPI_LINUX_IOAM6_GENL_H */ |