]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - include/linux/if_link.h
ipv4: AF_INET link address family
[net-next-2.6.git] / include / linux / if_link.h
index 85c812db5a3f09e75f6bebc646c86300d6621594..2e02e4d7b11e0daad83193478215fa0d7932a02a 100644 (file)
@@ -4,7 +4,7 @@
 #include <linux/types.h>
 #include <linux/netlink.h>
 
-/* The struct should be in sync with struct net_device_stats */
+/* This struct should be in sync with struct rtnl_link_stats64 */
 struct rtnl_link_stats {
        __u32   rx_packets;             /* total packets received       */
        __u32   tx_packets;             /* total packets transmitted    */
@@ -37,6 +37,7 @@ struct rtnl_link_stats {
        __u32   tx_compressed;
 };
 
+/* The main device statistics structure */
 struct rtnl_link_stats64 {
        __u64   rx_packets;             /* total packets received       */
        __u64   tx_packets;             /* total packets transmitted    */
@@ -79,6 +80,24 @@ struct rtnl_link_ifmap {
        __u8    port;
 };
 
+/*
+ * IFLA_AF_SPEC
+ *   Contains nested attributes for address family specific attributes.
+ *   Each address family may create a attribute with the address family
+ *   number as type and create its own attribute structure in it.
+ *
+ *   Example:
+ *   [IFLA_AF_SPEC] = {
+ *       [AF_INET] = {
+ *           [IFLA_INET_CONF] = ...,
+ *       },
+ *       [AF_INET6] = {
+ *           [IFLA_INET6_FLAGS] = ...,
+ *           [IFLA_INET6_CONF] = ...,
+ *       }
+ *   }
+ */
+
 enum {
        IFLA_UNSPEC,
        IFLA_ADDRESS,
@@ -115,6 +134,7 @@ enum {
        IFLA_STATS64,
        IFLA_VF_PORTS,
        IFLA_PORT_SELF,
+       IFLA_AF_SPEC,
        __IFLA_MAX
 };
 
@@ -127,6 +147,14 @@ enum {
 #define IFLA_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct ifinfomsg))
 #endif
 
+enum {
+       IFLA_INET_UNSPEC,
+       IFLA_INET_CONF,
+       __IFLA_INET_MAX,
+};
+
+#define IFLA_INET_MAX (__IFLA_INET_MAX - 1)
+
 /* ifi_flags.
 
    IFF_* flags.
@@ -233,7 +261,7 @@ enum macvlan_mode {
        MACVLAN_MODE_BRIDGE  = 4, /* talk to bridge ports directly */
 };
 
-/* SR-IOV virtual function managment section */
+/* SR-IOV virtual function management section */
 
 enum {
        IFLA_VF_INFO_UNSPEC,