2010-04-07 03:49:49 +02:00
|
|
|
/****************************************************************************
|
|
|
|
****************************************************************************
|
|
|
|
***
|
|
|
|
*** 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
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2010-04-07 03:49:49 +02:00
|
|
|
#include <linux/types.h>
|
|
|
|
#include <linux/netlink.h>
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
struct rtnl_link_stats {
|
2010-04-07 03:49:49 +02:00
|
|
|
__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;
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2010-04-07 03:49:49 +02:00
|
|
|
__u32 rx_length_errors;
|
|
|
|
__u32 rx_over_errors;
|
|
|
|
__u32 rx_crc_errors;
|
|
|
|
__u32 rx_frame_errors;
|
|
|
|
__u32 rx_fifo_errors;
|
|
|
|
__u32 rx_missed_errors;
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2010-04-07 03:49:49 +02:00
|
|
|
__u32 tx_aborted_errors;
|
|
|
|
__u32 tx_carrier_errors;
|
|
|
|
__u32 tx_fifo_errors;
|
|
|
|
__u32 tx_heartbeat_errors;
|
|
|
|
__u32 tx_window_errors;
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2010-04-07 03:49:49 +02:00
|
|
|
__u32 rx_compressed;
|
|
|
|
__u32 tx_compressed;
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
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;
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
__u64 rx_length_errors;
|
|
|
|
__u64 rx_over_errors;
|
|
|
|
__u64 rx_crc_errors;
|
|
|
|
__u64 rx_frame_errors;
|
|
|
|
__u64 rx_fifo_errors;
|
|
|
|
__u64 rx_missed_errors;
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
__u64 tx_aborted_errors;
|
|
|
|
__u64 tx_carrier_errors;
|
|
|
|
__u64 tx_fifo_errors;
|
|
|
|
__u64 tx_heartbeat_errors;
|
|
|
|
__u64 tx_window_errors;
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
__u64 rx_compressed;
|
|
|
|
__u64 tx_compressed;
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
struct rtnl_link_ifmap {
|
2010-04-07 03:49:49 +02:00
|
|
|
__u64 mem_start;
|
|
|
|
__u64 mem_end;
|
|
|
|
__u64 base_addr;
|
|
|
|
__u16 irq;
|
|
|
|
__u8 dma;
|
|
|
|
__u8 port;
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
enum {
|
2010-04-07 03:49:49 +02:00
|
|
|
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,
|
2011-01-07 00:30:35 +01:00
|
|
|
IFLA_NUM_VF,
|
|
|
|
IFLA_VFINFO_LIST,
|
|
|
|
IFLA_STATS64,
|
|
|
|
IFLA_VF_PORTS,
|
|
|
|
IFLA_PORT_SELF,
|
2010-04-07 03:49:49 +02:00
|
|
|
__IFLA_MAX
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2010-04-07 03:49:49 +02:00
|
|
|
#define IFLA_MAX (__IFLA_MAX - 1)
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2010-04-07 03:49:49 +02:00
|
|
|
#define IFLA_RTA(r) ((struct rtattr*)(((char*)(r)) + NLMSG_ALIGN(sizeof(struct ifinfomsg))))
|
|
|
|
#define IFLA_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct ifinfomsg))
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
enum {
|
2010-04-07 03:49:49 +02:00
|
|
|
IFLA_INET6_UNSPEC,
|
|
|
|
IFLA_INET6_FLAGS,
|
|
|
|
IFLA_INET6_CONF,
|
|
|
|
IFLA_INET6_STATS,
|
|
|
|
IFLA_INET6_MCAST,
|
|
|
|
IFLA_INET6_CACHEINFO,
|
|
|
|
IFLA_INET6_ICMP6STATS,
|
|
|
|
__IFLA_INET6_MAX
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2010-04-07 03:49:49 +02:00
|
|
|
#define IFLA_INET6_MAX (__IFLA_INET6_MAX - 1)
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
struct ifla_cacheinfo {
|
2010-04-07 03:49:49 +02:00
|
|
|
__u32 max_reasm_len;
|
|
|
|
__u32 tstamp;
|
|
|
|
__u32 reachable_time;
|
|
|
|
__u32 retrans_time;
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
enum {
|
2010-04-07 03:49:49 +02:00
|
|
|
IFLA_INFO_UNSPEC,
|
|
|
|
IFLA_INFO_KIND,
|
|
|
|
IFLA_INFO_DATA,
|
|
|
|
IFLA_INFO_XSTATS,
|
|
|
|
__IFLA_INFO_MAX,
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2010-04-07 03:49:49 +02:00
|
|
|
#define IFLA_INFO_MAX (__IFLA_INFO_MAX - 1)
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
enum {
|
2010-04-07 03:49:49 +02:00
|
|
|
IFLA_VLAN_UNSPEC,
|
|
|
|
IFLA_VLAN_ID,
|
|
|
|
IFLA_VLAN_FLAGS,
|
|
|
|
IFLA_VLAN_EGRESS_QOS,
|
|
|
|
IFLA_VLAN_INGRESS_QOS,
|
|
|
|
__IFLA_VLAN_MAX,
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2010-04-07 03:49:49 +02:00
|
|
|
#define IFLA_VLAN_MAX (__IFLA_VLAN_MAX - 1)
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2010-04-07 03:49:49 +02:00
|
|
|
struct ifla_vlan_flags {
|
|
|
|
__u32 flags;
|
|
|
|
__u32 mask;
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
enum {
|
2010-04-07 03:49:49 +02:00
|
|
|
IFLA_VLAN_QOS_UNSPEC,
|
|
|
|
IFLA_VLAN_QOS_MAPPING,
|
|
|
|
__IFLA_VLAN_QOS_MAX
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2010-04-07 03:49:49 +02:00
|
|
|
#define IFLA_VLAN_QOS_MAX (__IFLA_VLAN_QOS_MAX - 1)
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
struct ifla_vlan_qos_mapping {
|
2010-04-07 03:49:49 +02:00
|
|
|
__u32 from;
|
|
|
|
__u32 to;
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
enum {
|
|
|
|
IFLA_MACVLAN_UNSPEC,
|
|
|
|
IFLA_MACVLAN_MODE,
|
|
|
|
__IFLA_MACVLAN_MAX,
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
#define IFLA_MACVLAN_MAX (__IFLA_MACVLAN_MAX - 1)
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
enum macvlan_mode {
|
|
|
|
MACVLAN_MODE_PRIVATE = 1,
|
|
|
|
MACVLAN_MODE_VEPA = 2,
|
|
|
|
MACVLAN_MODE_BRIDGE = 4,
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
enum {
|
|
|
|
IFLA_VF_INFO_UNSPEC,
|
|
|
|
IFLA_VF_INFO,
|
|
|
|
__IFLA_VF_INFO_MAX,
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
#define IFLA_VF_INFO_MAX (__IFLA_VF_INFO_MAX - 1)
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
enum {
|
|
|
|
IFLA_VF_UNSPEC,
|
|
|
|
IFLA_VF_MAC,
|
|
|
|
IFLA_VF_VLAN,
|
|
|
|
IFLA_VF_TX_RATE,
|
|
|
|
__IFLA_VF_MAX,
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
#define IFLA_VF_MAX (__IFLA_VF_MAX - 1)
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
struct ifla_vf_mac {
|
|
|
|
__u32 vf;
|
|
|
|
__u8 mac[32];
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
struct ifla_vf_vlan {
|
|
|
|
__u32 vf;
|
|
|
|
__u32 vlan;
|
|
|
|
__u32 qos;
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
struct ifla_vf_tx_rate {
|
|
|
|
__u32 vf;
|
|
|
|
__u32 rate;
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
struct ifla_vf_info {
|
|
|
|
__u32 vf;
|
|
|
|
__u8 mac[32];
|
|
|
|
__u32 vlan;
|
|
|
|
__u32 qos;
|
|
|
|
__u32 tx_rate;
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
enum {
|
|
|
|
IFLA_VF_PORT_UNSPEC,
|
|
|
|
IFLA_VF_PORT,
|
|
|
|
__IFLA_VF_PORT_MAX,
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
#define IFLA_VF_PORT_MAX (__IFLA_VF_PORT_MAX - 1)
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
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,
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
#define IFLA_PORT_MAX (__IFLA_PORT_MAX - 1)
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
#define PORT_PROFILE_MAX 40
|
|
|
|
#define PORT_UUID_MAX 16
|
|
|
|
#define PORT_SELF_VF -1
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
enum {
|
|
|
|
PORT_REQUEST_PREASSOCIATE = 0,
|
|
|
|
PORT_REQUEST_PREASSOCIATE_RR,
|
|
|
|
PORT_REQUEST_ASSOCIATE,
|
|
|
|
PORT_REQUEST_DISASSOCIATE,
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
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,
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
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,
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2011-01-07 00:30:35 +01:00
|
|
|
struct ifla_port_vsi {
|
|
|
|
__u8 vsi_mgr_id;
|
|
|
|
__u8 vsi_type_id[3];
|
|
|
|
__u8 vsi_type_version;
|
|
|
|
__u8 pad[3];
|
|
|
|
};
|
2012-03-08 01:14:53 +01:00
|
|
|
|
2010-04-07 03:49:49 +02:00
|
|
|
#endif
|
2012-03-08 01:14:53 +01:00
|
|
|
|