From 96e3edad31e2e9c4b86b362e2a6b1e96148faf7c Mon Sep 17 00:00:00 2001 From: AloneLiberty <111039319+AloneLiberty@users.noreply.github.com> Date: Thu, 4 Apr 2024 16:10:36 +0300 Subject: [PATCH] 2.3.3 - Support new protobuf library version (#21) --- FlipperNested/bridge.py | 16 +++++++++++----- setup.py | 2 +- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/FlipperNested/bridge.py b/FlipperNested/bridge.py index f848ea2..f848415 100644 --- a/FlipperNested/bridge.py +++ b/FlipperNested/bridge.py @@ -1,3 +1,4 @@ +import inspect import serial import serial.tools.list_ports from google.protobuf.internal.encoder import _VarintBytes @@ -122,16 +123,21 @@ def get_files(self, path="/ext") -> list: cmd_data.path = path rep_data = self._rpc_send_and_read_answer(cmd_data, "storage_list_request") - storage_response.extend( - MessageToDict(message=rep_data.storage_list_response, including_default_value_fields=True, )["file"]) + storage_response.extend(self._message_to_dict(rep_data.storage_list_response)["file"]) while rep_data.has_next: rep_data = self._rpc_read_answer() - storage_response.extend( - MessageToDict(message=rep_data.storage_list_response, including_default_value_fields=True, )["file"]) + storage_response.extend(self._message_to_dict(rep_data.storage_list_response)["file"]) return storage_response + @staticmethod + def _message_to_dict(message): + if 'including_default_value_fields' in inspect.signature(MessageToDict).parameters: + return MessageToDict(message=message, including_default_value_fields=True) + else: + return MessageToDict(message=message, always_print_fields_with_no_presence=True) + def file_read(self, path=None): storage_response = [] cmd_data = storage_pb2.ReadRequest() @@ -182,7 +188,7 @@ def mkdir(self, path="/ext"): cmd_data = storage_pb2.MkdirRequest() cmd_data.path = path - rep_data = self._rpc_send_and_read_answer(cmd_data, "storage_mkdir_request") + self._rpc_send_and_read_answer(cmd_data, "storage_mkdir_request") def file_rename(self, old, new): cmd_data = storage_pb2.RenameRequest() diff --git a/setup.py b/setup.py index 241f7c3..8849849 100644 --- a/setup.py +++ b/setup.py @@ -33,7 +33,7 @@ with open("README.md", "r") as fh: long_description = fh.read() -setuptools.setup(name="FlipperNested", version="2.3.2", author="AloneLiberty", +setuptools.setup(name="FlipperNested", version="2.3.3", author="AloneLiberty", description="Recover keys from collected nonces", long_description=long_description, long_description_content_type="text/markdown", url="https://github.com/AloneLiberty/FlipperNestedRecovery",