diff --git a/providers/of/link/src/main/java/org/onlab/onos/provider/of/link/impl/LinkDiscovery.java b/providers/of/link/src/main/java/org/onlab/onos/provider/of/link/impl/LinkDiscovery.java
index 2f0d5d8..2e8fa55 100644
--- a/providers/of/link/src/main/java/org/onlab/onos/provider/of/link/impl/LinkDiscovery.java
+++ b/providers/of/link/src/main/java/org/onlab/onos/provider/of/link/impl/LinkDiscovery.java
@@ -277,7 +277,7 @@
      * Handles an incoming LLDP packet. Creates link in topology and sends ACK
      * to port where LLDP originated.
      */
-    public void handleLLDP(final byte[] pkt, Integer inPort) {
+    public boolean handleLLDP(final byte[] pkt, Integer inPort) {
 
         short ethType = ONLabLddp.isOVXLLDP(pkt);
         if (ethType == Ethernet.TYPE_LLDP || ethType == Ethernet.TYPE_BSN) {
@@ -286,7 +286,7 @@
             final OpenFlowSwitch srcSwitch = ctrl.getSwitch(new Dpid(dp.getDpid()));
             final Integer srcPort = dp.getPort();
             if (srcSwitch == null) {
-                return;
+                return true;
             }
             this.ackProbe(srcPort);
             ConnectPoint src = new ConnectPoint(
@@ -303,8 +303,10 @@
                 ld = new DefaultLinkDescription(src, dst, Type.DIRECT);
             }
             linkProvider.linkDetected(ld);
+            return true;
         } else {
             this.log.debug("Ignoring unknown LLDP");
+            return false;
         }
     }
 
diff --git a/providers/of/link/src/main/java/org/onlab/onos/provider/of/link/impl/OpenFlowLinkProvider.java b/providers/of/link/src/main/java/org/onlab/onos/provider/of/link/impl/OpenFlowLinkProvider.java
index 2de4b8c..99ae8ce 100644
--- a/providers/of/link/src/main/java/org/onlab/onos/provider/of/link/impl/OpenFlowLinkProvider.java
+++ b/providers/of/link/src/main/java/org/onlab/onos/provider/of/link/impl/OpenFlowLinkProvider.java
@@ -87,8 +87,9 @@
             if (ld == null) {
                 return;
             }
-            ld.handleLLDP(pktCtx.unparsed(),
-                    pktCtx.inPort());
+            if (ld.handleLLDP(pktCtx.unparsed(), pktCtx.inPort())) {
+                pktCtx.block();
+            }
 
         }
 
