Tunnel: Cleanup old tunnel infrastructure.
[sliver-openvswitch.git] / ofproto / tunnel.c
index 7d45930..afe7221 100644 (file)
@@ -34,8 +34,6 @@
  *
  * Ability to generate actions on input for ECN
  * Ability to generate metadata for packet-outs
- * VXLAN.
- * Multicast group management (possibly).
  * Disallow netdevs with names like "gre64_system" to prevent collisions. */
 
 VLOG_DEFINE_THIS_MODULE(tunnel);
@@ -322,15 +320,12 @@ static struct tnl_port *
 tnl_find(struct tnl_match *match_)
 {
     struct tnl_match match = *match_;
-    bool is_multicast = ip_is_multicast(match.ip_src);
     struct tnl_port *tnl_port;
 
     /* remote_ip, local_ip, in_key */
-    if (!is_multicast) {
-        tnl_port = tnl_find_exact(&match);
-        if (tnl_port) {
-            return tnl_port;
-        }
+    tnl_port = tnl_find_exact(&match);
+    if (tnl_port) {
+        return tnl_port;
     }
 
     /* remote_ip, in_key */
@@ -342,47 +337,20 @@ tnl_find(struct tnl_match *match_)
     match.ip_src = match_->ip_src;
 
     /* remote_ip, local_ip */
-    if (!is_multicast) {
-        match.in_key = 0;
-        match.in_key_flow = true;
-        tnl_port = tnl_find_exact(&match);
-        if (tnl_port) {
-            return tnl_port;
-        }
-        match.in_key = match_->in_key;
-        match.in_key_flow = false;
+    match.in_key = 0;
+    match.in_key_flow = true;
+    tnl_port = tnl_find_exact(&match);
+    if (tnl_port) {
+        return tnl_port;
     }
 
     /* remote_ip */
     match.ip_src = 0;
-    match.in_key = 0;
-    match.in_key_flow = true;
     tnl_port = tnl_find_exact(&match);
     if (tnl_port) {
         return tnl_port;
     }
-    match.ip_src = match_->ip_src;
-    match.in_key = match_->in_key;
-    match.in_key_flow = false;
-
-    if (is_multicast) {
-        match.ip_src = 0;
-        match.ip_dst = match_->ip_src;
 
-        /* multicast remote_ip, in_key */
-        tnl_port = tnl_find_exact(&match);
-        if (tnl_port) {
-            return tnl_port;
-        }
-
-        /* multicast remote_ip */
-        match.in_key = 0;
-        match.in_key_flow = true;
-        tnl_port = tnl_find_exact(&match);
-        if (tnl_port) {
-            return tnl_port;
-        }
-    }
     return NULL;
 }