 ce69c5e62f
			
		
	
	ce69c5e62f
	
	
	
		
			
			Change-Id: I170cc175b52379be6f5bd1106d43692ca7a629d2 Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
		
			
				
	
	
		
			303 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			303 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /****************************************************************************
 | |
|  ****************************************************************************
 | |
|  ***
 | |
|  ***   This header was automatically generated from a Linux kernel header
 | |
|  ***   of the same name, to make information necessary for userspace to
 | |
|  ***   call into the kernel available to libc.  It contains only constants,
 | |
|  ***   structures, and macros generated from the original header, and thus,
 | |
|  ***   contains no copyrightable information.
 | |
|  ***
 | |
|  ****************************************************************************
 | |
|  ****************************************************************************/
 | |
| #ifndef _LINUX_IF_LINK_H
 | |
| #define _LINUX_IF_LINK_H
 | |
| 
 | |
| #include <linux/types.h>
 | |
| #include <linux/netlink.h>
 | |
| 
 | |
| struct rtnl_link_stats {
 | |
|  __u32 rx_packets;
 | |
|  __u32 tx_packets;
 | |
|  __u32 rx_bytes;
 | |
|  __u32 tx_bytes;
 | |
|  __u32 rx_errors;
 | |
|  __u32 tx_errors;
 | |
|  __u32 rx_dropped;
 | |
|  __u32 tx_dropped;
 | |
|  __u32 multicast;
 | |
|  __u32 collisions;
 | |
| 
 | |
|  __u32 rx_length_errors;
 | |
|  __u32 rx_over_errors;
 | |
|  __u32 rx_crc_errors;
 | |
|  __u32 rx_frame_errors;
 | |
|  __u32 rx_fifo_errors;
 | |
|  __u32 rx_missed_errors;
 | |
| 
 | |
|  __u32 tx_aborted_errors;
 | |
|  __u32 tx_carrier_errors;
 | |
|  __u32 tx_fifo_errors;
 | |
|  __u32 tx_heartbeat_errors;
 | |
|  __u32 tx_window_errors;
 | |
| 
 | |
|  __u32 rx_compressed;
 | |
|  __u32 tx_compressed;
 | |
| };
 | |
| 
 | |
| struct rtnl_link_stats64 {
 | |
|  __u64 rx_packets;
 | |
|  __u64 tx_packets;
 | |
|  __u64 rx_bytes;
 | |
|  __u64 tx_bytes;
 | |
|  __u64 rx_errors;
 | |
|  __u64 tx_errors;
 | |
|  __u64 rx_dropped;
 | |
|  __u64 tx_dropped;
 | |
|  __u64 multicast;
 | |
|  __u64 collisions;
 | |
| 
 | |
|  __u64 rx_length_errors;
 | |
|  __u64 rx_over_errors;
 | |
|  __u64 rx_crc_errors;
 | |
|  __u64 rx_frame_errors;
 | |
|  __u64 rx_fifo_errors;
 | |
|  __u64 rx_missed_errors;
 | |
| 
 | |
|  __u64 tx_aborted_errors;
 | |
|  __u64 tx_carrier_errors;
 | |
|  __u64 tx_fifo_errors;
 | |
|  __u64 tx_heartbeat_errors;
 | |
|  __u64 tx_window_errors;
 | |
| 
 | |
|  __u64 rx_compressed;
 | |
|  __u64 tx_compressed;
 | |
| };
 | |
| 
 | |
| struct rtnl_link_ifmap {
 | |
|  __u64 mem_start;
 | |
|  __u64 mem_end;
 | |
|  __u64 base_addr;
 | |
|  __u16 irq;
 | |
|  __u8 dma;
 | |
|  __u8 port;
 | |
| };
 | |
| 
 | |
| enum {
 | |
|  IFLA_UNSPEC,
 | |
|  IFLA_ADDRESS,
 | |
|  IFLA_BROADCAST,
 | |
|  IFLA_IFNAME,
 | |
|  IFLA_MTU,
 | |
|  IFLA_LINK,
 | |
|  IFLA_QDISC,
 | |
|  IFLA_STATS,
 | |
|  IFLA_COST,
 | |
| #define IFLA_COST IFLA_COST
 | |
|  IFLA_PRIORITY,
 | |
| #define IFLA_PRIORITY IFLA_PRIORITY
 | |
|  IFLA_MASTER,
 | |
| #define IFLA_MASTER IFLA_MASTER
 | |
|  IFLA_WIRELESS,
 | |
| #define IFLA_WIRELESS IFLA_WIRELESS
 | |
|  IFLA_PROTINFO,
 | |
| #define IFLA_PROTINFO IFLA_PROTINFO
 | |
|  IFLA_TXQLEN,
 | |
| #define IFLA_TXQLEN IFLA_TXQLEN
 | |
|  IFLA_MAP,
 | |
| #define IFLA_MAP IFLA_MAP
 | |
|  IFLA_WEIGHT,
 | |
| #define IFLA_WEIGHT IFLA_WEIGHT
 | |
|  IFLA_OPERSTATE,
 | |
|  IFLA_LINKMODE,
 | |
|  IFLA_LINKINFO,
 | |
| #define IFLA_LINKINFO IFLA_LINKINFO
 | |
|  IFLA_NET_NS_PID,
 | |
|  IFLA_IFALIAS,
 | |
|  IFLA_NUM_VF,
 | |
|  IFLA_VFINFO_LIST,
 | |
|  IFLA_STATS64,
 | |
|  IFLA_VF_PORTS,
 | |
|  IFLA_PORT_SELF,
 | |
|  __IFLA_MAX
 | |
| };
 | |
| 
 | |
| #define IFLA_MAX (__IFLA_MAX - 1)
 | |
| 
 | |
| #define IFLA_RTA(r) ((struct rtattr*)(((char*)(r)) + NLMSG_ALIGN(sizeof(struct ifinfomsg))))
 | |
| #define IFLA_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct ifinfomsg))
 | |
| 
 | |
| enum {
 | |
|  IFLA_INET6_UNSPEC,
 | |
|  IFLA_INET6_FLAGS,
 | |
|  IFLA_INET6_CONF,
 | |
|  IFLA_INET6_STATS,
 | |
|  IFLA_INET6_MCAST,
 | |
|  IFLA_INET6_CACHEINFO,
 | |
|  IFLA_INET6_ICMP6STATS,
 | |
|  __IFLA_INET6_MAX
 | |
| };
 | |
| 
 | |
| #define IFLA_INET6_MAX (__IFLA_INET6_MAX - 1)
 | |
| 
 | |
| struct ifla_cacheinfo {
 | |
|  __u32 max_reasm_len;
 | |
|  __u32 tstamp;
 | |
|  __u32 reachable_time;
 | |
|  __u32 retrans_time;
 | |
| };
 | |
| 
 | |
| enum {
 | |
|  IFLA_INFO_UNSPEC,
 | |
|  IFLA_INFO_KIND,
 | |
|  IFLA_INFO_DATA,
 | |
|  IFLA_INFO_XSTATS,
 | |
|  __IFLA_INFO_MAX,
 | |
| };
 | |
| 
 | |
| #define IFLA_INFO_MAX (__IFLA_INFO_MAX - 1)
 | |
| 
 | |
| enum {
 | |
|  IFLA_VLAN_UNSPEC,
 | |
|  IFLA_VLAN_ID,
 | |
|  IFLA_VLAN_FLAGS,
 | |
|  IFLA_VLAN_EGRESS_QOS,
 | |
|  IFLA_VLAN_INGRESS_QOS,
 | |
|  __IFLA_VLAN_MAX,
 | |
| };
 | |
| 
 | |
| #define IFLA_VLAN_MAX (__IFLA_VLAN_MAX - 1)
 | |
| 
 | |
| struct ifla_vlan_flags {
 | |
|  __u32 flags;
 | |
|  __u32 mask;
 | |
| };
 | |
| 
 | |
| enum {
 | |
|  IFLA_VLAN_QOS_UNSPEC,
 | |
|  IFLA_VLAN_QOS_MAPPING,
 | |
|  __IFLA_VLAN_QOS_MAX
 | |
| };
 | |
| 
 | |
| #define IFLA_VLAN_QOS_MAX (__IFLA_VLAN_QOS_MAX - 1)
 | |
| 
 | |
| struct ifla_vlan_qos_mapping {
 | |
|  __u32 from;
 | |
|  __u32 to;
 | |
| };
 | |
| 
 | |
| enum {
 | |
|  IFLA_MACVLAN_UNSPEC,
 | |
|  IFLA_MACVLAN_MODE,
 | |
|  __IFLA_MACVLAN_MAX,
 | |
| };
 | |
| 
 | |
| #define IFLA_MACVLAN_MAX (__IFLA_MACVLAN_MAX - 1)
 | |
| 
 | |
| enum macvlan_mode {
 | |
|  MACVLAN_MODE_PRIVATE = 1,
 | |
|  MACVLAN_MODE_VEPA = 2,
 | |
|  MACVLAN_MODE_BRIDGE = 4,
 | |
| };
 | |
| 
 | |
| enum {
 | |
|  IFLA_VF_INFO_UNSPEC,
 | |
|  IFLA_VF_INFO,
 | |
|  __IFLA_VF_INFO_MAX,
 | |
| };
 | |
| 
 | |
| #define IFLA_VF_INFO_MAX (__IFLA_VF_INFO_MAX - 1)
 | |
| 
 | |
| enum {
 | |
|  IFLA_VF_UNSPEC,
 | |
|  IFLA_VF_MAC,
 | |
|  IFLA_VF_VLAN,
 | |
|  IFLA_VF_TX_RATE,
 | |
|  __IFLA_VF_MAX,
 | |
| };
 | |
| 
 | |
| #define IFLA_VF_MAX (__IFLA_VF_MAX - 1)
 | |
| 
 | |
| struct ifla_vf_mac {
 | |
|  __u32 vf;
 | |
|  __u8 mac[32];
 | |
| };
 | |
| 
 | |
| struct ifla_vf_vlan {
 | |
|  __u32 vf;
 | |
|  __u32 vlan;
 | |
|  __u32 qos;
 | |
| };
 | |
| 
 | |
| struct ifla_vf_tx_rate {
 | |
|  __u32 vf;
 | |
|  __u32 rate;
 | |
| };
 | |
| 
 | |
| struct ifla_vf_info {
 | |
|  __u32 vf;
 | |
|  __u8 mac[32];
 | |
|  __u32 vlan;
 | |
|  __u32 qos;
 | |
|  __u32 tx_rate;
 | |
| };
 | |
| 
 | |
| enum {
 | |
|  IFLA_VF_PORT_UNSPEC,
 | |
|  IFLA_VF_PORT,
 | |
|  __IFLA_VF_PORT_MAX,
 | |
| };
 | |
| 
 | |
| #define IFLA_VF_PORT_MAX (__IFLA_VF_PORT_MAX - 1)
 | |
| 
 | |
| enum {
 | |
|  IFLA_PORT_UNSPEC,
 | |
|  IFLA_PORT_VF,
 | |
|  IFLA_PORT_PROFILE,
 | |
|  IFLA_PORT_VSI_TYPE,
 | |
|  IFLA_PORT_INSTANCE_UUID,
 | |
|  IFLA_PORT_HOST_UUID,
 | |
|  IFLA_PORT_REQUEST,
 | |
|  IFLA_PORT_RESPONSE,
 | |
|  __IFLA_PORT_MAX,
 | |
| };
 | |
| 
 | |
| #define IFLA_PORT_MAX (__IFLA_PORT_MAX - 1)
 | |
| 
 | |
| #define PORT_PROFILE_MAX 40
 | |
| #define PORT_UUID_MAX 16
 | |
| #define PORT_SELF_VF -1
 | |
| 
 | |
| enum {
 | |
|  PORT_REQUEST_PREASSOCIATE = 0,
 | |
|  PORT_REQUEST_PREASSOCIATE_RR,
 | |
|  PORT_REQUEST_ASSOCIATE,
 | |
|  PORT_REQUEST_DISASSOCIATE,
 | |
| };
 | |
| 
 | |
| enum {
 | |
|  PORT_VDP_RESPONSE_SUCCESS = 0,
 | |
|  PORT_VDP_RESPONSE_INVALID_FORMAT,
 | |
|  PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES,
 | |
|  PORT_VDP_RESPONSE_UNUSED_VTID,
 | |
|  PORT_VDP_RESPONSE_VTID_VIOLATION,
 | |
|  PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION,
 | |
|  PORT_VDP_RESPONSE_OUT_OF_SYNC,
 | |
| 
 | |
|  PORT_PROFILE_RESPONSE_SUCCESS = 0x100,
 | |
|  PORT_PROFILE_RESPONSE_INPROGRESS,
 | |
|  PORT_PROFILE_RESPONSE_INVALID,
 | |
|  PORT_PROFILE_RESPONSE_BADSTATE,
 | |
|  PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES,
 | |
|  PORT_PROFILE_RESPONSE_ERROR,
 | |
| };
 | |
| 
 | |
| struct ifla_port_vsi {
 | |
|  __u8 vsi_mgr_id;
 | |
|  __u8 vsi_type_id[3];
 | |
|  __u8 vsi_type_version;
 | |
|  __u8 pad[3];
 | |
| };
 | |
| 
 | |
| #endif
 | |
| 
 |