In get_tunnel_config(), distinguish between VXLAN and LISP when deciding
whether or not to print UDP destination port. Only add the UDP
destination port for either protocol if it is not the default UDP port.
Update the LISP unit test to match the new behavior as well.

Signed-off-by: Kyle Mestery <kmest...@cisco.com>
---
 lib/netdev-vport.c | 6 +++++-
 tests/tunnel.at    | 2 +-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/lib/netdev-vport.c b/lib/netdev-vport.c
index d696404..3c4929c 100644
--- a/lib/netdev-vport.c
+++ b/lib/netdev-vport.c
@@ -521,7 +521,11 @@ get_tunnel_config(struct netdev_dev *dev, struct smap 
*args)
 
     if (tnl_cfg->dst_port) {
         uint16_t dst_port = ntohs(tnl_cfg->dst_port);
-        if (dst_port != VXLAN_DST_PORT) {
+        const char *type = netdev_dev_get_type(dev);
+
+        if (!strcmp("vxlan", type) && dst_port != VXLAN_DST_PORT) {
+            smap_add_format(args, "dst_port", "%d", dst_port);
+        } else if (!strcmp("lisp", type) && dst_port != LISP_DST_PORT) {
             smap_add_format(args, "dst_port", "%d", dst_port);
         }
     }
diff --git a/tests/tunnel.at b/tests/tunnel.at
index c5b0064..5146708 100644
--- a/tests/tunnel.at
+++ b/tests/tunnel.at
@@ -335,7 +335,7 @@ br0 (dummy@ovs-dummy):
        lookups: hit:0 missed:0 lost:0
        flows: 0
        br0 65534/100: (dummy)
-       p1 1/1: (lisp: dst_port=4341, remote_ip=1.1.1.1)
+       p1 1/1: (lisp: remote_ip=1.1.1.1)
 ])
 
 OVS_VSWITCHD_STOP
-- 
1.8.1.2

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to