diff --git a/legacy/firmware/fsm.h b/legacy/firmware/fsm.h index c20855be7d3..88c547a7250 100644 --- a/legacy/firmware/fsm.h +++ b/legacy/firmware/fsm.h @@ -103,6 +103,7 @@ void fsm_msgEthereumGetPublicKey(const EthereumGetPublicKey *msg); void fsm_msgEthereumSignTx( EthereumSignTx *msg); // not const because we mutate transaction during validation +void fsm_msgEthereumSignTxEIP1559(const EthereumSignTxEIP1559 *msg); void fsm_msgEthereumTxAck(const EthereumTxAck *msg); void fsm_msgEthereumSignMessage(const EthereumSignMessage *msg); void fsm_msgEthereumVerifyMessage(const EthereumVerifyMessage *msg); diff --git a/legacy/firmware/fsm_msg_ethereum.h b/legacy/firmware/fsm_msg_ethereum.h index aed40d45fdd..20115bb6847 100644 --- a/legacy/firmware/fsm_msg_ethereum.h +++ b/legacy/firmware/fsm_msg_ethereum.h @@ -76,6 +76,11 @@ void fsm_msgEthereumTxAck(const EthereumTxAck *msg) { ethereum_signing_txack(msg); } +void fsm_msgEthereumSignTxEIP1559(const EthereumSignTxEIP1559 *msg) { + (void)msg; + fsm_sendFailure(FailureType_Failure_UnexpectedMessage, _("Not implemented")); +} + void fsm_msgEthereumGetAddress(const EthereumGetAddress *msg) { RESP_INIT(EthereumAddress); diff --git a/legacy/firmware/protob/messages-ethereum.options b/legacy/firmware/protob/messages-ethereum.options index 1e69e69ba3c..45bb6d775c3 100644 --- a/legacy/firmware/protob/messages-ethereum.options +++ b/legacy/firmware/protob/messages-ethereum.options @@ -6,6 +6,19 @@ EthereumSignTx.to max_size:43 EthereumSignTx.value max_size:32 EthereumSignTx.data_initial_chunk max_size:1024 +EthereumSignTxEIP1559.address_n max_count:8 +EthereumSignTxEIP1559.nonce max_size:32 +EthereumSignTxEIP1559.max_gas_fee max_size:32 +EthereumSignTxEIP1559.max_priority_fee max_size:32 +EthereumSignTxEIP1559.gas_limit max_size:32 +EthereumSignTxEIP1559.to max_size:32 +EthereumSignTxEIP1559.value max_size:32 +EthereumSignTxEIP1559.data_initial_chunk max_size:1024 +EthereumSignTxEIP1559.access_list max_count:8 + +EthereumAccessList.address max_size:32 +EthereumAccessList.storage_keys max_count:8 max_size:32 + EthereumTxRequest.signature_r max_size:32 EthereumTxRequest.signature_s max_size:32