code: def recv_with_timeout(self, timeout=1):
          
          msg = self.ins.recv(timeout)
          t = time.time()
          if msg is None:
              raise Scapy_Exception("Timeout")
          return self.basecls, msg, t
docs: Receive a complete ISOTP message, blocking until a message is
          received or the specified timeout is reached.
          If timeout is 0, then this function doesn't block and returns the
          first frame in the receive buffer or None if there isn't any.