From b24506b1c900d17f21cd33e808f47ead42d8741f Mon Sep 17 00:00:00 2001
From: Alex Reimers <alex@bigswitch.com>
Date: Tue, 3 Apr 2012 11:50:35 -0700
Subject: [PATCH] Fix an issue causing infinite broadcast loops in OpenFlow
 topologies that have loops.

---
 .../java/net/floodlightcontroller/core/internal/Controller.java | 2 +-
 .../java/net/floodlightcontroller/forwarding/Forwarding.java    | 1 +
 .../staticflowentry/StaticFlowEntryPusher.java                  | 2 +-
 3 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/main/java/net/floodlightcontroller/core/internal/Controller.java b/src/main/java/net/floodlightcontroller/core/internal/Controller.java
index f5b9aa3d2..cb0b623fc 100644
--- a/src/main/java/net/floodlightcontroller/core/internal/Controller.java
+++ b/src/main/java/net/floodlightcontroller/core/internal/Controller.java
@@ -1341,7 +1341,7 @@ public class Controller
     @Override
     public void handleOutgoingMessage(IOFSwitch sw, OFMessage m,
                                       FloodlightContext bc) {
-        if (log.isDebugEnabled()) {
+        if (log.isTraceEnabled()) {
             String str = OFMessage.getDataAsString(sw, m, bc);
             log.trace("{}", str);
         }
diff --git a/src/main/java/net/floodlightcontroller/forwarding/Forwarding.java b/src/main/java/net/floodlightcontroller/forwarding/Forwarding.java
index 098b62cc1..68b1d3409 100644
--- a/src/main/java/net/floodlightcontroller/forwarding/Forwarding.java
+++ b/src/main/java/net/floodlightcontroller/forwarding/Forwarding.java
@@ -201,6 +201,7 @@ public class Forwarding extends ForwardingBase implements IFloodlightModule {
                 log.trace("doFlood, drop broadcast packet, pi={}, from a blocked port, " +
                          "srcSwitchTuple={}, linkInfo={}", new Object[] {pi, srcSwTuple});
             }
+            return;
         }
 
         // Set Action to flood
diff --git a/src/main/java/net/floodlightcontroller/staticflowentry/StaticFlowEntryPusher.java b/src/main/java/net/floodlightcontroller/staticflowentry/StaticFlowEntryPusher.java
index 91e086cbb..d56ac3fb7 100644
--- a/src/main/java/net/floodlightcontroller/staticflowentry/StaticFlowEntryPusher.java
+++ b/src/main/java/net/floodlightcontroller/staticflowentry/StaticFlowEntryPusher.java
@@ -267,7 +267,7 @@ public class StaticFlowEntryPusher
                 if (row.get(key) == null)
                     continue;
                 if ( key.equals(COLUMN_SWITCH) || key.equals(COLUMN_NAME)
-                        || key.equals("id")) // "id" seems implicit in cassandra
+                        || key.equals("id"))
                     continue; // already handled
                 // explicitly ignore timeouts and wildcards
                 if ( key.equals(COLUMN_HARD_TIMEOUT) || key.equals(COLUMN_IDLE_TIMEOUT) ||
-- 
GitLab