aboutsummaryrefslogtreecommitdiff
path: root/inform.py
diff options
context:
space:
mode:
authorMike Crute <mcrute@gmail.com>2016-07-27 19:33:47 -0700
committerMike Crute <mcrute@gmail.com>2016-07-27 19:33:47 -0700
commit244e353bb6a788e5f76ed999abf3149704dea754 (patch)
treed075c1525cf8ea199f65e84c0d91563baac0897e /inform.py
parentd64e26457e6c891304315a7de17db886493e8039 (diff)
downloadubntmfi-244e353bb6a788e5f76ed999abf3149704dea754.tar.bz2
ubntmfi-244e353bb6a788e5f76ed999abf3149704dea754.tar.xz
ubntmfi-244e353bb6a788e5f76ed999abf3149704dea754.zip
Reassemble fragmented packets
Diffstat (limited to 'inform.py')
-rw-r--r--inform.py14
1 files changed, 4 insertions, 10 deletions
diff --git a/inform.py b/inform.py
index 6741415..9877f45 100644
--- a/inform.py
+++ b/inform.py
@@ -163,16 +163,10 @@ class InformSerializer(object):
163 163
164 decrypted = Cryptor(key, packet.iv).decrypt(packet.raw_payload) 164 decrypted = Cryptor(key, packet.iv).decrypt(packet.raw_payload)
165 165
166 try: 166 json.loads(decrypted.decode("latin-1"))
167 json.loads(decrypted.decode("latin-1")) 167 packet.raw_payload = decrypted
168 packet.raw_payload = decrypted 168 packet._used_key = key
169 packet._used_key = key 169 break
170 break
171 except ValueError as err:
172 if err.message == "No JSON object could be decoded":
173 continue
174 else:
175 raise
176 170
177 def parse(self, input): 171 def parse(self, input):
178 input_stream = BinaryDataStream(input) 172 input_stream = BinaryDataStream(input)