[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20170310153024.30894-1-vincent@bernat.im>
Date: Fri, 10 Mar 2017 16:30:24 +0100
From: Vincent Bernat <vincent@...nat.im>
To: "David S. Miller" <davem@...emloft.net>,
Jiri Benc <jbenc@...hat.com>,
Alexander Duyck <aduyck@...antis.com>,
Roopa Prabhu <roopa@...ulusnetworks.com>,
netdev@...r.kernel.org
Cc: Vincent Bernat <vincent@...nat.im>
Subject: [net-next v1] vxlan: use appropriate family on L3 miss
When sending a L3 miss, the family is set to AF_INET even for IPv6. This
causes userland (eg "ip monitor") to be confused. Ensure we send the
appropriate family in this case. For L2 miss, keep using AF_INET.
Signed-off-by: Vincent Bernat <vincent@...nat.im>
---
drivers/net/vxlan.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
index e375560cc74e..168257aa8ace 100644
--- a/drivers/net/vxlan.c
+++ b/drivers/net/vxlan.c
@@ -276,9 +276,9 @@ static int vxlan_fdb_info(struct sk_buff *skb, struct vxlan_dev *vxlan,
send_eth = send_ip = true;
if (type == RTM_GETNEIGH) {
- ndm->ndm_family = AF_INET;
send_ip = !vxlan_addr_any(&rdst->remote_ip);
send_eth = !is_zero_ether_addr(fdb->eth_addr);
+ ndm->ndm_family = send_ip ? rdst->remote_ip.sa.sa_family : AF_INET;
} else
ndm->ndm_family = AF_BRIDGE;
ndm->ndm_state = fdb->state;
--
2.11.0
Powered by blists - more mailing lists