blob: 483b77af4eb8bffe4a465337b85686374e192dc0 [file] [log] [blame]
Christopher Ferris25981132017-11-14 16:53:49 -08001/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
Christopher Ferris12e1f282016-02-04 12:35:07 -08002/* ila.h - ILA Interface */
3
4#ifndef _UAPI_LINUX_ILA_H
5#define _UAPI_LINUX_ILA_H
6
Christopher Ferrisccfaccd2016-08-24 12:11:31 -07007/* NETLINK_GENERIC related info */
8#define ILA_GENL_NAME "ila"
9#define ILA_GENL_VERSION 0x1
10
Christopher Ferris12e1f282016-02-04 12:35:07 -080011enum {
12 ILA_ATTR_UNSPEC,
13 ILA_ATTR_LOCATOR, /* u64 */
Christopher Ferrisccfaccd2016-08-24 12:11:31 -070014 ILA_ATTR_IDENTIFIER, /* u64 */
15 ILA_ATTR_LOCATOR_MATCH, /* u64 */
16 ILA_ATTR_IFINDEX, /* s32 */
17 ILA_ATTR_DIR, /* u32 */
18 ILA_ATTR_PAD,
19 ILA_ATTR_CSUM_MODE, /* u8 */
Christopher Ferrisa1a109e2018-01-31 15:03:12 -080020 ILA_ATTR_IDENT_TYPE, /* u8 */
21 ILA_ATTR_HOOK_TYPE, /* u8 */
Christopher Ferris12e1f282016-02-04 12:35:07 -080022
23 __ILA_ATTR_MAX,
24};
25
26#define ILA_ATTR_MAX (__ILA_ATTR_MAX - 1)
27
Christopher Ferrisccfaccd2016-08-24 12:11:31 -070028enum {
29 ILA_CMD_UNSPEC,
30 ILA_CMD_ADD,
31 ILA_CMD_DEL,
32 ILA_CMD_GET,
33
34 __ILA_CMD_MAX,
35};
36
37#define ILA_CMD_MAX (__ILA_CMD_MAX - 1)
38
39#define ILA_DIR_IN (1 << 0)
40#define ILA_DIR_OUT (1 << 1)
41
42enum {
43 ILA_CSUM_ADJUST_TRANSPORT,
44 ILA_CSUM_NEUTRAL_MAP,
45 ILA_CSUM_NO_ACTION,
Christopher Ferrisa1a109e2018-01-31 15:03:12 -080046 ILA_CSUM_NEUTRAL_MAP_AUTO,
47};
48
49enum {
50 ILA_ATYPE_IID = 0,
51 ILA_ATYPE_LUID,
52 ILA_ATYPE_VIRT_V4,
53 ILA_ATYPE_VIRT_UNI_V6,
54 ILA_ATYPE_VIRT_MULTI_V6,
55 ILA_ATYPE_NONLOCAL_ADDR,
56 ILA_ATYPE_RSVD_1,
57 ILA_ATYPE_RSVD_2,
58
59 ILA_ATYPE_USE_FORMAT = 32, /* Get type from type field in identifier */
60};
61
62enum {
63 ILA_HOOK_ROUTE_OUTPUT,
64 ILA_HOOK_ROUTE_INPUT,
Christopher Ferrisccfaccd2016-08-24 12:11:31 -070065};
66
Christopher Ferris12e1f282016-02-04 12:35:07 -080067#endif /* _UAPI_LINUX_ILA_H */