MCPcopy
hub / github.com/fortra/impacket / decode

Method decode

impacket/ImpactDecoder.py:106–124  ·  view source on GitHub ↗
(self, aBuffer)

Source from the content-addressed store, hash-verified

104 pass
105
106 def decode(self, aBuffer):
107 e = ImpactPacket.LinuxSLL(aBuffer)
108 self.set_decoded_protocol( e )
109 off = 16
110 if e.get_ether_type() == ImpactPacket.IP.ethertype:
111 self.ip_decoder = IPDecoder()
112 packet = self.ip_decoder.decode(aBuffer[off:])
113 elif e.get_ether_type() == ImpactPacket.ARP.ethertype:
114 self.arp_decoder = ARPDecoder()
115 packet = self.arp_decoder.decode(aBuffer[off:])
116 elif e.get_ether_type() == eap.DOT1X_AUTHENTICATION:
117 self.eapol_decoder = EAPOLDecoder()
118 packet = self.eapol_decoder.decode(aBuffer[off:])
119 else:
120 self.data_decoder = DataDecoder()
121 packet = self.data_decoder.decode(aBuffer[off:])
122
123 e.contains(packet)
124 return e
125
126class IPDecoder(Decoder):
127 def __init__(self):

Callers

nothing calls this directly

Calls 8

get_ether_typeMethod · 0.95
IPDecoderClass · 0.85
ARPDecoderClass · 0.85
EAPOLDecoderClass · 0.85
DataDecoderClass · 0.85
set_decoded_protocolMethod · 0.80
decodeMethod · 0.45
containsMethod · 0.45

Tested by

no test coverage detected