Check if scapy packet filter started correctly

Change-Id: I1968540895c56341302f1c71ffa092f11c1f1bfd
diff --git a/TestON/drivers/common/cli/emulator/scapyclidriver.py b/TestON/drivers/common/cli/emulator/scapyclidriver.py
index 96b9c17..0dd3b6b 100644
--- a/TestON/drivers/common/cli/emulator/scapyclidriver.py
+++ b/TestON/drivers/common/cli/emulator/scapyclidriver.py
@@ -725,6 +725,13 @@
             main.log.info( "Filter on " + self.name + ' > ' + cmd )
             self.handle.sendline( cmd )
             self.handle.expect( '"\)\r\n' )
+            # Make sure the sniff function didn't exit due to failures
+            i = self.handle.expect( [ self.scapyPrompt, pexpect.TIMEOUT ], timeout=3 )
+            if i == 0:
+                # sniff exited
+                main.log.error( self.name + ": sniff function exited" )
+                main.log.error( self.name + ":     " + self.handle.before )
+                return main.FALSE
             # TODO: parse this?
             return main.TRUE
         except pexpect.TIMEOUT:
diff --git a/TestON/tests/dependencies/topology.py b/TestON/tests/dependencies/topology.py
index cbb14e7..1d45ef3 100644
--- a/TestON/tests/dependencies/topology.py
+++ b/TestON/tests/dependencies/topology.py
@@ -350,7 +350,10 @@
         Returns:
             main.TRUE if scapy result is expected, otherwise main.FALSE
         """
-        receiver.startFilter( ifaceName=dIface, pktFilter=pktFilter )
+        started = receiver.startFilter( ifaceName=dIface, pktFilter=pktFilter )
+        if not started:
+            main.log.error("Failed to start Scapy packet filter")
+            return main.FALSE
         sender.sendPacket( iface=sIface )
         finished = receiver.checkFilter()
         packet = ""
@@ -433,7 +436,10 @@
         packetCaptured = True
         srcHandle = getattr( main, srcHost )
         dstHandle = getattr( main, dstHost )
-        dstHandle.startFilter( ifaceName=dstIntf, pktFilter="ip host {}".format( dstIp ) )
+        started = dstHandle.startFilter( ifaceName=dstIntf, pktFilter="ip host {}".format( dstIp ) )
+        if not started:
+            main.log.error("Failed to start Scapy packet filter")
+            return main.FALSE
         srcHandle.pingHostSetAlternative( [ dstIp ], IPv6=ipv6 )
         finished = dstHandle.checkFilter()
         packet = ""