summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Rapoport <mike.rapoport@ravellosystems.com>2013-04-13 23:21:39 +0000
committerDavid S. Miller <davem@davemloft.net>2013-04-14 15:41:49 -0400
commit9d9f163c82c678f1efe6e7d40d8691dca08c3eab (patch)
tree46a7334c4d6fdd538571fad4cf93e62ce0f4ae05
parentc84d8055e0c9971109f426f6c551e8be644f284b (diff)
vxlan: use htonl when snooping for loopback address
Currently "bridge fdb show dev vxlan0" lists loopback address as "1.0.0.127". Using htonl(INADDR_LOOPBACK) rather than passing it directly to vxlan_snoop fixes the problem. Signed-off-by: Mike Rapoport <mike.rapoport@ravellosystems.com> Acked-by: Cong Wang <xiyou.wangcong@gmail.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/vxlan.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
index ee02ecd6ae61..725aba37e182 100644
--- a/drivers/net/vxlan.c
+++ b/drivers/net/vxlan.c
@@ -925,7 +925,8 @@ static void vxlan_encap_bypass(struct sk_buff *skb, struct vxlan_dev *src_vxlan,
__skb_pull(skb, skb_network_offset(skb));
if (dst_vxlan->flags & VXLAN_F_LEARN)
- vxlan_snoop(skb->dev, INADDR_LOOPBACK, eth_hdr(skb)->h_source);
+ vxlan_snoop(skb->dev, htonl(INADDR_LOOPBACK),
+ eth_hdr(skb)->h_source);
u64_stats_update_begin(&tx_stats->syncp);
tx_stats->tx_packets++;