Signed-off-by: Pravin B Shelar <[email protected]>
---
lib/odp-util.c | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/lib/odp-util.c b/lib/odp-util.c
index 9b0876c..3884b4d 100644
--- a/lib/odp-util.c
+++ b/lib/odp-util.c
@@ -1874,6 +1874,20 @@ odp_flow_key_to_flow(const struct nlattr *key, size_t
key_len,
expected_attrs |= UINT64_C(1) << OVS_KEY_ATTR_TUN_ID;
}
+ if (present_attrs & (UINT64_C(1) << OVS_KEY_ATTR_IPV4_TUNNEL)) {
+ struct ovs_key_ipv4_tunnel *ipv4_tun_key;
+
+ ipv4_tun_key = nl_attr_get(attrs[OVS_KEY_ATTR_IPV4_TUNNEL]);
+
+ flow->tunnel.tun_id = ipv4_tun_key->tun_id;
+ flow->tunnel.flags = ipv4_tun_key->tun_flags;
+ flow->tunnel.ip_src = ipv4_tun_key->ipv4_src;
+ flow->tunnel.ip_dst = ipv4_tun_key->ipv4_dst;
+ flow->tunnel.ip_tos = ipv4_tun_key->ipv4_tos;
+ flow->tunnel.ip_ttl = ipv4_tun_key->ipv4_ttl;
+ expected_attrs |= UINT64_C(1) << OVS_KEY_ATTR_IPV4_TUNNEL;
+ }
+
if (present_attrs & (UINT64_C(1) << OVS_KEY_ATTR_IN_PORT)) {
flow->in_port = nl_attr_get_u32(attrs[OVS_KEY_ATTR_IN_PORT]);
expected_attrs |= UINT64_C(1) << OVS_KEY_ATTR_IN_PORT;
--
1.7.10
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev