OSDN Git Service

net: bridge: mcast: account for ipv6 size when dumping querier state
authorNikolay Aleksandrov <nikolay@nvidia.com>
Mon, 16 Aug 2021 10:11:34 +0000 (13:11 +0300)
committerDavid S. Miller <davem@davemloft.net>
Mon, 16 Aug 2021 12:58:00 +0000 (13:58 +0100)
We need to account for the IPv6 attributes when dumping querier state.

Fixes: 5e924fe6ccfd ("net: bridge: mcast: dump ipv6 querier state")
Signed-off-by: Nikolay Aleksandrov <nikolay@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/bridge/br_multicast.c

index 76992dd..e411dd8 100644 (file)
@@ -2931,7 +2931,13 @@ size_t br_multicast_querier_state_size(void)
        return nla_total_size(0) +              /* nest attribute */
               nla_total_size(sizeof(__be32)) + /* BRIDGE_QUERIER_IP_ADDRESS */
               nla_total_size(sizeof(int)) +    /* BRIDGE_QUERIER_IP_PORT */
-              nla_total_size_64bit(sizeof(u64)); /* BRIDGE_QUERIER_IP_OTHER_TIMER */
+              nla_total_size_64bit(sizeof(u64)) + /* BRIDGE_QUERIER_IP_OTHER_TIMER */
+#if IS_ENABLED(CONFIG_IPV6)
+              nla_total_size(sizeof(struct in6_addr)) + /* BRIDGE_QUERIER_IPV6_ADDRESS */
+              nla_total_size(sizeof(int)) +             /* BRIDGE_QUERIER_IPV6_PORT */
+              nla_total_size_64bit(sizeof(u64)) +       /* BRIDGE_QUERIER_IPV6_OTHER_TIMER */
+#endif
+              0;
 }
 
 /* protected by rtnl or rcu */