From db16aa3d1ce12e7e1e621decb8911894cd6e7a5f Mon Sep 17 00:00:00 2001 From: Roman Zeyde Date: Wed, 20 Dec 2017 09:28:25 +0200 Subject: [PATCH] trezor: update to latest trezorlib version --- libagent/device/trezor.py | 11 +++++------ libagent/device/trezor_defs.py | 3 +-- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/libagent/device/trezor.py b/libagent/device/trezor.py index e72390a..3206242 100644 --- a/libagent/device/trezor.py +++ b/libagent/device/trezor.py @@ -97,9 +97,8 @@ class Trezor(interface.Device): def connect(self): """Enumerate and connect to the first USB HID interface.""" - for d in self._defs.Transport.enumerate(): - log.debug('endpoint: %s', d) - transport = self._defs.Transport(d) + for transport in self._defs.Transport.enumerate(): + log.debug('transport: %s', transport) for _ in range(5): connection = self._defs.Client(transport) self._override_pin_handler(connection) @@ -132,7 +131,7 @@ class Trezor(interface.Device): result = self.conn.get_public_node( n=addr, ecdsa_curve_name=curve_name) log.debug('result: %s', result) - return result.node.public_key + return bytes(result.node.public_key) def _identity_proto(self, identity): result = self._defs.IdentityType() @@ -154,7 +153,7 @@ class Trezor(interface.Device): log.debug('result: %s', result) assert len(result.signature) == 65 assert result.signature[:1] == b'\x00' - return result.signature[1:] + return bytes(result.signature[1:]) except self._defs.CallException as e: msg = '{} error: {}'.format(self, e) log.debug(msg, exc_info=True) @@ -173,7 +172,7 @@ class Trezor(interface.Device): log.debug('result: %s', result) assert len(result.session_key) in {65, 33} # NIST256 or Curve25519 assert result.session_key[:1] == b'\x04' - return result.session_key + return bytes(result.session_key) except self._defs.CallException as e: msg = '{} error: {}'.format(self, e) log.debug(msg, exc_info=True) diff --git a/libagent/device/trezor_defs.py b/libagent/device/trezor_defs.py index aeac1ad..044496c 100644 --- a/libagent/device/trezor_defs.py +++ b/libagent/device/trezor_defs.py @@ -4,7 +4,6 @@ from trezorlib.client import CallException, PinException from trezorlib.client import TrezorClient as Client -from trezorlib.messages_pb2 import PassphraseAck, PinMatrixAck +from trezorlib.messages import IdentityType, PassphraseAck, PinMatrixAck from trezorlib.transport_bridge import BridgeTransport from trezorlib.transport_hid import HidTransport -from trezorlib.types_pb2 import IdentityType