提交 09d7cf7d 编写于 作者: V Vlad Yasevich 提交者: David S. Miller

bridge: Correctly encode addresses when dumping mdb entries

When dumping mdb table, set the addresses the kernel returns
based on the address protocol type.
Signed-off-by: NVlad Yasevich <vyasevic@redhat.com>
Acked-by: NCong Wang <amwang@redhat.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 63233159
......@@ -84,9 +84,11 @@ static int br_mdb_fill_info(struct sk_buff *skb, struct netlink_callback *cb,
struct br_mdb_entry e;
e.ifindex = port->dev->ifindex;
e.state = p->state;
e.addr.u.ip4 = p->addr.u.ip4;
if (p->addr.proto == htons(ETH_P_IP))
e.addr.u.ip4 = p->addr.u.ip4;
#if IS_ENABLED(CONFIG_IPV6)
e.addr.u.ip6 = p->addr.u.ip6;
if (p->addr.proto == htons(ETH_P_IPV6))
e.addr.u.ip6 = p->addr.u.ip6;
#endif
e.addr.proto = p->addr.proto;
if (nla_put(skb, MDBA_MDB_ENTRY_INFO, sizeof(e), &e)) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册