summaryrefslogtreecommitdiffstats
path: root/include/uapi/linux/if_bridge.h
diff options
context:
space:
mode:
authorNikolay Aleksandrov2016-02-26 21:20:04 +0100
committerDavid S. Miller2016-03-01 22:55:07 +0100
commit59f78f9f6c2e80dcf0f520be85b660f856217b79 (patch)
treead2d8d083eb9dd2b5c9091f23f727ff0d70b0953 /include/uapi/linux/if_bridge.h
parentbridge: mcast: add support for temporary port router (diff)
downloadkernel-qcow2-linux-59f78f9f6c2e80dcf0f520be85b660f856217b79.tar.gz
kernel-qcow2-linux-59f78f9f6c2e80dcf0f520be85b660f856217b79.tar.xz
kernel-qcow2-linux-59f78f9f6c2e80dcf0f520be85b660f856217b79.zip
bridge: mcast: add support for more router port information dumping
Allow for more multicast router port information to be dumped such as timer and type attributes. For that that purpose we need to extend the MDBA_ROUTER_PORT attribute similar to how it was done for the mdb entries recently. The new format is thus: [MDBA_ROUTER_PORT] = { <- nested attribute u32 ifindex <- router port ifindex for user-space compatibility [MDBA_ROUTER_PATTR attributes] } This way it remains compatible with older users (they'll simply retrieve the u32 in the beginning) and new users can parse the remaining attributes. It would also allow to add future extensions to the router port without breaking compatibility. Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/uapi/linux/if_bridge.h')
-rw-r--r--include/uapi/linux/if_bridge.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/include/uapi/linux/if_bridge.h b/include/uapi/linux/if_bridge.h
index 74ee03a47e79..0536eefff9bf 100644
--- a/include/uapi/linux/if_bridge.h
+++ b/include/uapi/linux/if_bridge.h
@@ -144,7 +144,10 @@ struct bridge_vlan_info {
* }
* }
* [MDBA_ROUTER] = {
- * [MDBA_ROUTER_PORT]
+ * [MDBA_ROUTER_PORT] = {
+ * u32 ifindex
+ * [MDBA_ROUTER_PATTR attributes]
+ * }
* }
*/
enum {
@@ -192,6 +195,15 @@ enum {
};
#define MDBA_ROUTER_MAX (__MDBA_ROUTER_MAX - 1)
+/* router port attributes */
+enum {
+ MDBA_ROUTER_PATTR_UNSPEC,
+ MDBA_ROUTER_PATTR_TIMER,
+ MDBA_ROUTER_PATTR_TYPE,
+ __MDBA_ROUTER_PATTR_MAX
+};
+#define MDBA_ROUTER_PATTR_MAX (__MDBA_ROUTER_PATTR_MAX - 1)
+
struct br_port_msg {
__u8 family;
__u32 ifindex;