net/openvswitch: Set the ipv6 source tunnel key address attribute correctly
authorOr Gerlitz <ogerlitz@mellanox.com>
Wed, 15 Mar 2017 16:10:47 +0000 (18:10 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 15 Mar 2017 22:09:09 +0000 (15:09 -0700)
When dealing with ipv6 source tunnel key address attribute
(OVS_TUNNEL_KEY_ATTR_IPV6_SRC) we are wrongly setting the tunnel
dst ip, fix that.

Fixes: 6b26ba3a7d95 ('openvswitch: netlink attributes for IPv6 tunneling')
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
Reported-by: Paul Blakey <paulb@mellanox.com>
Acked-by: Jiri Benc <jbenc@redhat.com>
Acked-by: Joe Stringer <joe@ovn.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/openvswitch/flow_netlink.c

index 6f5fa50f716d066333b30edde43e5165b9fe94be..a08ff834676ba9a8f82bb602cbc15d0d20e76478 100644 (file)
@@ -604,7 +604,7 @@ static int ip_tun_from_nlattr(const struct nlattr *attr,
                        ipv4 = true;
                        break;
                case OVS_TUNNEL_KEY_ATTR_IPV6_SRC:
                        ipv4 = true;
                        break;
                case OVS_TUNNEL_KEY_ATTR_IPV6_SRC:
-                       SW_FLOW_KEY_PUT(match, tun_key.u.ipv6.dst,
+                       SW_FLOW_KEY_PUT(match, tun_key.u.ipv6.src,
                                        nla_get_in6_addr(a), is_mask);
                        ipv6 = true;
                        break;
                                        nla_get_in6_addr(a), is_mask);
                        ipv6 = true;
                        break;