MCPcopy Index your code
hub / github.com/secdev/scapy / _process_packet

Method _process_packet

scapy/sendrecv.py:313–342  ·  view source on GitHub ↗

Internal function used to process each packet.

(self, r)

Source from the content-addressed store, hash-verified

311 self.sniffer.stop()
312
313 def _process_packet(self, r):
314 # type: (Packet) -> None
315 """Internal function used to process each packet."""
316 if r is None:
317 return
318 ok = False
319 h = r.hashret()
320 if h in self.hsent:
321 hlst = self.hsent[h]
322 for i, sentpkt in enumerate(hlst):
323 if r.answers(sentpkt):
324 self.ans.append(QueryAnswer(sentpkt, r))
325 if self.verbose > 1:
326 os.write(1, b"*")
327 ok = True
328 if not self.multi:
329 del hlst[i]
330 self.noans += 1
331 else:
332 if not hasattr(sentpkt, '_answered'):
333 self.noans += 1
334 sentpkt._answered = 1
335 break
336 self._stop_sniffer_if_done()
337 if not ok:
338 if self.verbose > 1:
339 os.write(1, b".")
340 self.nbrecv += 1
341 if conf.debug_match:
342 debug.recv.append(r)
343
344 def _sndrcv_rcv(self, callback):
345 # type: (Callable[[], None]) -> None

Callers

nothing calls this directly

Calls 5

_stop_sniffer_if_doneMethod · 0.95
hashretMethod · 0.45
answersMethod · 0.45
appendMethod · 0.45
writeMethod · 0.45

Tested by

no test coverage detected