]> git.ipfire.org Git - thirdparty/libnl.git/commitdiff
link: update copy of kernel header include/linux/if_link.h
authorDan Williams <dcbw@redhat.com>
Fri, 25 Jul 2014 19:33:38 +0000 (14:33 -0500)
committerThomas Haller <thaller@redhat.com>
Tue, 29 Jul 2014 22:39:24 +0000 (00:39 +0200)
The next patch will use some of these defines, so update.

Taken from upstream kernel commit bc91b0f07ada5535427373a4e2050877bcc12218,
file 'include/uapi/linux/if_link.h'.

Signed-off-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: Thomas Haller <thaller@redhat.com>
include/linux/if_link.h

index 8119dc2582d66d8cc2515e0bbe4dfa6b29ed5d8f..ff957604a7213136d72bf6ec0b34989e7637ccc4 100644 (file)
@@ -144,12 +144,19 @@ enum {
        IFLA_NUM_RX_QUEUES,
        IFLA_CARRIER,
        IFLA_PHYS_PORT_ID,
+       IFLA_CARRIER_CHANGES,
        __IFLA_MAX
 };
 
 
 #define IFLA_MAX (__IFLA_MAX - 1)
 
+/* backwards compatibility for userspace */
+#ifndef __KERNEL__
+#define IFLA_RTA(r)  ((struct rtattr*)(((char*)(r)) + NLMSG_ALIGN(sizeof(struct ifinfomsg))))
+#define IFLA_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct ifinfomsg))
+#endif
+
 enum {
        IFLA_INET_UNSPEC,
        IFLA_INET_CONF,
@@ -196,11 +203,18 @@ enum {
        IFLA_INET6_MCAST,       /* MC things. What of them?     */
        IFLA_INET6_CACHEINFO,   /* time values and max reasm size */
        IFLA_INET6_ICMP6STATS,  /* statistics (icmpv6)          */
+       IFLA_INET6_TOKEN,       /* device token                 */
+       IFLA_INET6_ADDR_GEN_MODE, /* implicit address generator mode */
        __IFLA_INET6_MAX
 };
 
 #define IFLA_INET6_MAX (__IFLA_INET6_MAX - 1)
 
+enum in6_addr_gen_mode {
+       IN6_ADDR_GEN_MODE_EUI64,
+       IN6_ADDR_GEN_MODE_NONE,
+};
+
 enum {
        BRIDGE_MODE_UNSPEC,
        BRIDGE_MODE_HAIRPIN,
@@ -215,6 +229,8 @@ enum {
        IFLA_BRPORT_GUARD,      /* bpdu guard              */
        IFLA_BRPORT_PROTECT,    /* root port protection    */
        IFLA_BRPORT_FAST_LEAVE, /* multicast fast leave    */
+       IFLA_BRPORT_LEARNING,   /* mac learning */
+       IFLA_BRPORT_UNICAST_FLOOD, /* flood unicast traffic */
        __IFLA_BRPORT_MAX
 };
 #define IFLA_BRPORT_MAX (__IFLA_BRPORT_MAX - 1)
@@ -231,6 +247,8 @@ enum {
        IFLA_INFO_KIND,
        IFLA_INFO_DATA,
        IFLA_INFO_XSTATS,
+       IFLA_INFO_SLAVE_KIND,
+       IFLA_INFO_SLAVE_DATA,
        __IFLA_INFO_MAX,
 };
 
@@ -291,7 +309,7 @@ enum macvlan_mode {
 enum {
        IFLA_VXLAN_UNSPEC,
        IFLA_VXLAN_ID,
-       IFLA_VXLAN_GROUP,
+       IFLA_VXLAN_GROUP,       /* group or remote address */
        IFLA_VXLAN_LINK,
        IFLA_VXLAN_LOCAL,
        IFLA_VXLAN_TTL,
@@ -299,11 +317,17 @@ enum {
        IFLA_VXLAN_LEARNING,
        IFLA_VXLAN_AGEING,
        IFLA_VXLAN_LIMIT,
-       IFLA_VXLAN_PORT_RANGE,
+       IFLA_VXLAN_PORT_RANGE,  /* source port */
        IFLA_VXLAN_PROXY,
        IFLA_VXLAN_RSC,
        IFLA_VXLAN_L2MISS,
        IFLA_VXLAN_L3MISS,
+       IFLA_VXLAN_PORT,        /* destination port */
+       IFLA_VXLAN_GROUP6,
+       IFLA_VXLAN_LOCAL6,
+       IFLA_VXLAN_UDP_CSUM,
+       IFLA_VXLAN_UDP_ZERO_CSUM6_TX,
+       IFLA_VXLAN_UDP_ZERO_CSUM6_RX,
        __IFLA_VXLAN_MAX
 };
 #define IFLA_VXLAN_MAX (__IFLA_VXLAN_MAX - 1)
@@ -313,6 +337,63 @@ struct ifla_vxlan_port_range {
        __be16  high;
 };
 
+/* Bonding section */
+
+enum {
+       IFLA_BOND_UNSPEC,
+       IFLA_BOND_MODE,
+       IFLA_BOND_ACTIVE_SLAVE,
+       IFLA_BOND_MIIMON,
+       IFLA_BOND_UPDELAY,
+       IFLA_BOND_DOWNDELAY,
+       IFLA_BOND_USE_CARRIER,
+       IFLA_BOND_ARP_INTERVAL,
+       IFLA_BOND_ARP_IP_TARGET,
+       IFLA_BOND_ARP_VALIDATE,
+       IFLA_BOND_ARP_ALL_TARGETS,
+       IFLA_BOND_PRIMARY,
+       IFLA_BOND_PRIMARY_RESELECT,
+       IFLA_BOND_FAIL_OVER_MAC,
+       IFLA_BOND_XMIT_HASH_POLICY,
+       IFLA_BOND_RESEND_IGMP,
+       IFLA_BOND_NUM_PEER_NOTIF,
+       IFLA_BOND_ALL_SLAVES_ACTIVE,
+       IFLA_BOND_MIN_LINKS,
+       IFLA_BOND_LP_INTERVAL,
+       IFLA_BOND_PACKETS_PER_SLAVE,
+       IFLA_BOND_AD_LACP_RATE,
+       IFLA_BOND_AD_SELECT,
+       IFLA_BOND_AD_INFO,
+       __IFLA_BOND_MAX,
+};
+
+#define IFLA_BOND_MAX  (__IFLA_BOND_MAX - 1)
+
+enum {
+       IFLA_BOND_AD_INFO_UNSPEC,
+       IFLA_BOND_AD_INFO_AGGREGATOR,
+       IFLA_BOND_AD_INFO_NUM_PORTS,
+       IFLA_BOND_AD_INFO_ACTOR_KEY,
+       IFLA_BOND_AD_INFO_PARTNER_KEY,
+       IFLA_BOND_AD_INFO_PARTNER_MAC,
+       __IFLA_BOND_AD_INFO_MAX,
+};
+
+#define IFLA_BOND_AD_INFO_MAX  (__IFLA_BOND_AD_INFO_MAX - 1)
+
+enum {
+       IFLA_BOND_SLAVE_UNSPEC,
+       IFLA_BOND_SLAVE_STATE,
+       IFLA_BOND_SLAVE_MII_STATUS,
+       IFLA_BOND_SLAVE_LINK_FAILURE_COUNT,
+       IFLA_BOND_SLAVE_PERM_HWADDR,
+       IFLA_BOND_SLAVE_QUEUE_ID,
+       IFLA_BOND_SLAVE_AD_AGGREGATOR_ID,
+       __IFLA_BOND_SLAVE_MAX,
+};
+
+#define IFLA_BOND_SLAVE_MAX    (__IFLA_BOND_SLAVE_MAX - 1)
+
 /* SR-IOV virtual function management section */
 
 enum {
@@ -327,8 +408,10 @@ enum {
        IFLA_VF_UNSPEC,
        IFLA_VF_MAC,            /* Hardware queue specific attributes */
        IFLA_VF_VLAN,
-       IFLA_VF_TX_RATE,        /* TX Bandwidth Allocation */
+       IFLA_VF_TX_RATE,        /* Max TX Bandwidth Allocation */
        IFLA_VF_SPOOFCHK,       /* Spoof Checking on/off switch */
+       IFLA_VF_LINK_STATE,     /* link state enable/disable/auto switch */
+       IFLA_VF_RATE,           /* Min and Max TX Bandwidth Allocation */
        __IFLA_VF_MAX,
 };
 
@@ -350,11 +433,29 @@ struct ifla_vf_tx_rate {
        __u32 rate; /* Max TX bandwidth in Mbps, 0 disables throttling */
 };
 
+struct ifla_vf_rate {
+       __u32 vf;
+       __u32 min_tx_rate; /* Min Bandwidth in Mbps */
+       __u32 max_tx_rate; /* Max Bandwidth in Mbps */
+};
+
 struct ifla_vf_spoofchk {
        __u32 vf;
        __u32 setting;
 };
 
+enum {
+       IFLA_VF_LINK_STATE_AUTO,        /* link state of the uplink */
+       IFLA_VF_LINK_STATE_ENABLE,      /* link always up */
+       IFLA_VF_LINK_STATE_DISABLE,     /* link always down */
+       __IFLA_VF_LINK_STATE_MAX,
+};
+
+struct ifla_vf_link_state {
+       __u32 vf;
+       __u32 link_state;
+};
+
 /* VF ports management section
  *
  *     Nested layout of set/get msg is:
@@ -445,4 +546,19 @@ enum {
 
 #define IFLA_IPOIB_MAX (__IFLA_IPOIB_MAX - 1)
 
+
+/* HSR section */
+
+enum {
+       IFLA_HSR_UNSPEC,
+       IFLA_HSR_SLAVE1,
+       IFLA_HSR_SLAVE2,
+       IFLA_HSR_MULTICAST_SPEC,        /* Last byte of supervision addr */
+       IFLA_HSR_SUPERVISION_ADDR,      /* Supervision frame multicast addr */
+       IFLA_HSR_SEQ_NR,
+       __IFLA_HSR_MAX,
+};
+
+#define IFLA_HSR_MAX (__IFLA_HSR_MAX - 1)
+
 #endif /* _UAPI_LINUX_IF_LINK_H */