MCPcopy Create free account
hub / github.com/PierreGode/Ragnar / decode

Method decode

pager_lib/nmb/nmb_structs.py:25–42  ·  view source on GitHub ↗
(self, data, offset)

Source from the content-addressed store, hash-verified

23 self.data = ''
24
25 def decode(self, data, offset):
26 data_len = len(data)
27
28 if data_len < offset + self.HEADER_STRUCT_SIZE:
29 # Not enough data for decoding
30 return 0
31
32 self.reset()
33 self.type, self.flags, length = struct.unpack(self.HEADER_STRUCT_FORMAT, data[offset:offset+self.HEADER_STRUCT_SIZE])
34
35 if self.flags & 0x01:
36 length |= 0x010000
37
38 if data_len < offset + self.HEADER_STRUCT_SIZE + length:
39 return 0
40
41 self.data = data[offset+self.HEADER_STRUCT_SIZE:offset+self.HEADER_STRUCT_SIZE+length]
42 return self.HEADER_STRUCT_SIZE + length
43
44class DirectTCPSessionMessage(NMBSessionMessage):
45

Callers 4

__init__Method · 0.45
scanMethod · 0.45
feedDataMethod · 0.45

Calls 1

resetMethod · 0.95

Tested by

no test coverage detected