mirror of
https://github.com/trezor/trezor-firmware.git
synced 2025-03-12 14:16:06 +00:00
BLE handling in micropython
This commit is contained in:
parent
8aa2606d4a
commit
b62a5aec6b
30
common/protob/messages-ble.proto
Normal file
30
common/protob/messages-ble.proto
Normal file
@ -0,0 +1,30 @@
|
||||
syntax = "proto2";
|
||||
package hw.trezor.messages.ble;
|
||||
|
||||
// Sugar for easier handling in Java
|
||||
option java_package = "com.satoshilabs.trezor.lib.protobuf";
|
||||
option java_outer_classname = "TrezorMessageBLE";
|
||||
|
||||
import "options.proto";
|
||||
|
||||
option (include_in_bitcoin_only) = true;
|
||||
|
||||
|
||||
/**
|
||||
* Request: erases all BLE bonds
|
||||
* @start
|
||||
* @next Success
|
||||
* @next Failure
|
||||
*/
|
||||
message EraseBonds {
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Request: disconnect
|
||||
* @start
|
||||
* @next Success
|
||||
* @next Failure
|
||||
*/
|
||||
message Disconnect {
|
||||
}
|
@ -39,6 +39,7 @@ message Failure {
|
||||
Failure_PinMismatch = 12;
|
||||
Failure_WipeCodeMismatch = 13;
|
||||
Failure_InvalidSession = 14;
|
||||
Failure_DeviceIsBusy = 15;
|
||||
Failure_FirmwareError = 99;
|
||||
}
|
||||
}
|
||||
|
@ -88,6 +88,10 @@ enum MessageType {
|
||||
MessageType_FirmwareRequest = 8 [(bitcoin_only) = true, (wire_out) = true, (wire_bootloader) = true];
|
||||
MessageType_ProdTestT1 = 32 [(bitcoin_only) = true, (wire_in) = true, (wire_bootloader) = true];
|
||||
|
||||
// BLE
|
||||
MessageType_EraseBonds = 8006 [(bitcoin_only) = true, (wire_in) = true];
|
||||
MessageType_Disconnect = 8007 [(bitcoin_only) = true, (wire_in) = true];
|
||||
|
||||
// Bitcoin
|
||||
MessageType_GetPublicKey = 11 [(bitcoin_only) = true, (wire_in) = true];
|
||||
MessageType_PublicKey = 12 [(bitcoin_only) = true, (wire_out) = true];
|
||||
|
@ -1062,6 +1062,10 @@ pub static mp_module_trezorui_api: Module = obj_module! {
|
||||
/// def button_event(self, event: int, button: int) -> LayoutState | None:
|
||||
/// """Receive a button event `event` for button `button`."""
|
||||
///
|
||||
/// if utils.USE_BLE:
|
||||
/// def ble_event(self, event: int, data: bytes) -> LayoutState | None:
|
||||
/// """Receive a BLE events."""
|
||||
///
|
||||
/// def progress_event(self, value: int, description: str) -> LayoutState | None:
|
||||
/// """Receive a progress event."""
|
||||
///
|
||||
|
@ -23,7 +23,7 @@ def erase_bonds() -> bool:
|
||||
|
||||
|
||||
# upymod/modtrezorio/modtrezorio-ble.h
|
||||
def unpair() -> None:
|
||||
def unpair() -> bool:
|
||||
"""
|
||||
Erases bond for current connection, if any
|
||||
"""
|
||||
|
@ -22,6 +22,9 @@ class LayoutObj(Generic[T]):
|
||||
if utils.USE_BUTTON:
|
||||
def button_event(self, event: int, button: int) -> LayoutState | None:
|
||||
"""Receive a button event `event` for button `button`."""
|
||||
if utils.USE_BLE:
|
||||
def ble_event(self, event: int, data: bytes) -> LayoutState | None:
|
||||
"""Receive a BLE events."""
|
||||
def progress_event(self, value: int, description: str) -> LayoutState | None:
|
||||
"""Receive a progress event."""
|
||||
def usb_event(self, connected: bool) -> LayoutState | None:
|
||||
|
6
core/src/all_modules.py
generated
6
core/src/all_modules.py
generated
@ -33,6 +33,8 @@ from trezor import utils
|
||||
|
||||
all_modules
|
||||
import all_modules
|
||||
bluetooth
|
||||
import bluetooth
|
||||
boot
|
||||
import boot
|
||||
main
|
||||
@ -367,6 +369,10 @@ apps.management.authenticate_device
|
||||
import apps.management.authenticate_device
|
||||
apps.management.backup_device
|
||||
import apps.management.backup_device
|
||||
apps.management.ble.disconnect
|
||||
import apps.management.ble.disconnect
|
||||
apps.management.ble.erase_bonds
|
||||
import apps.management.ble.erase_bonds
|
||||
apps.management.change_language
|
||||
import apps.management.change_language
|
||||
apps.management.change_pin
|
||||
|
21
core/src/apps/management/ble/disconnect.py
Normal file
21
core/src/apps/management/ble/disconnect.py
Normal file
@ -0,0 +1,21 @@
|
||||
from trezorio import ble
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from trezor.messages import Disconnect, Success
|
||||
|
||||
|
||||
async def disconnect(_msg: Disconnect) -> Success:
|
||||
from trezor.messages import Success
|
||||
from trezor.ui.layouts import confirm_action
|
||||
from trezor.wire.context import get_context
|
||||
|
||||
await confirm_action("disconnect", "DISCONNECT")
|
||||
|
||||
ctx = get_context()
|
||||
|
||||
await ctx.write(Success(message="Erasing"))
|
||||
|
||||
ble.disconnect()
|
||||
|
||||
raise RuntimeError
|
21
core/src/apps/management/ble/erase_bonds.py
Normal file
21
core/src/apps/management/ble/erase_bonds.py
Normal file
@ -0,0 +1,21 @@
|
||||
from trezorio import ble
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from trezor.messages import EraseBonds, Success
|
||||
|
||||
|
||||
async def erase_bonds(_msg: EraseBonds) -> Success:
|
||||
from trezor.messages import Success
|
||||
from trezor.ui.layouts import confirm_action
|
||||
from trezor.wire.context import get_context
|
||||
|
||||
await confirm_action("erase bonds", "ERASE BONDS")
|
||||
|
||||
ctx = get_context()
|
||||
|
||||
await ctx.write(Success(message="Erasing"))
|
||||
|
||||
ble.erase_bonds()
|
||||
|
||||
raise RuntimeError
|
@ -76,6 +76,12 @@ def _find_message_handler_module(msg_type: int) -> str:
|
||||
if utils.USE_OPTIGA and msg_type == MessageType.AuthenticateDevice:
|
||||
return "apps.management.authenticate_device"
|
||||
|
||||
if utils.USE_BLE:
|
||||
if msg_type == MessageType.EraseBonds:
|
||||
return "apps.management.ble.erase_bonds"
|
||||
if msg_type == MessageType.Disconnect:
|
||||
return "apps.management.ble.disconnect"
|
||||
|
||||
# bitcoin
|
||||
if msg_type == MessageType.AuthorizeCoinJoin:
|
||||
return "apps.bitcoin.authorize_coinjoin"
|
||||
|
20
core/src/bluetooth.py
Normal file
20
core/src/bluetooth.py
Normal file
@ -0,0 +1,20 @@
|
||||
from trezorio import BLE, ble
|
||||
|
||||
|
||||
class BleInterface:
|
||||
|
||||
RX_PACKET_LEN = ble.RX_PACKET_LEN
|
||||
TX_PACKET_LEN = ble.TX_PACKET_LEN
|
||||
|
||||
def iface_num(self) -> int:
|
||||
return BLE
|
||||
|
||||
def write(self, msg: bytes) -> int:
|
||||
return ble.write(msg)
|
||||
|
||||
def read(self, buffer: bytearray, offset: int = 0) -> int:
|
||||
return ble.read(buffer, offset)
|
||||
|
||||
|
||||
# interface used for trezor wire protocol
|
||||
iface_ble = BleInterface()
|
@ -49,6 +49,13 @@ import storage.device
|
||||
|
||||
usb.bus.open(storage.device.get_device_id())
|
||||
|
||||
if utils.USE_BLE:
|
||||
from trezorio import ble
|
||||
ble.start_comm()
|
||||
if ble.peer_count() > 0:
|
||||
ble.start_advertising(True, storage.device.get_label())
|
||||
|
||||
|
||||
# run the endless loop
|
||||
while True:
|
||||
with unimport_manager:
|
||||
|
@ -1,9 +1,15 @@
|
||||
# isort: skip_file
|
||||
from micropython import const
|
||||
|
||||
from trezor import log, loop, utils, wire, workflow
|
||||
|
||||
import apps.base
|
||||
import usb
|
||||
|
||||
_PROTOBUF_BUFFER_SIZE = const(8192)
|
||||
WIRE_BUFFER = bytearray(_PROTOBUF_BUFFER_SIZE)
|
||||
|
||||
|
||||
apps.base.boot()
|
||||
|
||||
if not utils.BITCOIN_ONLY and usb.ENABLE_IFACE_WEBAUTHN:
|
||||
@ -16,12 +22,22 @@ if __debug__:
|
||||
|
||||
apps.debug.boot()
|
||||
|
||||
|
||||
# run main event loop and specify which screen is the default
|
||||
apps.base.set_homescreen()
|
||||
workflow.start_default()
|
||||
|
||||
|
||||
# initialize the wire codec
|
||||
wire.setup(usb.iface_wire)
|
||||
wire.setup(usb.iface_wire, WIRE_BUFFER)
|
||||
|
||||
if utils.USE_BLE:
|
||||
import bluetooth
|
||||
|
||||
BLE_BUFFER = bytearray(_PROTOBUF_BUFFER_SIZE)
|
||||
|
||||
wire.setup(bluetooth.iface_ble, BLE_BUFFER)
|
||||
|
||||
|
||||
# start the event loop
|
||||
loop.run()
|
||||
|
1
core/src/trezor/enums/FailureType.py
generated
1
core/src/trezor/enums/FailureType.py
generated
@ -16,4 +16,5 @@ NotInitialized = 11
|
||||
PinMismatch = 12
|
||||
WipeCodeMismatch = 13
|
||||
InvalidSession = 14
|
||||
DeviceIsBusy = 15
|
||||
FirmwareError = 99
|
||||
|
2
core/src/trezor/enums/MessageType.py
generated
2
core/src/trezor/enums/MessageType.py
generated
@ -60,6 +60,8 @@ FirmwareErase = 6
|
||||
FirmwareUpload = 7
|
||||
FirmwareRequest = 8
|
||||
ProdTestT1 = 32
|
||||
EraseBonds = 8006
|
||||
Disconnect = 8007
|
||||
GetPublicKey = 11
|
||||
PublicKey = 12
|
||||
SignTx = 15
|
||||
|
3
core/src/trezor/enums/__init__.py
generated
3
core/src/trezor/enums/__init__.py
generated
@ -39,6 +39,7 @@ if TYPE_CHECKING:
|
||||
PinMismatch = 12
|
||||
WipeCodeMismatch = 13
|
||||
InvalidSession = 14
|
||||
DeviceIsBusy = 15
|
||||
FirmwareError = 99
|
||||
|
||||
class ButtonRequestType(IntEnum):
|
||||
@ -409,6 +410,8 @@ if TYPE_CHECKING:
|
||||
FirmwareUpload = 7
|
||||
FirmwareRequest = 8
|
||||
ProdTestT1 = 32
|
||||
EraseBonds = 8006
|
||||
Disconnect = 8007
|
||||
GetPublicKey = 11
|
||||
PublicKey = 12
|
||||
SignTx = 15
|
||||
|
12
core/src/trezor/messages.py
generated
12
core/src/trezor/messages.py
generated
@ -1256,6 +1256,18 @@ if TYPE_CHECKING:
|
||||
def is_type_of(cls, msg: Any) -> TypeGuard["TxAckPrevExtraDataWrapper"]:
|
||||
return isinstance(msg, cls)
|
||||
|
||||
class EraseBonds(protobuf.MessageType):
|
||||
|
||||
@classmethod
|
||||
def is_type_of(cls, msg: Any) -> TypeGuard["EraseBonds"]:
|
||||
return isinstance(msg, cls)
|
||||
|
||||
class Disconnect(protobuf.MessageType):
|
||||
|
||||
@classmethod
|
||||
def is_type_of(cls, msg: Any) -> TypeGuard["Disconnect"]:
|
||||
return isinstance(msg, cls)
|
||||
|
||||
class CardanoBlockchainPointerType(protobuf.MessageType):
|
||||
block_index: "int"
|
||||
tx_index: "int"
|
||||
|
@ -381,6 +381,8 @@ class Layout(Generic[T]):
|
||||
yield self._handle_input_iface(io.BUTTON, self.layout.button_event)
|
||||
if utils.USE_TOUCH:
|
||||
yield self._handle_input_iface(io.TOUCH, self.layout.touch_event)
|
||||
if utils.USE_BLE:
|
||||
yield self._handle_input_iface(io.BLE_EVENT, self.layout.ble_event)
|
||||
|
||||
def _handle_input_iface(
|
||||
self, iface: int, event_call: Callable[..., LayoutState | None]
|
||||
|
@ -23,7 +23,6 @@ reads the message's header. When the message type is known the first handler is
|
||||
|
||||
"""
|
||||
|
||||
from micropython import const
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
from trezor import log, loop, protobuf, utils
|
||||
@ -37,10 +36,6 @@ from .message_handler import failure
|
||||
# other packages.
|
||||
from .errors import * # isort:skip # noqa: F401,F403
|
||||
|
||||
_PROTOBUF_BUFFER_SIZE = const(8192)
|
||||
|
||||
WIRE_BUFFER = bytearray(_PROTOBUF_BUFFER_SIZE)
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from trezorio import WireInterface
|
||||
from typing import Any, Callable, Coroutine, TypeVar
|
||||
@ -52,13 +47,13 @@ if TYPE_CHECKING:
|
||||
LoadedMessageType = TypeVar("LoadedMessageType", bound=protobuf.MessageType)
|
||||
|
||||
|
||||
def setup(iface: WireInterface) -> None:
|
||||
def setup(iface: WireInterface, buffer: bytearray) -> None:
|
||||
"""Initialize the wire stack on the provided WireInterface."""
|
||||
loop.schedule(handle_session(iface))
|
||||
loop.schedule(handle_session(iface, buffer))
|
||||
|
||||
|
||||
async def handle_session(iface: WireInterface) -> None:
|
||||
ctx = CodecContext(iface, WIRE_BUFFER)
|
||||
async def handle_session(iface: WireInterface, buffer: bytearray) -> None:
|
||||
ctx = CodecContext(iface, buffer)
|
||||
next_msg: protocol_common.Message | None = None
|
||||
|
||||
# Take a mark of modules that are imported at this point, so we can
|
||||
|
11
python/src/trezorlib/messages.py
generated
11
python/src/trezorlib/messages.py
generated
@ -43,6 +43,7 @@ class FailureType(IntEnum):
|
||||
PinMismatch = 12
|
||||
WipeCodeMismatch = 13
|
||||
InvalidSession = 14
|
||||
DeviceIsBusy = 15
|
||||
FirmwareError = 99
|
||||
|
||||
|
||||
@ -462,6 +463,8 @@ class MessageType(IntEnum):
|
||||
FirmwareUpload = 7
|
||||
FirmwareRequest = 8
|
||||
ProdTestT1 = 32
|
||||
EraseBonds = 8006
|
||||
Disconnect = 8007
|
||||
GetPublicKey = 11
|
||||
PublicKey = 12
|
||||
SignTx = 15
|
||||
@ -2207,6 +2210,14 @@ class TxAckPrevExtraDataWrapper(protobuf.MessageType):
|
||||
self.extra_data_chunk = extra_data_chunk
|
||||
|
||||
|
||||
class EraseBonds(protobuf.MessageType):
|
||||
MESSAGE_WIRE_TYPE = 8006
|
||||
|
||||
|
||||
class Disconnect(protobuf.MessageType):
|
||||
MESSAGE_WIRE_TYPE = 8007
|
||||
|
||||
|
||||
class FirmwareErase(protobuf.MessageType):
|
||||
MESSAGE_WIRE_TYPE = 6
|
||||
FIELDS = {
|
||||
|
2
rust/trezor-client/src/messages/generated.rs
generated
2
rust/trezor-client/src/messages/generated.rs
generated
@ -60,6 +60,8 @@ trezor_message_impl! {
|
||||
FirmwareUpload => MessageType_FirmwareUpload,
|
||||
FirmwareRequest => MessageType_FirmwareRequest,
|
||||
ProdTestT1 => MessageType_ProdTestT1,
|
||||
EraseBonds => MessageType_EraseBonds,
|
||||
Disconnect => MessageType_Disconnect,
|
||||
CipherKeyValue => MessageType_CipherKeyValue,
|
||||
CipheredKeyValue => MessageType_CipheredKeyValue,
|
||||
SignIdentity => MessageType_SignIdentity,
|
||||
|
458
rust/trezor-client/src/protos/generated/messages.rs
generated
458
rust/trezor-client/src/protos/generated/messages.rs
generated
@ -150,6 +150,10 @@ pub enum MessageType {
|
||||
MessageType_FirmwareRequest = 8,
|
||||
// @@protoc_insertion_point(enum_value:hw.trezor.messages.MessageType.MessageType_ProdTestT1)
|
||||
MessageType_ProdTestT1 = 32,
|
||||
// @@protoc_insertion_point(enum_value:hw.trezor.messages.MessageType.MessageType_EraseBonds)
|
||||
MessageType_EraseBonds = 8006,
|
||||
// @@protoc_insertion_point(enum_value:hw.trezor.messages.MessageType.MessageType_Disconnect)
|
||||
MessageType_Disconnect = 8007,
|
||||
// @@protoc_insertion_point(enum_value:hw.trezor.messages.MessageType.MessageType_GetPublicKey)
|
||||
MessageType_GetPublicKey = 11,
|
||||
// @@protoc_insertion_point(enum_value:hw.trezor.messages.MessageType.MessageType_PublicKey)
|
||||
@ -602,6 +606,8 @@ impl ::protobuf::Enum for MessageType {
|
||||
7 => ::std::option::Option::Some(MessageType::MessageType_FirmwareUpload),
|
||||
8 => ::std::option::Option::Some(MessageType::MessageType_FirmwareRequest),
|
||||
32 => ::std::option::Option::Some(MessageType::MessageType_ProdTestT1),
|
||||
8006 => ::std::option::Option::Some(MessageType::MessageType_EraseBonds),
|
||||
8007 => ::std::option::Option::Some(MessageType::MessageType_Disconnect),
|
||||
11 => ::std::option::Option::Some(MessageType::MessageType_GetPublicKey),
|
||||
12 => ::std::option::Option::Some(MessageType::MessageType_PublicKey),
|
||||
15 => ::std::option::Option::Some(MessageType::MessageType_SignTx),
|
||||
@ -859,6 +865,8 @@ impl ::protobuf::Enum for MessageType {
|
||||
"MessageType_FirmwareUpload" => ::std::option::Option::Some(MessageType::MessageType_FirmwareUpload),
|
||||
"MessageType_FirmwareRequest" => ::std::option::Option::Some(MessageType::MessageType_FirmwareRequest),
|
||||
"MessageType_ProdTestT1" => ::std::option::Option::Some(MessageType::MessageType_ProdTestT1),
|
||||
"MessageType_EraseBonds" => ::std::option::Option::Some(MessageType::MessageType_EraseBonds),
|
||||
"MessageType_Disconnect" => ::std::option::Option::Some(MessageType::MessageType_Disconnect),
|
||||
"MessageType_GetPublicKey" => ::std::option::Option::Some(MessageType::MessageType_GetPublicKey),
|
||||
"MessageType_PublicKey" => ::std::option::Option::Some(MessageType::MessageType_PublicKey),
|
||||
"MessageType_SignTx" => ::std::option::Option::Some(MessageType::MessageType_SignTx),
|
||||
@ -1115,6 +1123,8 @@ impl ::protobuf::Enum for MessageType {
|
||||
MessageType::MessageType_FirmwareUpload,
|
||||
MessageType::MessageType_FirmwareRequest,
|
||||
MessageType::MessageType_ProdTestT1,
|
||||
MessageType::MessageType_EraseBonds,
|
||||
MessageType::MessageType_Disconnect,
|
||||
MessageType::MessageType_GetPublicKey,
|
||||
MessageType::MessageType_PublicKey,
|
||||
MessageType::MessageType_SignTx,
|
||||
@ -1377,196 +1387,198 @@ impl ::protobuf::EnumFull for MessageType {
|
||||
MessageType::MessageType_FirmwareUpload => 58,
|
||||
MessageType::MessageType_FirmwareRequest => 59,
|
||||
MessageType::MessageType_ProdTestT1 => 60,
|
||||
MessageType::MessageType_GetPublicKey => 61,
|
||||
MessageType::MessageType_PublicKey => 62,
|
||||
MessageType::MessageType_SignTx => 63,
|
||||
MessageType::MessageType_TxRequest => 64,
|
||||
MessageType::MessageType_TxAck => 65,
|
||||
MessageType::MessageType_GetAddress => 66,
|
||||
MessageType::MessageType_Address => 67,
|
||||
MessageType::MessageType_TxAckPaymentRequest => 68,
|
||||
MessageType::MessageType_SignMessage => 69,
|
||||
MessageType::MessageType_VerifyMessage => 70,
|
||||
MessageType::MessageType_MessageSignature => 71,
|
||||
MessageType::MessageType_GetOwnershipId => 72,
|
||||
MessageType::MessageType_OwnershipId => 73,
|
||||
MessageType::MessageType_GetOwnershipProof => 74,
|
||||
MessageType::MessageType_OwnershipProof => 75,
|
||||
MessageType::MessageType_AuthorizeCoinJoin => 76,
|
||||
MessageType::MessageType_CipherKeyValue => 77,
|
||||
MessageType::MessageType_CipheredKeyValue => 78,
|
||||
MessageType::MessageType_SignIdentity => 79,
|
||||
MessageType::MessageType_SignedIdentity => 80,
|
||||
MessageType::MessageType_GetECDHSessionKey => 81,
|
||||
MessageType::MessageType_ECDHSessionKey => 82,
|
||||
MessageType::MessageType_DebugLinkDecision => 83,
|
||||
MessageType::MessageType_DebugLinkGetState => 84,
|
||||
MessageType::MessageType_DebugLinkState => 85,
|
||||
MessageType::MessageType_DebugLinkStop => 86,
|
||||
MessageType::MessageType_DebugLinkLog => 87,
|
||||
MessageType::MessageType_DebugLinkMemoryRead => 88,
|
||||
MessageType::MessageType_DebugLinkMemory => 89,
|
||||
MessageType::MessageType_DebugLinkMemoryWrite => 90,
|
||||
MessageType::MessageType_DebugLinkFlashErase => 91,
|
||||
MessageType::MessageType_DebugLinkLayout => 92,
|
||||
MessageType::MessageType_DebugLinkReseedRandom => 93,
|
||||
MessageType::MessageType_DebugLinkRecordScreen => 94,
|
||||
MessageType::MessageType_DebugLinkEraseSdCard => 95,
|
||||
MessageType::MessageType_DebugLinkWatchLayout => 96,
|
||||
MessageType::MessageType_DebugLinkResetDebugEvents => 97,
|
||||
MessageType::MessageType_DebugLinkOptigaSetSecMax => 98,
|
||||
MessageType::MessageType_EthereumGetPublicKey => 99,
|
||||
MessageType::MessageType_EthereumPublicKey => 100,
|
||||
MessageType::MessageType_EthereumGetAddress => 101,
|
||||
MessageType::MessageType_EthereumAddress => 102,
|
||||
MessageType::MessageType_EthereumSignTx => 103,
|
||||
MessageType::MessageType_EthereumSignTxEIP1559 => 104,
|
||||
MessageType::MessageType_EthereumTxRequest => 105,
|
||||
MessageType::MessageType_EthereumTxAck => 106,
|
||||
MessageType::MessageType_EthereumSignMessage => 107,
|
||||
MessageType::MessageType_EthereumVerifyMessage => 108,
|
||||
MessageType::MessageType_EthereumMessageSignature => 109,
|
||||
MessageType::MessageType_EthereumSignTypedData => 110,
|
||||
MessageType::MessageType_EthereumTypedDataStructRequest => 111,
|
||||
MessageType::MessageType_EthereumTypedDataStructAck => 112,
|
||||
MessageType::MessageType_EthereumTypedDataValueRequest => 113,
|
||||
MessageType::MessageType_EthereumTypedDataValueAck => 114,
|
||||
MessageType::MessageType_EthereumTypedDataSignature => 115,
|
||||
MessageType::MessageType_EthereumSignTypedHash => 116,
|
||||
MessageType::MessageType_NEMGetAddress => 117,
|
||||
MessageType::MessageType_NEMAddress => 118,
|
||||
MessageType::MessageType_NEMSignTx => 119,
|
||||
MessageType::MessageType_NEMSignedTx => 120,
|
||||
MessageType::MessageType_NEMDecryptMessage => 121,
|
||||
MessageType::MessageType_NEMDecryptedMessage => 122,
|
||||
MessageType::MessageType_TezosGetAddress => 123,
|
||||
MessageType::MessageType_TezosAddress => 124,
|
||||
MessageType::MessageType_TezosSignTx => 125,
|
||||
MessageType::MessageType_TezosSignedTx => 126,
|
||||
MessageType::MessageType_TezosGetPublicKey => 127,
|
||||
MessageType::MessageType_TezosPublicKey => 128,
|
||||
MessageType::MessageType_StellarSignTx => 129,
|
||||
MessageType::MessageType_StellarTxOpRequest => 130,
|
||||
MessageType::MessageType_StellarGetAddress => 131,
|
||||
MessageType::MessageType_StellarAddress => 132,
|
||||
MessageType::MessageType_StellarCreateAccountOp => 133,
|
||||
MessageType::MessageType_StellarPaymentOp => 134,
|
||||
MessageType::MessageType_StellarPathPaymentStrictReceiveOp => 135,
|
||||
MessageType::MessageType_StellarManageSellOfferOp => 136,
|
||||
MessageType::MessageType_StellarCreatePassiveSellOfferOp => 137,
|
||||
MessageType::MessageType_StellarSetOptionsOp => 138,
|
||||
MessageType::MessageType_StellarChangeTrustOp => 139,
|
||||
MessageType::MessageType_StellarAllowTrustOp => 140,
|
||||
MessageType::MessageType_StellarAccountMergeOp => 141,
|
||||
MessageType::MessageType_StellarManageDataOp => 142,
|
||||
MessageType::MessageType_StellarBumpSequenceOp => 143,
|
||||
MessageType::MessageType_StellarManageBuyOfferOp => 144,
|
||||
MessageType::MessageType_StellarPathPaymentStrictSendOp => 145,
|
||||
MessageType::MessageType_StellarClaimClaimableBalanceOp => 146,
|
||||
MessageType::MessageType_StellarSignedTx => 147,
|
||||
MessageType::MessageType_CardanoGetPublicKey => 148,
|
||||
MessageType::MessageType_CardanoPublicKey => 149,
|
||||
MessageType::MessageType_CardanoGetAddress => 150,
|
||||
MessageType::MessageType_CardanoAddress => 151,
|
||||
MessageType::MessageType_CardanoTxItemAck => 152,
|
||||
MessageType::MessageType_CardanoTxAuxiliaryDataSupplement => 153,
|
||||
MessageType::MessageType_CardanoTxWitnessRequest => 154,
|
||||
MessageType::MessageType_CardanoTxWitnessResponse => 155,
|
||||
MessageType::MessageType_CardanoTxHostAck => 156,
|
||||
MessageType::MessageType_CardanoTxBodyHash => 157,
|
||||
MessageType::MessageType_CardanoSignTxFinished => 158,
|
||||
MessageType::MessageType_CardanoSignTxInit => 159,
|
||||
MessageType::MessageType_CardanoTxInput => 160,
|
||||
MessageType::MessageType_CardanoTxOutput => 161,
|
||||
MessageType::MessageType_CardanoAssetGroup => 162,
|
||||
MessageType::MessageType_CardanoToken => 163,
|
||||
MessageType::MessageType_CardanoTxCertificate => 164,
|
||||
MessageType::MessageType_CardanoTxWithdrawal => 165,
|
||||
MessageType::MessageType_CardanoTxAuxiliaryData => 166,
|
||||
MessageType::MessageType_CardanoPoolOwner => 167,
|
||||
MessageType::MessageType_CardanoPoolRelayParameters => 168,
|
||||
MessageType::MessageType_CardanoGetNativeScriptHash => 169,
|
||||
MessageType::MessageType_CardanoNativeScriptHash => 170,
|
||||
MessageType::MessageType_CardanoTxMint => 171,
|
||||
MessageType::MessageType_CardanoTxCollateralInput => 172,
|
||||
MessageType::MessageType_CardanoTxRequiredSigner => 173,
|
||||
MessageType::MessageType_CardanoTxInlineDatumChunk => 174,
|
||||
MessageType::MessageType_CardanoTxReferenceScriptChunk => 175,
|
||||
MessageType::MessageType_CardanoTxReferenceInput => 176,
|
||||
MessageType::MessageType_RippleGetAddress => 177,
|
||||
MessageType::MessageType_RippleAddress => 178,
|
||||
MessageType::MessageType_RippleSignTx => 179,
|
||||
MessageType::MessageType_RippleSignedTx => 180,
|
||||
MessageType::MessageType_MoneroTransactionInitRequest => 181,
|
||||
MessageType::MessageType_MoneroTransactionInitAck => 182,
|
||||
MessageType::MessageType_MoneroTransactionSetInputRequest => 183,
|
||||
MessageType::MessageType_MoneroTransactionSetInputAck => 184,
|
||||
MessageType::MessageType_MoneroTransactionInputViniRequest => 185,
|
||||
MessageType::MessageType_MoneroTransactionInputViniAck => 186,
|
||||
MessageType::MessageType_MoneroTransactionAllInputsSetRequest => 187,
|
||||
MessageType::MessageType_MoneroTransactionAllInputsSetAck => 188,
|
||||
MessageType::MessageType_MoneroTransactionSetOutputRequest => 189,
|
||||
MessageType::MessageType_MoneroTransactionSetOutputAck => 190,
|
||||
MessageType::MessageType_MoneroTransactionAllOutSetRequest => 191,
|
||||
MessageType::MessageType_MoneroTransactionAllOutSetAck => 192,
|
||||
MessageType::MessageType_MoneroTransactionSignInputRequest => 193,
|
||||
MessageType::MessageType_MoneroTransactionSignInputAck => 194,
|
||||
MessageType::MessageType_MoneroTransactionFinalRequest => 195,
|
||||
MessageType::MessageType_MoneroTransactionFinalAck => 196,
|
||||
MessageType::MessageType_MoneroKeyImageExportInitRequest => 197,
|
||||
MessageType::MessageType_MoneroKeyImageExportInitAck => 198,
|
||||
MessageType::MessageType_MoneroKeyImageSyncStepRequest => 199,
|
||||
MessageType::MessageType_MoneroKeyImageSyncStepAck => 200,
|
||||
MessageType::MessageType_MoneroKeyImageSyncFinalRequest => 201,
|
||||
MessageType::MessageType_MoneroKeyImageSyncFinalAck => 202,
|
||||
MessageType::MessageType_MoneroGetAddress => 203,
|
||||
MessageType::MessageType_MoneroAddress => 204,
|
||||
MessageType::MessageType_MoneroGetWatchKey => 205,
|
||||
MessageType::MessageType_MoneroWatchKey => 206,
|
||||
MessageType::MessageType_DebugMoneroDiagRequest => 207,
|
||||
MessageType::MessageType_DebugMoneroDiagAck => 208,
|
||||
MessageType::MessageType_MoneroGetTxKeyRequest => 209,
|
||||
MessageType::MessageType_MoneroGetTxKeyAck => 210,
|
||||
MessageType::MessageType_MoneroLiveRefreshStartRequest => 211,
|
||||
MessageType::MessageType_MoneroLiveRefreshStartAck => 212,
|
||||
MessageType::MessageType_MoneroLiveRefreshStepRequest => 213,
|
||||
MessageType::MessageType_MoneroLiveRefreshStepAck => 214,
|
||||
MessageType::MessageType_MoneroLiveRefreshFinalRequest => 215,
|
||||
MessageType::MessageType_MoneroLiveRefreshFinalAck => 216,
|
||||
MessageType::MessageType_EosGetPublicKey => 217,
|
||||
MessageType::MessageType_EosPublicKey => 218,
|
||||
MessageType::MessageType_EosSignTx => 219,
|
||||
MessageType::MessageType_EosTxActionRequest => 220,
|
||||
MessageType::MessageType_EosTxActionAck => 221,
|
||||
MessageType::MessageType_EosSignedTx => 222,
|
||||
MessageType::MessageType_BinanceGetAddress => 223,
|
||||
MessageType::MessageType_BinanceAddress => 224,
|
||||
MessageType::MessageType_BinanceGetPublicKey => 225,
|
||||
MessageType::MessageType_BinancePublicKey => 226,
|
||||
MessageType::MessageType_BinanceSignTx => 227,
|
||||
MessageType::MessageType_BinanceTxRequest => 228,
|
||||
MessageType::MessageType_BinanceTransferMsg => 229,
|
||||
MessageType::MessageType_BinanceOrderMsg => 230,
|
||||
MessageType::MessageType_BinanceCancelMsg => 231,
|
||||
MessageType::MessageType_BinanceSignedTx => 232,
|
||||
MessageType::MessageType_WebAuthnListResidentCredentials => 233,
|
||||
MessageType::MessageType_WebAuthnCredentials => 234,
|
||||
MessageType::MessageType_WebAuthnAddResidentCredential => 235,
|
||||
MessageType::MessageType_WebAuthnRemoveResidentCredential => 236,
|
||||
MessageType::MessageType_SolanaGetPublicKey => 237,
|
||||
MessageType::MessageType_SolanaPublicKey => 238,
|
||||
MessageType::MessageType_SolanaGetAddress => 239,
|
||||
MessageType::MessageType_SolanaAddress => 240,
|
||||
MessageType::MessageType_SolanaSignTx => 241,
|
||||
MessageType::MessageType_SolanaTxSignature => 242,
|
||||
MessageType::MessageType_NostrGetPubkey => 243,
|
||||
MessageType::MessageType_NostrPubkey => 244,
|
||||
MessageType::MessageType_NostrSignEvent => 245,
|
||||
MessageType::MessageType_NostrEventSignature => 246,
|
||||
MessageType::MessageType_BenchmarkListNames => 247,
|
||||
MessageType::MessageType_BenchmarkNames => 248,
|
||||
MessageType::MessageType_BenchmarkRun => 249,
|
||||
MessageType::MessageType_BenchmarkResult => 250,
|
||||
MessageType::MessageType_EraseBonds => 61,
|
||||
MessageType::MessageType_Disconnect => 62,
|
||||
MessageType::MessageType_GetPublicKey => 63,
|
||||
MessageType::MessageType_PublicKey => 64,
|
||||
MessageType::MessageType_SignTx => 65,
|
||||
MessageType::MessageType_TxRequest => 66,
|
||||
MessageType::MessageType_TxAck => 67,
|
||||
MessageType::MessageType_GetAddress => 68,
|
||||
MessageType::MessageType_Address => 69,
|
||||
MessageType::MessageType_TxAckPaymentRequest => 70,
|
||||
MessageType::MessageType_SignMessage => 71,
|
||||
MessageType::MessageType_VerifyMessage => 72,
|
||||
MessageType::MessageType_MessageSignature => 73,
|
||||
MessageType::MessageType_GetOwnershipId => 74,
|
||||
MessageType::MessageType_OwnershipId => 75,
|
||||
MessageType::MessageType_GetOwnershipProof => 76,
|
||||
MessageType::MessageType_OwnershipProof => 77,
|
||||
MessageType::MessageType_AuthorizeCoinJoin => 78,
|
||||
MessageType::MessageType_CipherKeyValue => 79,
|
||||
MessageType::MessageType_CipheredKeyValue => 80,
|
||||
MessageType::MessageType_SignIdentity => 81,
|
||||
MessageType::MessageType_SignedIdentity => 82,
|
||||
MessageType::MessageType_GetECDHSessionKey => 83,
|
||||
MessageType::MessageType_ECDHSessionKey => 84,
|
||||
MessageType::MessageType_DebugLinkDecision => 85,
|
||||
MessageType::MessageType_DebugLinkGetState => 86,
|
||||
MessageType::MessageType_DebugLinkState => 87,
|
||||
MessageType::MessageType_DebugLinkStop => 88,
|
||||
MessageType::MessageType_DebugLinkLog => 89,
|
||||
MessageType::MessageType_DebugLinkMemoryRead => 90,
|
||||
MessageType::MessageType_DebugLinkMemory => 91,
|
||||
MessageType::MessageType_DebugLinkMemoryWrite => 92,
|
||||
MessageType::MessageType_DebugLinkFlashErase => 93,
|
||||
MessageType::MessageType_DebugLinkLayout => 94,
|
||||
MessageType::MessageType_DebugLinkReseedRandom => 95,
|
||||
MessageType::MessageType_DebugLinkRecordScreen => 96,
|
||||
MessageType::MessageType_DebugLinkEraseSdCard => 97,
|
||||
MessageType::MessageType_DebugLinkWatchLayout => 98,
|
||||
MessageType::MessageType_DebugLinkResetDebugEvents => 99,
|
||||
MessageType::MessageType_DebugLinkOptigaSetSecMax => 100,
|
||||
MessageType::MessageType_EthereumGetPublicKey => 101,
|
||||
MessageType::MessageType_EthereumPublicKey => 102,
|
||||
MessageType::MessageType_EthereumGetAddress => 103,
|
||||
MessageType::MessageType_EthereumAddress => 104,
|
||||
MessageType::MessageType_EthereumSignTx => 105,
|
||||
MessageType::MessageType_EthereumSignTxEIP1559 => 106,
|
||||
MessageType::MessageType_EthereumTxRequest => 107,
|
||||
MessageType::MessageType_EthereumTxAck => 108,
|
||||
MessageType::MessageType_EthereumSignMessage => 109,
|
||||
MessageType::MessageType_EthereumVerifyMessage => 110,
|
||||
MessageType::MessageType_EthereumMessageSignature => 111,
|
||||
MessageType::MessageType_EthereumSignTypedData => 112,
|
||||
MessageType::MessageType_EthereumTypedDataStructRequest => 113,
|
||||
MessageType::MessageType_EthereumTypedDataStructAck => 114,
|
||||
MessageType::MessageType_EthereumTypedDataValueRequest => 115,
|
||||
MessageType::MessageType_EthereumTypedDataValueAck => 116,
|
||||
MessageType::MessageType_EthereumTypedDataSignature => 117,
|
||||
MessageType::MessageType_EthereumSignTypedHash => 118,
|
||||
MessageType::MessageType_NEMGetAddress => 119,
|
||||
MessageType::MessageType_NEMAddress => 120,
|
||||
MessageType::MessageType_NEMSignTx => 121,
|
||||
MessageType::MessageType_NEMSignedTx => 122,
|
||||
MessageType::MessageType_NEMDecryptMessage => 123,
|
||||
MessageType::MessageType_NEMDecryptedMessage => 124,
|
||||
MessageType::MessageType_TezosGetAddress => 125,
|
||||
MessageType::MessageType_TezosAddress => 126,
|
||||
MessageType::MessageType_TezosSignTx => 127,
|
||||
MessageType::MessageType_TezosSignedTx => 128,
|
||||
MessageType::MessageType_TezosGetPublicKey => 129,
|
||||
MessageType::MessageType_TezosPublicKey => 130,
|
||||
MessageType::MessageType_StellarSignTx => 131,
|
||||
MessageType::MessageType_StellarTxOpRequest => 132,
|
||||
MessageType::MessageType_StellarGetAddress => 133,
|
||||
MessageType::MessageType_StellarAddress => 134,
|
||||
MessageType::MessageType_StellarCreateAccountOp => 135,
|
||||
MessageType::MessageType_StellarPaymentOp => 136,
|
||||
MessageType::MessageType_StellarPathPaymentStrictReceiveOp => 137,
|
||||
MessageType::MessageType_StellarManageSellOfferOp => 138,
|
||||
MessageType::MessageType_StellarCreatePassiveSellOfferOp => 139,
|
||||
MessageType::MessageType_StellarSetOptionsOp => 140,
|
||||
MessageType::MessageType_StellarChangeTrustOp => 141,
|
||||
MessageType::MessageType_StellarAllowTrustOp => 142,
|
||||
MessageType::MessageType_StellarAccountMergeOp => 143,
|
||||
MessageType::MessageType_StellarManageDataOp => 144,
|
||||
MessageType::MessageType_StellarBumpSequenceOp => 145,
|
||||
MessageType::MessageType_StellarManageBuyOfferOp => 146,
|
||||
MessageType::MessageType_StellarPathPaymentStrictSendOp => 147,
|
||||
MessageType::MessageType_StellarClaimClaimableBalanceOp => 148,
|
||||
MessageType::MessageType_StellarSignedTx => 149,
|
||||
MessageType::MessageType_CardanoGetPublicKey => 150,
|
||||
MessageType::MessageType_CardanoPublicKey => 151,
|
||||
MessageType::MessageType_CardanoGetAddress => 152,
|
||||
MessageType::MessageType_CardanoAddress => 153,
|
||||
MessageType::MessageType_CardanoTxItemAck => 154,
|
||||
MessageType::MessageType_CardanoTxAuxiliaryDataSupplement => 155,
|
||||
MessageType::MessageType_CardanoTxWitnessRequest => 156,
|
||||
MessageType::MessageType_CardanoTxWitnessResponse => 157,
|
||||
MessageType::MessageType_CardanoTxHostAck => 158,
|
||||
MessageType::MessageType_CardanoTxBodyHash => 159,
|
||||
MessageType::MessageType_CardanoSignTxFinished => 160,
|
||||
MessageType::MessageType_CardanoSignTxInit => 161,
|
||||
MessageType::MessageType_CardanoTxInput => 162,
|
||||
MessageType::MessageType_CardanoTxOutput => 163,
|
||||
MessageType::MessageType_CardanoAssetGroup => 164,
|
||||
MessageType::MessageType_CardanoToken => 165,
|
||||
MessageType::MessageType_CardanoTxCertificate => 166,
|
||||
MessageType::MessageType_CardanoTxWithdrawal => 167,
|
||||
MessageType::MessageType_CardanoTxAuxiliaryData => 168,
|
||||
MessageType::MessageType_CardanoPoolOwner => 169,
|
||||
MessageType::MessageType_CardanoPoolRelayParameters => 170,
|
||||
MessageType::MessageType_CardanoGetNativeScriptHash => 171,
|
||||
MessageType::MessageType_CardanoNativeScriptHash => 172,
|
||||
MessageType::MessageType_CardanoTxMint => 173,
|
||||
MessageType::MessageType_CardanoTxCollateralInput => 174,
|
||||
MessageType::MessageType_CardanoTxRequiredSigner => 175,
|
||||
MessageType::MessageType_CardanoTxInlineDatumChunk => 176,
|
||||
MessageType::MessageType_CardanoTxReferenceScriptChunk => 177,
|
||||
MessageType::MessageType_CardanoTxReferenceInput => 178,
|
||||
MessageType::MessageType_RippleGetAddress => 179,
|
||||
MessageType::MessageType_RippleAddress => 180,
|
||||
MessageType::MessageType_RippleSignTx => 181,
|
||||
MessageType::MessageType_RippleSignedTx => 182,
|
||||
MessageType::MessageType_MoneroTransactionInitRequest => 183,
|
||||
MessageType::MessageType_MoneroTransactionInitAck => 184,
|
||||
MessageType::MessageType_MoneroTransactionSetInputRequest => 185,
|
||||
MessageType::MessageType_MoneroTransactionSetInputAck => 186,
|
||||
MessageType::MessageType_MoneroTransactionInputViniRequest => 187,
|
||||
MessageType::MessageType_MoneroTransactionInputViniAck => 188,
|
||||
MessageType::MessageType_MoneroTransactionAllInputsSetRequest => 189,
|
||||
MessageType::MessageType_MoneroTransactionAllInputsSetAck => 190,
|
||||
MessageType::MessageType_MoneroTransactionSetOutputRequest => 191,
|
||||
MessageType::MessageType_MoneroTransactionSetOutputAck => 192,
|
||||
MessageType::MessageType_MoneroTransactionAllOutSetRequest => 193,
|
||||
MessageType::MessageType_MoneroTransactionAllOutSetAck => 194,
|
||||
MessageType::MessageType_MoneroTransactionSignInputRequest => 195,
|
||||
MessageType::MessageType_MoneroTransactionSignInputAck => 196,
|
||||
MessageType::MessageType_MoneroTransactionFinalRequest => 197,
|
||||
MessageType::MessageType_MoneroTransactionFinalAck => 198,
|
||||
MessageType::MessageType_MoneroKeyImageExportInitRequest => 199,
|
||||
MessageType::MessageType_MoneroKeyImageExportInitAck => 200,
|
||||
MessageType::MessageType_MoneroKeyImageSyncStepRequest => 201,
|
||||
MessageType::MessageType_MoneroKeyImageSyncStepAck => 202,
|
||||
MessageType::MessageType_MoneroKeyImageSyncFinalRequest => 203,
|
||||
MessageType::MessageType_MoneroKeyImageSyncFinalAck => 204,
|
||||
MessageType::MessageType_MoneroGetAddress => 205,
|
||||
MessageType::MessageType_MoneroAddress => 206,
|
||||
MessageType::MessageType_MoneroGetWatchKey => 207,
|
||||
MessageType::MessageType_MoneroWatchKey => 208,
|
||||
MessageType::MessageType_DebugMoneroDiagRequest => 209,
|
||||
MessageType::MessageType_DebugMoneroDiagAck => 210,
|
||||
MessageType::MessageType_MoneroGetTxKeyRequest => 211,
|
||||
MessageType::MessageType_MoneroGetTxKeyAck => 212,
|
||||
MessageType::MessageType_MoneroLiveRefreshStartRequest => 213,
|
||||
MessageType::MessageType_MoneroLiveRefreshStartAck => 214,
|
||||
MessageType::MessageType_MoneroLiveRefreshStepRequest => 215,
|
||||
MessageType::MessageType_MoneroLiveRefreshStepAck => 216,
|
||||
MessageType::MessageType_MoneroLiveRefreshFinalRequest => 217,
|
||||
MessageType::MessageType_MoneroLiveRefreshFinalAck => 218,
|
||||
MessageType::MessageType_EosGetPublicKey => 219,
|
||||
MessageType::MessageType_EosPublicKey => 220,
|
||||
MessageType::MessageType_EosSignTx => 221,
|
||||
MessageType::MessageType_EosTxActionRequest => 222,
|
||||
MessageType::MessageType_EosTxActionAck => 223,
|
||||
MessageType::MessageType_EosSignedTx => 224,
|
||||
MessageType::MessageType_BinanceGetAddress => 225,
|
||||
MessageType::MessageType_BinanceAddress => 226,
|
||||
MessageType::MessageType_BinanceGetPublicKey => 227,
|
||||
MessageType::MessageType_BinancePublicKey => 228,
|
||||
MessageType::MessageType_BinanceSignTx => 229,
|
||||
MessageType::MessageType_BinanceTxRequest => 230,
|
||||
MessageType::MessageType_BinanceTransferMsg => 231,
|
||||
MessageType::MessageType_BinanceOrderMsg => 232,
|
||||
MessageType::MessageType_BinanceCancelMsg => 233,
|
||||
MessageType::MessageType_BinanceSignedTx => 234,
|
||||
MessageType::MessageType_WebAuthnListResidentCredentials => 235,
|
||||
MessageType::MessageType_WebAuthnCredentials => 236,
|
||||
MessageType::MessageType_WebAuthnAddResidentCredential => 237,
|
||||
MessageType::MessageType_WebAuthnRemoveResidentCredential => 238,
|
||||
MessageType::MessageType_SolanaGetPublicKey => 239,
|
||||
MessageType::MessageType_SolanaPublicKey => 240,
|
||||
MessageType::MessageType_SolanaGetAddress => 241,
|
||||
MessageType::MessageType_SolanaAddress => 242,
|
||||
MessageType::MessageType_SolanaSignTx => 243,
|
||||
MessageType::MessageType_SolanaTxSignature => 244,
|
||||
MessageType::MessageType_NostrGetPubkey => 245,
|
||||
MessageType::MessageType_NostrPubkey => 246,
|
||||
MessageType::MessageType_NostrSignEvent => 247,
|
||||
MessageType::MessageType_NostrEventSignature => 248,
|
||||
MessageType::MessageType_BenchmarkListNames => 249,
|
||||
MessageType::MessageType_BenchmarkNames => 250,
|
||||
MessageType::MessageType_BenchmarkRun => 251,
|
||||
MessageType::MessageType_BenchmarkResult => 252,
|
||||
};
|
||||
Self::enum_descriptor().value_by_index(index)
|
||||
}
|
||||
@ -1585,7 +1597,7 @@ impl MessageType {
|
||||
}
|
||||
|
||||
static file_descriptor_proto_data: &'static [u8] = b"\
|
||||
\n\x0emessages.proto\x12\x12hw.trezor.messages\x1a\roptions.proto*\x86W\
|
||||
\n\x0emessages.proto\x12\x12hw.trezor.messages\x1a\roptions.proto*\xd4W\
|
||||
\n\x0bMessageType\x12(\n\x16MessageType_Initialize\x10\0\x1a\x0c\x80\xa6\
|
||||
\x1d\x01\xb0\xb5\x18\x01\x90\xb5\x18\x01\x12\x1e\n\x10MessageType_Ping\
|
||||
\x10\x01\x1a\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12%\n\x13MessageType_S\
|
||||
@ -1659,37 +1671,39 @@ static file_descriptor_proto_data: &'static [u8] = b"\
|
||||
\x18\x01\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12-\n\x1bMessageType_FirmwareR\
|
||||
equest\x10\x08\x1a\x0c\xb8\xb5\x18\x01\x80\xa6\x1d\x01\x98\xb5\x18\x01\
|
||||
\x12(\n\x16MessageType_ProdTestT1\x10\x20\x1a\x0c\xb8\xb5\x18\x01\x80\
|
||||
\xa6\x1d\x01\x90\xb5\x18\x01\x12&\n\x18MessageType_GetPublicKey\x10\x0b\
|
||||
\x1a\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12#\n\x15MessageType_PublicKey\
|
||||
\x10\x0c\x1a\x08\x80\xa6\x1d\x01\x98\xb5\x18\x01\x12\x20\n\x12MessageTyp\
|
||||
e_SignTx\x10\x0f\x1a\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12#\n\x15Messa\
|
||||
geType_TxRequest\x10\x15\x1a\x08\x80\xa6\x1d\x01\x98\xb5\x18\x01\x12\x1f\
|
||||
\n\x11MessageType_TxAck\x10\x16\x1a\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\
|
||||
\x12$\n\x16MessageType_GetAddress\x10\x1d\x1a\x08\x80\xa6\x1d\x01\x90\
|
||||
\xb5\x18\x01\x12!\n\x13MessageType_Address\x10\x1e\x1a\x08\x80\xa6\x1d\
|
||||
\x01\x98\xb5\x18\x01\x12)\n\x1fMessageType_TxAckPaymentRequest\x10%\x1a\
|
||||
\x04\x90\xb5\x18\x01\x12%\n\x17MessageType_SignMessage\x10&\x1a\x08\x80\
|
||||
\xa6\x1d\x01\x90\xb5\x18\x01\x12'\n\x19MessageType_VerifyMessage\x10'\
|
||||
\x1a\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12*\n\x1cMessageType_MessageSi\
|
||||
gnature\x10(\x1a\x08\x80\xa6\x1d\x01\x98\xb5\x18\x01\x12(\n\x1aMessageTy\
|
||||
pe_GetOwnershipId\x10+\x1a\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12%\n\
|
||||
\x17MessageType_OwnershipId\x10,\x1a\x08\x80\xa6\x1d\x01\x98\xb5\x18\x01\
|
||||
\x12+\n\x1dMessageType_GetOwnershipProof\x101\x1a\x08\x80\xa6\x1d\x01\
|
||||
\x90\xb5\x18\x01\x12(\n\x1aMessageType_OwnershipProof\x102\x1a\x08\x80\
|
||||
\xa6\x1d\x01\x98\xb5\x18\x01\x12+\n\x1dMessageType_AuthorizeCoinJoin\x10\
|
||||
3\x1a\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12(\n\x1aMessageType_CipherKe\
|
||||
yValue\x10\x17\x1a\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12*\n\x1cMessage\
|
||||
Type_CipheredKeyValue\x100\x1a\x08\x80\xa6\x1d\x01\x98\xb5\x18\x01\x12&\
|
||||
\n\x18MessageType_SignIdentity\x105\x1a\x08\x80\xa6\x1d\x01\x90\xb5\x18\
|
||||
\x01\x12(\n\x1aMessageType_SignedIdentity\x106\x1a\x08\x80\xa6\x1d\x01\
|
||||
\x98\xb5\x18\x01\x12+\n\x1dMessageType_GetECDHSessionKey\x10=\x1a\x08\
|
||||
\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12(\n\x1aMessageType_ECDHSessionKey\
|
||||
\x10>\x1a\x08\x80\xa6\x1d\x01\x98\xb5\x18\x01\x123\n\x1dMessageType_Debu\
|
||||
gLinkDecision\x10d\x1a\x10\xc0\xb5\x18\x01\xb0\xb5\x18\x01\x80\xa6\x1d\
|
||||
\x01\xa0\xb5\x18\x01\x12/\n\x1dMessageType_DebugLinkGetState\x10e\x1a\
|
||||
\x0c\x80\xa6\x1d\x01\xb0\xb5\x18\x01\xa0\xb5\x18\x01\x12(\n\x1aMessageTy\
|
||||
pe_DebugLinkState\x10f\x1a\x08\x80\xa6\x1d\x01\xa8\xb5\x18\x01\x12'\n\
|
||||
\x19MessageType_DebugLinkStop\x10g\x1a\x08\x80\xa6\x1d\x01\xa0\xb5\x18\
|
||||
\xa6\x1d\x01\x90\xb5\x18\x01\x12%\n\x16MessageType_EraseBonds\x10\xc6>\
|
||||
\x1a\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12%\n\x16MessageType_Disconnec\
|
||||
t\x10\xc7>\x1a\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12&\n\x18MessageType\
|
||||
_GetPublicKey\x10\x0b\x1a\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12#\n\x15\
|
||||
MessageType_PublicKey\x10\x0c\x1a\x08\x80\xa6\x1d\x01\x98\xb5\x18\x01\
|
||||
\x12\x20\n\x12MessageType_SignTx\x10\x0f\x1a\x08\x80\xa6\x1d\x01\x90\xb5\
|
||||
\x18\x01\x12#\n\x15MessageType_TxRequest\x10\x15\x1a\x08\x80\xa6\x1d\x01\
|
||||
\x98\xb5\x18\x01\x12\x1f\n\x11MessageType_TxAck\x10\x16\x1a\x08\x80\xa6\
|
||||
\x1d\x01\x90\xb5\x18\x01\x12$\n\x16MessageType_GetAddress\x10\x1d\x1a\
|
||||
\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12!\n\x13MessageType_Address\x10\
|
||||
\x1e\x1a\x08\x80\xa6\x1d\x01\x98\xb5\x18\x01\x12)\n\x1fMessageType_TxAck\
|
||||
PaymentRequest\x10%\x1a\x04\x90\xb5\x18\x01\x12%\n\x17MessageType_SignMe\
|
||||
ssage\x10&\x1a\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12'\n\x19MessageType\
|
||||
_VerifyMessage\x10'\x1a\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12*\n\x1cMe\
|
||||
ssageType_MessageSignature\x10(\x1a\x08\x80\xa6\x1d\x01\x98\xb5\x18\x01\
|
||||
\x12(\n\x1aMessageType_GetOwnershipId\x10+\x1a\x08\x80\xa6\x1d\x01\x90\
|
||||
\xb5\x18\x01\x12%\n\x17MessageType_OwnershipId\x10,\x1a\x08\x80\xa6\x1d\
|
||||
\x01\x98\xb5\x18\x01\x12+\n\x1dMessageType_GetOwnershipProof\x101\x1a\
|
||||
\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12(\n\x1aMessageType_OwnershipProo\
|
||||
f\x102\x1a\x08\x80\xa6\x1d\x01\x98\xb5\x18\x01\x12+\n\x1dMessageType_Aut\
|
||||
horizeCoinJoin\x103\x1a\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12(\n\x1aMe\
|
||||
ssageType_CipherKeyValue\x10\x17\x1a\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\
|
||||
\x12*\n\x1cMessageType_CipheredKeyValue\x100\x1a\x08\x80\xa6\x1d\x01\x98\
|
||||
\xb5\x18\x01\x12&\n\x18MessageType_SignIdentity\x105\x1a\x08\x80\xa6\x1d\
|
||||
\x01\x90\xb5\x18\x01\x12(\n\x1aMessageType_SignedIdentity\x106\x1a\x08\
|
||||
\x80\xa6\x1d\x01\x98\xb5\x18\x01\x12+\n\x1dMessageType_GetECDHSessionKey\
|
||||
\x10=\x1a\x08\x80\xa6\x1d\x01\x90\xb5\x18\x01\x12(\n\x1aMessageType_ECDH\
|
||||
SessionKey\x10>\x1a\x08\x80\xa6\x1d\x01\x98\xb5\x18\x01\x123\n\x1dMessag\
|
||||
eType_DebugLinkDecision\x10d\x1a\x10\xc0\xb5\x18\x01\xb0\xb5\x18\x01\x80\
|
||||
\xa6\x1d\x01\xa0\xb5\x18\x01\x12/\n\x1dMessageType_DebugLinkGetState\x10\
|
||||
e\x1a\x0c\x80\xa6\x1d\x01\xb0\xb5\x18\x01\xa0\xb5\x18\x01\x12(\n\x1aMess\
|
||||
ageType_DebugLinkState\x10f\x1a\x08\x80\xa6\x1d\x01\xa8\xb5\x18\x01\x12'\
|
||||
\n\x19MessageType_DebugLinkStop\x10g\x1a\x08\x80\xa6\x1d\x01\xa0\xb5\x18\
|
||||
\x01\x12&\n\x18MessageType_DebugLinkLog\x10h\x1a\x08\x80\xa6\x1d\x01\xa8\
|
||||
\xb5\x18\x01\x12-\n\x1fMessageType_DebugLinkMemoryRead\x10n\x1a\x08\x80\
|
||||
\xa6\x1d\x01\xa0\xb5\x18\x01\x12)\n\x1bMessageType_DebugLinkMemory\x10o\
|
||||
|
269
rust/trezor-client/src/protos/generated/messages_ble.rs
generated
Normal file
269
rust/trezor-client/src/protos/generated/messages_ble.rs
generated
Normal file
@ -0,0 +1,269 @@
|
||||
// This file is generated by rust-protobuf 3.3.0. Do not edit
|
||||
// .proto file is parsed by protoc 3.19.6
|
||||
// @generated
|
||||
|
||||
// https://github.com/rust-lang/rust-clippy/issues/702
|
||||
#![allow(unknown_lints)]
|
||||
#![allow(clippy::all)]
|
||||
|
||||
#![allow(unused_attributes)]
|
||||
#![cfg_attr(rustfmt, rustfmt::skip)]
|
||||
|
||||
#![allow(box_pointers)]
|
||||
#![allow(dead_code)]
|
||||
#![allow(missing_docs)]
|
||||
#![allow(non_camel_case_types)]
|
||||
#![allow(non_snake_case)]
|
||||
#![allow(non_upper_case_globals)]
|
||||
#![allow(trivial_casts)]
|
||||
#![allow(unused_results)]
|
||||
#![allow(unused_mut)]
|
||||
|
||||
//! Generated file from `messages-ble.proto`
|
||||
|
||||
/// Generated files are compatible only with the same version
|
||||
/// of protobuf runtime.
|
||||
const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_3_3_0;
|
||||
|
||||
// @@protoc_insertion_point(message:hw.trezor.messages.ble.EraseBonds)
|
||||
#[derive(PartialEq,Clone,Default,Debug)]
|
||||
pub struct EraseBonds {
|
||||
// special fields
|
||||
// @@protoc_insertion_point(special_field:hw.trezor.messages.ble.EraseBonds.special_fields)
|
||||
pub special_fields: ::protobuf::SpecialFields,
|
||||
}
|
||||
|
||||
impl<'a> ::std::default::Default for &'a EraseBonds {
|
||||
fn default() -> &'a EraseBonds {
|
||||
<EraseBonds as ::protobuf::Message>::default_instance()
|
||||
}
|
||||
}
|
||||
|
||||
impl EraseBonds {
|
||||
pub fn new() -> EraseBonds {
|
||||
::std::default::Default::default()
|
||||
}
|
||||
|
||||
fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
|
||||
let mut fields = ::std::vec::Vec::with_capacity(0);
|
||||
let mut oneofs = ::std::vec::Vec::with_capacity(0);
|
||||
::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<EraseBonds>(
|
||||
"EraseBonds",
|
||||
fields,
|
||||
oneofs,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
impl ::protobuf::Message for EraseBonds {
|
||||
const NAME: &'static str = "EraseBonds";
|
||||
|
||||
fn is_initialized(&self) -> bool {
|
||||
true
|
||||
}
|
||||
|
||||
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
|
||||
while let Some(tag) = is.read_raw_tag_or_eof()? {
|
||||
match tag {
|
||||
tag => {
|
||||
::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
|
||||
},
|
||||
};
|
||||
}
|
||||
::std::result::Result::Ok(())
|
||||
}
|
||||
|
||||
// Compute sizes of nested messages
|
||||
#[allow(unused_variables)]
|
||||
fn compute_size(&self) -> u64 {
|
||||
let mut my_size = 0;
|
||||
my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
|
||||
self.special_fields.cached_size().set(my_size as u32);
|
||||
my_size
|
||||
}
|
||||
|
||||
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
|
||||
os.write_unknown_fields(self.special_fields.unknown_fields())?;
|
||||
::std::result::Result::Ok(())
|
||||
}
|
||||
|
||||
fn special_fields(&self) -> &::protobuf::SpecialFields {
|
||||
&self.special_fields
|
||||
}
|
||||
|
||||
fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
|
||||
&mut self.special_fields
|
||||
}
|
||||
|
||||
fn new() -> EraseBonds {
|
||||
EraseBonds::new()
|
||||
}
|
||||
|
||||
fn clear(&mut self) {
|
||||
self.special_fields.clear();
|
||||
}
|
||||
|
||||
fn default_instance() -> &'static EraseBonds {
|
||||
static instance: EraseBonds = EraseBonds {
|
||||
special_fields: ::protobuf::SpecialFields::new(),
|
||||
};
|
||||
&instance
|
||||
}
|
||||
}
|
||||
|
||||
impl ::protobuf::MessageFull for EraseBonds {
|
||||
fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
|
||||
static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
|
||||
descriptor.get(|| file_descriptor().message_by_package_relative_name("EraseBonds").unwrap()).clone()
|
||||
}
|
||||
}
|
||||
|
||||
impl ::std::fmt::Display for EraseBonds {
|
||||
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
|
||||
::protobuf::text_format::fmt(self, f)
|
||||
}
|
||||
}
|
||||
|
||||
impl ::protobuf::reflect::ProtobufValue for EraseBonds {
|
||||
type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(message:hw.trezor.messages.ble.Disconnect)
|
||||
#[derive(PartialEq,Clone,Default,Debug)]
|
||||
pub struct Disconnect {
|
||||
// special fields
|
||||
// @@protoc_insertion_point(special_field:hw.trezor.messages.ble.Disconnect.special_fields)
|
||||
pub special_fields: ::protobuf::SpecialFields,
|
||||
}
|
||||
|
||||
impl<'a> ::std::default::Default for &'a Disconnect {
|
||||
fn default() -> &'a Disconnect {
|
||||
<Disconnect as ::protobuf::Message>::default_instance()
|
||||
}
|
||||
}
|
||||
|
||||
impl Disconnect {
|
||||
pub fn new() -> Disconnect {
|
||||
::std::default::Default::default()
|
||||
}
|
||||
|
||||
fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
|
||||
let mut fields = ::std::vec::Vec::with_capacity(0);
|
||||
let mut oneofs = ::std::vec::Vec::with_capacity(0);
|
||||
::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<Disconnect>(
|
||||
"Disconnect",
|
||||
fields,
|
||||
oneofs,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
impl ::protobuf::Message for Disconnect {
|
||||
const NAME: &'static str = "Disconnect";
|
||||
|
||||
fn is_initialized(&self) -> bool {
|
||||
true
|
||||
}
|
||||
|
||||
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
|
||||
while let Some(tag) = is.read_raw_tag_or_eof()? {
|
||||
match tag {
|
||||
tag => {
|
||||
::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
|
||||
},
|
||||
};
|
||||
}
|
||||
::std::result::Result::Ok(())
|
||||
}
|
||||
|
||||
// Compute sizes of nested messages
|
||||
#[allow(unused_variables)]
|
||||
fn compute_size(&self) -> u64 {
|
||||
let mut my_size = 0;
|
||||
my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
|
||||
self.special_fields.cached_size().set(my_size as u32);
|
||||
my_size
|
||||
}
|
||||
|
||||
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
|
||||
os.write_unknown_fields(self.special_fields.unknown_fields())?;
|
||||
::std::result::Result::Ok(())
|
||||
}
|
||||
|
||||
fn special_fields(&self) -> &::protobuf::SpecialFields {
|
||||
&self.special_fields
|
||||
}
|
||||
|
||||
fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
|
||||
&mut self.special_fields
|
||||
}
|
||||
|
||||
fn new() -> Disconnect {
|
||||
Disconnect::new()
|
||||
}
|
||||
|
||||
fn clear(&mut self) {
|
||||
self.special_fields.clear();
|
||||
}
|
||||
|
||||
fn default_instance() -> &'static Disconnect {
|
||||
static instance: Disconnect = Disconnect {
|
||||
special_fields: ::protobuf::SpecialFields::new(),
|
||||
};
|
||||
&instance
|
||||
}
|
||||
}
|
||||
|
||||
impl ::protobuf::MessageFull for Disconnect {
|
||||
fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
|
||||
static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
|
||||
descriptor.get(|| file_descriptor().message_by_package_relative_name("Disconnect").unwrap()).clone()
|
||||
}
|
||||
}
|
||||
|
||||
impl ::std::fmt::Display for Disconnect {
|
||||
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
|
||||
::protobuf::text_format::fmt(self, f)
|
||||
}
|
||||
}
|
||||
|
||||
impl ::protobuf::reflect::ProtobufValue for Disconnect {
|
||||
type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
|
||||
}
|
||||
|
||||
static file_descriptor_proto_data: &'static [u8] = b"\
|
||||
\n\x12messages-ble.proto\x12\x16hw.trezor.messages.ble\x1a\roptions.prot\
|
||||
o\"\x0c\n\nEraseBonds\"\x0c\n\nDisconnectB;\n#com.satoshilabs.trezor.lib\
|
||||
.protobufB\x10TrezorMessageBLE\x80\xa6\x1d\x01\
|
||||
";
|
||||
|
||||
/// `FileDescriptorProto` object which was a source for this generated file
|
||||
fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
|
||||
static file_descriptor_proto_lazy: ::protobuf::rt::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::Lazy::new();
|
||||
file_descriptor_proto_lazy.get(|| {
|
||||
::protobuf::Message::parse_from_bytes(file_descriptor_proto_data).unwrap()
|
||||
})
|
||||
}
|
||||
|
||||
/// `FileDescriptor` object which allows dynamic access to files
|
||||
pub fn file_descriptor() -> &'static ::protobuf::reflect::FileDescriptor {
|
||||
static generated_file_descriptor_lazy: ::protobuf::rt::Lazy<::protobuf::reflect::GeneratedFileDescriptor> = ::protobuf::rt::Lazy::new();
|
||||
static file_descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::FileDescriptor> = ::protobuf::rt::Lazy::new();
|
||||
file_descriptor.get(|| {
|
||||
let generated_file_descriptor = generated_file_descriptor_lazy.get(|| {
|
||||
let mut deps = ::std::vec::Vec::with_capacity(1);
|
||||
deps.push(super::options::file_descriptor().clone());
|
||||
let mut messages = ::std::vec::Vec::with_capacity(2);
|
||||
messages.push(EraseBonds::generated_message_descriptor_data());
|
||||
messages.push(Disconnect::generated_message_descriptor_data());
|
||||
let mut enums = ::std::vec::Vec::with_capacity(0);
|
||||
::protobuf::reflect::GeneratedFileDescriptor::new_generated(
|
||||
file_descriptor_proto(),
|
||||
deps,
|
||||
messages,
|
||||
enums,
|
||||
)
|
||||
});
|
||||
::protobuf::reflect::FileDescriptor::new_generated_2(generated_file_descriptor)
|
||||
})
|
||||
}
|
@ -414,6 +414,8 @@ pub mod failure {
|
||||
Failure_WipeCodeMismatch = 13,
|
||||
// @@protoc_insertion_point(enum_value:hw.trezor.messages.common.Failure.FailureType.Failure_InvalidSession)
|
||||
Failure_InvalidSession = 14,
|
||||
// @@protoc_insertion_point(enum_value:hw.trezor.messages.common.Failure.FailureType.Failure_DeviceIsBusy)
|
||||
Failure_DeviceIsBusy = 15,
|
||||
// @@protoc_insertion_point(enum_value:hw.trezor.messages.common.Failure.FailureType.Failure_FirmwareError)
|
||||
Failure_FirmwareError = 99,
|
||||
}
|
||||
@ -441,6 +443,7 @@ pub mod failure {
|
||||
12 => ::std::option::Option::Some(FailureType::Failure_PinMismatch),
|
||||
13 => ::std::option::Option::Some(FailureType::Failure_WipeCodeMismatch),
|
||||
14 => ::std::option::Option::Some(FailureType::Failure_InvalidSession),
|
||||
15 => ::std::option::Option::Some(FailureType::Failure_DeviceIsBusy),
|
||||
99 => ::std::option::Option::Some(FailureType::Failure_FirmwareError),
|
||||
_ => ::std::option::Option::None
|
||||
}
|
||||
@ -462,6 +465,7 @@ pub mod failure {
|
||||
"Failure_PinMismatch" => ::std::option::Option::Some(FailureType::Failure_PinMismatch),
|
||||
"Failure_WipeCodeMismatch" => ::std::option::Option::Some(FailureType::Failure_WipeCodeMismatch),
|
||||
"Failure_InvalidSession" => ::std::option::Option::Some(FailureType::Failure_InvalidSession),
|
||||
"Failure_DeviceIsBusy" => ::std::option::Option::Some(FailureType::Failure_DeviceIsBusy),
|
||||
"Failure_FirmwareError" => ::std::option::Option::Some(FailureType::Failure_FirmwareError),
|
||||
_ => ::std::option::Option::None
|
||||
}
|
||||
@ -482,6 +486,7 @@ pub mod failure {
|
||||
FailureType::Failure_PinMismatch,
|
||||
FailureType::Failure_WipeCodeMismatch,
|
||||
FailureType::Failure_InvalidSession,
|
||||
FailureType::Failure_DeviceIsBusy,
|
||||
FailureType::Failure_FirmwareError,
|
||||
];
|
||||
}
|
||||
@ -508,7 +513,8 @@ pub mod failure {
|
||||
FailureType::Failure_PinMismatch => 11,
|
||||
FailureType::Failure_WipeCodeMismatch => 12,
|
||||
FailureType::Failure_InvalidSession => 13,
|
||||
FailureType::Failure_FirmwareError => 14,
|
||||
FailureType::Failure_DeviceIsBusy => 14,
|
||||
FailureType::Failure_FirmwareError => 15,
|
||||
};
|
||||
Self::enum_descriptor().value_by_index(index)
|
||||
}
|
||||
@ -2481,9 +2487,9 @@ impl ::protobuf::reflect::ProtobufValue for HDNodeType {
|
||||
static file_descriptor_proto_data: &'static [u8] = b"\
|
||||
\n\x15messages-common.proto\x12\x19hw.trezor.messages.common\x1a\roption\
|
||||
s.proto\"%\n\x07Success\x12\x1a\n\x07message\x18\x01\x20\x01(\t:\0R\x07m\
|
||||
essage\"\x8f\x04\n\x07Failure\x12B\n\x04code\x18\x01\x20\x01(\x0e2..hw.t\
|
||||
essage\"\xa9\x04\n\x07Failure\x12B\n\x04code\x18\x01\x20\x01(\x0e2..hw.t\
|
||||
rezor.messages.common.Failure.FailureTypeR\x04code\x12\x18\n\x07message\
|
||||
\x18\x02\x20\x01(\tR\x07message\"\xa5\x03\n\x0bFailureType\x12\x1d\n\x19\
|
||||
\x18\x02\x20\x01(\tR\x07message\"\xbf\x03\n\x0bFailureType\x12\x1d\n\x19\
|
||||
Failure_UnexpectedMessage\x10\x01\x12\x1a\n\x16Failure_ButtonExpected\
|
||||
\x10\x02\x12\x15\n\x11Failure_DataError\x10\x03\x12\x1b\n\x17Failure_Act\
|
||||
ionCancelled\x10\x04\x12\x17\n\x13Failure_PinExpected\x10\x05\x12\x18\n\
|
||||
@ -2492,44 +2498,45 @@ static file_descriptor_proto_data: &'static [u8] = b"\
|
||||
essError\x10\t\x12\x1a\n\x16Failure_NotEnoughFunds\x10\n\x12\x1a\n\x16Fa\
|
||||
ilure_NotInitialized\x10\x0b\x12\x17\n\x13Failure_PinMismatch\x10\x0c\
|
||||
\x12\x1c\n\x18Failure_WipeCodeMismatch\x10\r\x12\x1a\n\x16Failure_Invali\
|
||||
dSession\x10\x0e\x12\x19\n\x15Failure_FirmwareError\x10c\"\xab\x06\n\rBu\
|
||||
ttonRequest\x12N\n\x04code\x18\x01\x20\x01(\x0e2:.hw.trezor.messages.com\
|
||||
mon.ButtonRequest.ButtonRequestTypeR\x04code\x12\x14\n\x05pages\x18\x02\
|
||||
\x20\x01(\rR\x05pages\x12\x12\n\x04name\x18\x04\x20\x01(\tR\x04name\"\
|
||||
\x99\x05\n\x11ButtonRequestType\x12\x17\n\x13ButtonRequest_Other\x10\x01\
|
||||
\x12\"\n\x1eButtonRequest_FeeOverThreshold\x10\x02\x12\x1f\n\x1bButtonRe\
|
||||
quest_ConfirmOutput\x10\x03\x12\x1d\n\x19ButtonRequest_ResetDevice\x10\
|
||||
\x04\x12\x1d\n\x19ButtonRequest_ConfirmWord\x10\x05\x12\x1c\n\x18ButtonR\
|
||||
equest_WipeDevice\x10\x06\x12\x1d\n\x19ButtonRequest_ProtectCall\x10\x07\
|
||||
\x12\x18\n\x14ButtonRequest_SignTx\x10\x08\x12\x1f\n\x1bButtonRequest_Fi\
|
||||
rmwareCheck\x10\t\x12\x19\n\x15ButtonRequest_Address\x10\n\x12\x1b\n\x17\
|
||||
ButtonRequest_PublicKey\x10\x0b\x12#\n\x1fButtonRequest_MnemonicWordCoun\
|
||||
t\x10\x0c\x12\x1f\n\x1bButtonRequest_MnemonicInput\x10\r\x120\n(_Depreca\
|
||||
ted_ButtonRequest_PassphraseType\x10\x0e\x1a\x02\x08\x01\x12'\n#ButtonRe\
|
||||
quest_UnknownDerivationPath\x10\x0f\x12\"\n\x1eButtonRequest_RecoveryHom\
|
||||
epage\x10\x10\x12\x19\n\x15ButtonRequest_Success\x10\x11\x12\x19\n\x15Bu\
|
||||
ttonRequest_Warning\x10\x12\x12!\n\x1dButtonRequest_PassphraseEntry\x10\
|
||||
\x13\x12\x1a\n\x16ButtonRequest_PinEntry\x10\x14J\x04\x08\x03\x10\x04\"\
|
||||
\x0b\n\tButtonAck\"\xbb\x02\n\x10PinMatrixRequest\x12T\n\x04type\x18\x01\
|
||||
\x20\x01(\x0e2@.hw.trezor.messages.common.PinMatrixRequest.PinMatrixRequ\
|
||||
estTypeR\x04type\"\xd0\x01\n\x14PinMatrixRequestType\x12\x20\n\x1cPinMat\
|
||||
rixRequestType_Current\x10\x01\x12!\n\x1dPinMatrixRequestType_NewFirst\
|
||||
\x10\x02\x12\"\n\x1ePinMatrixRequestType_NewSecond\x10\x03\x12&\n\"PinMa\
|
||||
trixRequestType_WipeCodeFirst\x10\x04\x12'\n#PinMatrixRequestType_WipeCo\
|
||||
deSecond\x10\x05\"\x20\n\x0cPinMatrixAck\x12\x10\n\x03pin\x18\x01\x20\
|
||||
\x02(\tR\x03pin\"5\n\x11PassphraseRequest\x12\x20\n\n_on_device\x18\x01\
|
||||
\x20\x01(\x08R\x08OnDeviceB\x02\x18\x01\"g\n\rPassphraseAck\x12\x1e\n\np\
|
||||
assphrase\x18\x01\x20\x01(\tR\npassphrase\x12\x19\n\x06_state\x18\x02\
|
||||
\x20\x01(\x0cR\x05StateB\x02\x18\x01\x12\x1b\n\ton_device\x18\x03\x20\
|
||||
\x01(\x08R\x08onDevice\"=\n!Deprecated_PassphraseStateRequest\x12\x14\n\
|
||||
\x05state\x18\x01\x20\x01(\x0cR\x05state:\x02\x18\x01\"#\n\x1dDeprecated\
|
||||
_PassphraseStateAck:\x02\x18\x01\"\xc0\x01\n\nHDNodeType\x12\x14\n\x05de\
|
||||
pth\x18\x01\x20\x02(\rR\x05depth\x12\x20\n\x0bfingerprint\x18\x02\x20\
|
||||
\x02(\rR\x0bfingerprint\x12\x1b\n\tchild_num\x18\x03\x20\x02(\rR\x08chil\
|
||||
dNum\x12\x1d\n\nchain_code\x18\x04\x20\x02(\x0cR\tchainCode\x12\x1f\n\
|
||||
\x0bprivate_key\x18\x05\x20\x01(\x0cR\nprivateKey\x12\x1d\n\npublic_key\
|
||||
\x18\x06\x20\x02(\x0cR\tpublicKeyB>\n#com.satoshilabs.trezor.lib.protobu\
|
||||
fB\x13TrezorMessageCommon\x80\xa6\x1d\x01\
|
||||
dSession\x10\x0e\x12\x18\n\x14Failure_DeviceIsBusy\x10\x0f\x12\x19\n\x15\
|
||||
Failure_FirmwareError\x10c\"\xab\x06\n\rButtonRequest\x12N\n\x04code\x18\
|
||||
\x01\x20\x01(\x0e2:.hw.trezor.messages.common.ButtonRequest.ButtonReques\
|
||||
tTypeR\x04code\x12\x14\n\x05pages\x18\x02\x20\x01(\rR\x05pages\x12\x12\n\
|
||||
\x04name\x18\x04\x20\x01(\tR\x04name\"\x99\x05\n\x11ButtonRequestType\
|
||||
\x12\x17\n\x13ButtonRequest_Other\x10\x01\x12\"\n\x1eButtonRequest_FeeOv\
|
||||
erThreshold\x10\x02\x12\x1f\n\x1bButtonRequest_ConfirmOutput\x10\x03\x12\
|
||||
\x1d\n\x19ButtonRequest_ResetDevice\x10\x04\x12\x1d\n\x19ButtonRequest_C\
|
||||
onfirmWord\x10\x05\x12\x1c\n\x18ButtonRequest_WipeDevice\x10\x06\x12\x1d\
|
||||
\n\x19ButtonRequest_ProtectCall\x10\x07\x12\x18\n\x14ButtonRequest_SignT\
|
||||
x\x10\x08\x12\x1f\n\x1bButtonRequest_FirmwareCheck\x10\t\x12\x19\n\x15Bu\
|
||||
ttonRequest_Address\x10\n\x12\x1b\n\x17ButtonRequest_PublicKey\x10\x0b\
|
||||
\x12#\n\x1fButtonRequest_MnemonicWordCount\x10\x0c\x12\x1f\n\x1bButtonRe\
|
||||
quest_MnemonicInput\x10\r\x120\n(_Deprecated_ButtonRequest_PassphraseTyp\
|
||||
e\x10\x0e\x1a\x02\x08\x01\x12'\n#ButtonRequest_UnknownDerivationPath\x10\
|
||||
\x0f\x12\"\n\x1eButtonRequest_RecoveryHomepage\x10\x10\x12\x19\n\x15Butt\
|
||||
onRequest_Success\x10\x11\x12\x19\n\x15ButtonRequest_Warning\x10\x12\x12\
|
||||
!\n\x1dButtonRequest_PassphraseEntry\x10\x13\x12\x1a\n\x16ButtonRequest_\
|
||||
PinEntry\x10\x14J\x04\x08\x03\x10\x04\"\x0b\n\tButtonAck\"\xbb\x02\n\x10\
|
||||
PinMatrixRequest\x12T\n\x04type\x18\x01\x20\x01(\x0e2@.hw.trezor.message\
|
||||
s.common.PinMatrixRequest.PinMatrixRequestTypeR\x04type\"\xd0\x01\n\x14P\
|
||||
inMatrixRequestType\x12\x20\n\x1cPinMatrixRequestType_Current\x10\x01\
|
||||
\x12!\n\x1dPinMatrixRequestType_NewFirst\x10\x02\x12\"\n\x1ePinMatrixReq\
|
||||
uestType_NewSecond\x10\x03\x12&\n\"PinMatrixRequestType_WipeCodeFirst\
|
||||
\x10\x04\x12'\n#PinMatrixRequestType_WipeCodeSecond\x10\x05\"\x20\n\x0cP\
|
||||
inMatrixAck\x12\x10\n\x03pin\x18\x01\x20\x02(\tR\x03pin\"5\n\x11Passphra\
|
||||
seRequest\x12\x20\n\n_on_device\x18\x01\x20\x01(\x08R\x08OnDeviceB\x02\
|
||||
\x18\x01\"g\n\rPassphraseAck\x12\x1e\n\npassphrase\x18\x01\x20\x01(\tR\n\
|
||||
passphrase\x12\x19\n\x06_state\x18\x02\x20\x01(\x0cR\x05StateB\x02\x18\
|
||||
\x01\x12\x1b\n\ton_device\x18\x03\x20\x01(\x08R\x08onDevice\"=\n!Depreca\
|
||||
ted_PassphraseStateRequest\x12\x14\n\x05state\x18\x01\x20\x01(\x0cR\x05s\
|
||||
tate:\x02\x18\x01\"#\n\x1dDeprecated_PassphraseStateAck:\x02\x18\x01\"\
|
||||
\xc0\x01\n\nHDNodeType\x12\x14\n\x05depth\x18\x01\x20\x02(\rR\x05depth\
|
||||
\x12\x20\n\x0bfingerprint\x18\x02\x20\x02(\rR\x0bfingerprint\x12\x1b\n\t\
|
||||
child_num\x18\x03\x20\x02(\rR\x08childNum\x12\x1d\n\nchain_code\x18\x04\
|
||||
\x20\x02(\x0cR\tchainCode\x12\x1f\n\x0bprivate_key\x18\x05\x20\x01(\x0cR\
|
||||
\nprivateKey\x12\x1d\n\npublic_key\x18\x06\x20\x02(\x0cR\tpublicKeyB>\n#\
|
||||
com.satoshilabs.trezor.lib.protobufB\x13TrezorMessageCommon\x80\xa6\x1d\
|
||||
\x01\
|
||||
";
|
||||
|
||||
/// `FileDescriptorProto` object which was a source for this generated file
|
||||
|
Loading…
Reference in New Issue
Block a user