1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-24 07:18:09 +00:00
trezor-firmware/common/protob
matejcik 6f53ca0ac6 core: rework wait_layout()
The original wait_layout was unreliable, because there are no guarantees
re order of arrival of the respective events. Still, TT's event handling
is basically deterministic, so as long as the host sent its messages
close enough to each other, the order worked out.

This is no longer the case with the introduction of loop.spawn: TT's
behavior is still deterministic, but now ButtonAck is processed *before*
the corresponding wait_layout, so the waiting side waits forever.

In the new process, the host must first register to receive layout
events, and then receives all of them (so the number of calls to
wait_layout must match the number of layout changes).

DebugLinkWatchLayout message must be version-gated, because of an
unfortunate collection of bugs in previous versions wrt unknown message
handling; and this interests us because upgrade-tests are using
wait_layout feature.
2020-06-04 16:18:46 +02:00
..
.gitignore MONOREPO MERGE trezor-common 2019-04-15 19:14:45 +02:00
check.py common/messages: Add credential management message. 2019-09-17 18:32:31 +02:00
graph.py MONOREPO MERGE trezor-common 2019-04-15 19:14:45 +02:00
Makefile common+python: remove TRX 2019-05-25 12:15:52 +02:00
messages-binance.proto #28 - binance implementation (#189) 2019-07-31 17:02:41 +02:00
messages-bitcoin.proto core/bitcoin: drop decred_script_version 2020-05-21 19:14:39 +02:00
messages-bootloader.proto MONOREPO MERGE trezor-common 2019-04-15 19:14:45 +02:00
messages-cardano.proto MONOREPO MERGE trezor-common 2019-04-15 19:14:45 +02:00
messages-common.proto common: introduce ButtonRequestType.PinEntry 2020-06-04 16:18:46 +02:00
messages-crypto.proto MONOREPO MERGE trezor-common 2019-04-15 19:14:45 +02:00
messages-debug.proto core: rework wait_layout() 2020-06-04 16:18:46 +02:00
messages-eos.proto core: serialize signature in EosSignedTx message 2019-05-24 12:49:19 +02:00
messages-ethereum.proto protob: add deprecated field for old-style EthereumAddress 2019-05-07 18:23:18 +02:00
messages-lisk.proto common/protob: drop a default field declaration 2020-02-11 11:53:34 +01:00
messages-management.proto common: rename ClearSession to LockDevice, introduce EndSession 2020-06-04 16:18:46 +02:00
messages-monero.proto xmr: proto - add fields for protocol optimization 2020-04-13 22:19:56 +02:00
messages-nem.proto MONOREPO MERGE trezor-common 2019-04-15 19:14:45 +02:00
messages-ripple.proto common: fix whitespace 2019-08-21 17:30:52 +02:00
messages-stellar.proto MONOREPO MERGE trezor-common 2019-04-15 19:14:45 +02:00
messages-tezos.proto core/tezos: support the new protocol update (005-BABYLON) 2019-10-23 17:53:10 +02:00
messages-webauthn.proto core/webauthn: Add algorithm and curve to WebAuthnListResidentCredentials response. 2020-03-12 15:45:26 +01:00
messages.proto core: rework wait_layout() 2020-06-04 16:18:46 +02:00
pb2py core: add final mypy fixes! 2019-10-22 14:36:25 +00:00
protocol.md all: rename TREZOR to Trezor where possible 2019-06-17 20:28:29 +02:00