Test VIRL connection.
[csit.git] / resources / libraries / python / PacketVerifier.py
index 5c304dc..19d6aaf 100644 (file)
@@ -86,6 +86,7 @@ class PacketVerifier(object):
         self._sock = socket.socket(socket.AF_PACKET, socket.SOCK_RAW,
                                    ETH_P_ALL)
         self._sock.bind((interface_name, ETH_P_ALL))
+        self._ifname = interface_name
 
 
 def extract_one_packet(buf):
@@ -231,13 +232,17 @@ class RxQueue(PacketVerifier):
             return None
 
         pkt = self._sock.recv(0x7fff)
+        pkt_pad = auto_pad(pkt)
+        print 'Received packet on {0} of len {1}'.format(self._ifname, len(pkt))
+        Ether(pkt).show2()
+        print
 
         if ignore is not None:
             for i, ig_pkt in enumerate(ignore):
                 # Auto pad all packets in ignore list
                 ignore[i] = auto_pad(ig_pkt)
             for ig_pkt in ignore:
-                if ig_pkt == pkt:
+                if ig_pkt == pkt_pad:
                     # Found the packet in ignore list, get another one
                     # TODO: subtract timeout - time_spent in here
                     ignore.remove(ig_pkt)
@@ -263,6 +268,11 @@ class TxQueue(PacketVerifier):
         :param pkt: Packet to send.
         :type pkt: string or scapy Packet derivative.
         """
+        print 'Sending packet out of {0} of len {1}'.format(self._ifname,
+                                                            len(pkt))
+        Ether(str(pkt)).show2()
+        print
+
         pkt = auto_pad(str(pkt))
         self._sock.send(pkt)