1/****************************************************************************
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 _LINUX_IF_LINK_H
20#define _LINUX_IF_LINK_H
21#include <linux/types.h>
22#include <linux/netlink.h>
23/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24struct rtnl_link_stats {
25 __u32 rx_packets;
26 __u32 tx_packets;
27 __u32 rx_bytes;
28/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29 __u32 tx_bytes;
30 __u32 rx_errors;
31 __u32 tx_errors;
32 __u32 rx_dropped;
33/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34 __u32 tx_dropped;
35 __u32 multicast;
36 __u32 collisions;
37 __u32 rx_length_errors;
38/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39 __u32 rx_over_errors;
40 __u32 rx_crc_errors;
41 __u32 rx_frame_errors;
42 __u32 rx_fifo_errors;
43/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44 __u32 rx_missed_errors;
45 __u32 tx_aborted_errors;
46 __u32 tx_carrier_errors;
47 __u32 tx_fifo_errors;
48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49 __u32 tx_heartbeat_errors;
50 __u32 tx_window_errors;
51 __u32 rx_compressed;
52 __u32 tx_compressed;
53/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54};
55struct rtnl_link_stats64 {
56 __u64 rx_packets;
57 __u64 tx_packets;
58/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59 __u64 rx_bytes;
60 __u64 tx_bytes;
61 __u64 rx_errors;
62 __u64 tx_errors;
63/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64 __u64 rx_dropped;
65 __u64 tx_dropped;
66 __u64 multicast;
67 __u64 collisions;
68/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69 __u64 rx_length_errors;
70 __u64 rx_over_errors;
71 __u64 rx_crc_errors;
72 __u64 rx_frame_errors;
73/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74 __u64 rx_fifo_errors;
75 __u64 rx_missed_errors;
76 __u64 tx_aborted_errors;
77 __u64 tx_carrier_errors;
78/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79 __u64 tx_fifo_errors;
80 __u64 tx_heartbeat_errors;
81 __u64 tx_window_errors;
82 __u64 rx_compressed;
83/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84 __u64 tx_compressed;
85};
86struct rtnl_link_ifmap {
87 __u64 mem_start;
88/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89 __u64 mem_end;
90 __u64 base_addr;
91 __u16 irq;
92 __u8 dma;
93/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94 __u8 port;
95};
96enum {
97 IFLA_UNSPEC,
98/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99 IFLA_ADDRESS,
100 IFLA_BROADCAST,
101 IFLA_IFNAME,
102 IFLA_MTU,
103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104 IFLA_LINK,
105 IFLA_QDISC,
106 IFLA_STATS,
107 IFLA_COST,
108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109#define IFLA_COST IFLA_COST
110 IFLA_PRIORITY,
111#define IFLA_PRIORITY IFLA_PRIORITY
112 IFLA_MASTER,
113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114#define IFLA_MASTER IFLA_MASTER
115 IFLA_WIRELESS,
116#define IFLA_WIRELESS IFLA_WIRELESS
117 IFLA_PROTINFO,
118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119#define IFLA_PROTINFO IFLA_PROTINFO
120 IFLA_TXQLEN,
121#define IFLA_TXQLEN IFLA_TXQLEN
122 IFLA_MAP,
123/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124#define IFLA_MAP IFLA_MAP
125 IFLA_WEIGHT,
126#define IFLA_WEIGHT IFLA_WEIGHT
127 IFLA_OPERSTATE,
128/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129 IFLA_LINKMODE,
130 IFLA_LINKINFO,
131#define IFLA_LINKINFO IFLA_LINKINFO
132 IFLA_NET_NS_PID,
133/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134 IFLA_IFALIAS,
135 IFLA_NUM_VF,
136 IFLA_VFINFO_LIST,
137 IFLA_STATS64,
138/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139 IFLA_VF_PORTS,
140 IFLA_PORT_SELF,
141 __IFLA_MAX
142};
143/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
144#define IFLA_MAX (__IFLA_MAX - 1)
145#define IFLA_RTA(r) ((struct rtattr*)(((char*)(r)) + NLMSG_ALIGN(sizeof(struct ifinfomsg))))
146#define IFLA_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct ifinfomsg))
147enum {
148/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
149 IFLA_INET6_UNSPEC,
150 IFLA_INET6_FLAGS,
151 IFLA_INET6_CONF,
152 IFLA_INET6_STATS,
153/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
154 IFLA_INET6_MCAST,
155 IFLA_INET6_CACHEINFO,
156 IFLA_INET6_ICMP6STATS,
157 __IFLA_INET6_MAX
158/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
159};
160#define IFLA_INET6_MAX (__IFLA_INET6_MAX - 1)
161struct ifla_cacheinfo {
162 __u32 max_reasm_len;
163/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
164 __u32 tstamp;
165 __u32 reachable_time;
166 __u32 retrans_time;
167};
168/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
169enum {
170 IFLA_INFO_UNSPEC,
171 IFLA_INFO_KIND,
172 IFLA_INFO_DATA,
173/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
174 IFLA_INFO_XSTATS,
175 __IFLA_INFO_MAX,
176};
177#define IFLA_INFO_MAX (__IFLA_INFO_MAX - 1)
178/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
179enum {
180 IFLA_VLAN_UNSPEC,
181 IFLA_VLAN_ID,
182 IFLA_VLAN_FLAGS,
183/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
184 IFLA_VLAN_EGRESS_QOS,
185 IFLA_VLAN_INGRESS_QOS,
186 __IFLA_VLAN_MAX,
187};
188/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
189#define IFLA_VLAN_MAX (__IFLA_VLAN_MAX - 1)
190struct ifla_vlan_flags {
191 __u32 flags;
192 __u32 mask;
193/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
194};
195enum {
196 IFLA_VLAN_QOS_UNSPEC,
197 IFLA_VLAN_QOS_MAPPING,
198/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
199 __IFLA_VLAN_QOS_MAX
200};
201#define IFLA_VLAN_QOS_MAX (__IFLA_VLAN_QOS_MAX - 1)
202struct ifla_vlan_qos_mapping {
203/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
204 __u32 from;
205 __u32 to;
206};
207enum {
208/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
209 IFLA_MACVLAN_UNSPEC,
210 IFLA_MACVLAN_MODE,
211 __IFLA_MACVLAN_MAX,
212};
213/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
214#define IFLA_MACVLAN_MAX (__IFLA_MACVLAN_MAX - 1)
215enum macvlan_mode {
216 MACVLAN_MODE_PRIVATE = 1,
217 MACVLAN_MODE_VEPA = 2,
218/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
219 MACVLAN_MODE_BRIDGE = 4,
220};
221enum {
222 IFLA_VF_INFO_UNSPEC,
223/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
224 IFLA_VF_INFO,
225 __IFLA_VF_INFO_MAX,
226};
227#define IFLA_VF_INFO_MAX (__IFLA_VF_INFO_MAX - 1)
228/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
229enum {
230 IFLA_VF_UNSPEC,
231 IFLA_VF_MAC,
232 IFLA_VF_VLAN,
233/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
234 IFLA_VF_TX_RATE,
235 __IFLA_VF_MAX,
236};
237#define IFLA_VF_MAX (__IFLA_VF_MAX - 1)
238/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
239struct ifla_vf_mac {
240 __u32 vf;
241 __u8 mac[32];
242};
243/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
244struct ifla_vf_vlan {
245 __u32 vf;
246 __u32 vlan;
247 __u32 qos;
248/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
249};
250struct ifla_vf_tx_rate {
251 __u32 vf;
252 __u32 rate;
253/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
254};
255struct ifla_vf_info {
256 __u32 vf;
257 __u8 mac[32];
258/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
259 __u32 vlan;
260 __u32 qos;
261 __u32 tx_rate;
262};
263/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
264enum {
265 IFLA_VF_PORT_UNSPEC,
266 IFLA_VF_PORT,
267 __IFLA_VF_PORT_MAX,
268/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
269};
270#define IFLA_VF_PORT_MAX (__IFLA_VF_PORT_MAX - 1)
271enum {
272 IFLA_PORT_UNSPEC,
273/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
274 IFLA_PORT_VF,
275 IFLA_PORT_PROFILE,
276 IFLA_PORT_VSI_TYPE,
277 IFLA_PORT_INSTANCE_UUID,
278/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
279 IFLA_PORT_HOST_UUID,
280 IFLA_PORT_REQUEST,
281 IFLA_PORT_RESPONSE,
282 __IFLA_PORT_MAX,
283/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
284};
285#define IFLA_PORT_MAX (__IFLA_PORT_MAX - 1)
286#define PORT_PROFILE_MAX 40
287#define PORT_UUID_MAX 16
288/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
289#define PORT_SELF_VF -1
290enum {
291 PORT_REQUEST_PREASSOCIATE = 0,
292 PORT_REQUEST_PREASSOCIATE_RR,
293/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
294 PORT_REQUEST_ASSOCIATE,
295 PORT_REQUEST_DISASSOCIATE,
296};
297enum {
298/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
299 PORT_VDP_RESPONSE_SUCCESS = 0,
300 PORT_VDP_RESPONSE_INVALID_FORMAT,
301 PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES,
302 PORT_VDP_RESPONSE_UNUSED_VTID,
303/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
304 PORT_VDP_RESPONSE_VTID_VIOLATION,
305 PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION,
306 PORT_VDP_RESPONSE_OUT_OF_SYNC,
307 PORT_PROFILE_RESPONSE_SUCCESS = 0x100,
308/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
309 PORT_PROFILE_RESPONSE_INPROGRESS,
310 PORT_PROFILE_RESPONSE_INVALID,
311 PORT_PROFILE_RESPONSE_BADSTATE,
312 PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES,
313/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
314 PORT_PROFILE_RESPONSE_ERROR,
315};
316struct ifla_port_vsi {
317 __u8 vsi_mgr_id;
318/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
319 __u8 vsi_type_id[3];
320 __u8 vsi_type_version;
321 __u8 pad[3];
322};
323/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
324#endif
325