1/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
2/*
3 * Copyright (c) 2021 Taehee Yoo <ap420073@gmail.com>
4 */
5#ifndef _UAPI_AMT_H_
6#define _UAPI_AMT_H_
7
8enum ifla_amt_mode {
9	/* AMT interface works as Gateway mode.
10	 * The Gateway mode encapsulates IGMP/MLD traffic and decapsulates
11	 * multicast traffic.
12	 */
13	AMT_MODE_GATEWAY = 0,
14	/* AMT interface works as Relay mode.
15	 * The Relay mode encapsulates multicast traffic and decapsulates
16	 * IGMP/MLD traffic.
17	 */
18	AMT_MODE_RELAY,
19	__AMT_MODE_MAX,
20};
21
22#define AMT_MODE_MAX (__AMT_MODE_MAX - 1)
23
24enum {
25	IFLA_AMT_UNSPEC,
26	/* This attribute specify mode etier Gateway or Relay. */
27	IFLA_AMT_MODE,
28	/* This attribute specify Relay port.
29	 * AMT interface is created as Gateway mode, this attribute is used
30	 * to specify relay(remote) port.
31	 * AMT interface is created as Relay mode, this attribute is used
32	 * as local port.
33	 */
34	IFLA_AMT_RELAY_PORT,
35	/* This attribute specify Gateway port.
36	 * AMT interface is created as Gateway mode, this attribute is used
37	 * as local port.
38	 * AMT interface is created as Relay mode, this attribute is not used.
39	 */
40	IFLA_AMT_GATEWAY_PORT,
41	/* This attribute specify physical device */
42	IFLA_AMT_LINK,
43	/* This attribute specify local ip address */
44	IFLA_AMT_LOCAL_IP,
45	/* This attribute specify Relay ip address.
46	 * So, this is not used by Relay.
47	 */
48	IFLA_AMT_REMOTE_IP,
49	/* This attribute specify Discovery ip address.
50	 * When Gateway get started, it send discovery message to find the
51	 * Relay's ip address.
52	 * So, this is not used by Relay.
53	 */
54	IFLA_AMT_DISCOVERY_IP,
55	/* This attribute specify number of maximum tunnel. */
56	IFLA_AMT_MAX_TUNNELS,
57	__IFLA_AMT_MAX,
58};
59
60#define IFLA_AMT_MAX (__IFLA_AMT_MAX - 1)
61
62#endif /* _UAPI_AMT_H_ */
63