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 */ 24 struct 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 }; 55 struct 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 }; 86 struct 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 }; 96 enum { 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)) 147 enum { 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) 161 struct 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 */ 169 enum { 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 */ 179 enum { 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) 190 struct ifla_vlan_flags { 191 __u32 flags; 192 __u32 mask; 193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 194 }; 195 enum { 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) 202 struct ifla_vlan_qos_mapping { 203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 204 __u32 from; 205 __u32 to; 206 }; 207 enum { 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) 215 enum 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 }; 221 enum { 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 */ 229 enum { 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 */ 239 struct ifla_vf_mac { 240 __u32 vf; 241 __u8 mac[32]; 242 }; 243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 244 struct 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 }; 250 struct ifla_vf_tx_rate { 251 __u32 vf; 252 __u32 rate; 253 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 254 }; 255 struct 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 */ 264 enum { 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) 271 enum { 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 290 enum { 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 }; 297 enum { 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 }; 316 struct 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