mirror of
https://github.com/monero-project/monero.git
synced 2025-08-05 05:14:24 -04:00
device/trezor: add button pressed request
This commit is contained in:
parent
827f52add0
commit
c68fe7873b
7 changed files with 42 additions and 1 deletions
|
@ -43,7 +43,7 @@ namespace trezor {
|
|||
|
||||
const uint32_t device_trezor_base::DEFAULT_BIP44_PATH[] = {0x8000002c, 0x80000080};
|
||||
|
||||
device_trezor_base::device_trezor_base(): m_callback(nullptr) {
|
||||
device_trezor_base::device_trezor_base(): m_callback(nullptr), m_last_msg_type(messages::MessageType_Success) {
|
||||
#ifdef WITH_TREZOR_DEBUGGING
|
||||
m_debug = false;
|
||||
#endif
|
||||
|
@ -275,6 +275,12 @@ namespace trezor {
|
|||
// Later if needed this generic message handler can be replaced by a pointer to
|
||||
// a protocol message handler which by default points to the device class which implements
|
||||
// the default handler.
|
||||
|
||||
if (m_last_msg_type == messages::MessageType_ButtonRequest){
|
||||
on_button_pressed();
|
||||
}
|
||||
m_last_msg_type = input.m_type;
|
||||
|
||||
switch(input.m_type){
|
||||
case messages::MessageType_ButtonRequest:
|
||||
on_button_request(input, dynamic_cast<const messages::common::ButtonRequest*>(input.m_msg.get()));
|
||||
|
@ -413,6 +419,11 @@ namespace trezor {
|
|||
resp = read_raw();
|
||||
}
|
||||
|
||||
void device_trezor_base::on_button_pressed()
|
||||
{
|
||||
TREZOR_CALLBACK(on_button_pressed);
|
||||
}
|
||||
|
||||
void device_trezor_base::on_pin_request(GenericMessage & resp, const messages::common::PinMatrixRequest * msg)
|
||||
{
|
||||
MDEBUG("on_pin_request");
|
||||
|
|
|
@ -98,6 +98,7 @@ namespace trezor {
|
|||
std::shared_ptr<messages::management::Features> m_features; // features from the last device reset
|
||||
boost::optional<epee::wipeable_string> m_pin;
|
||||
boost::optional<epee::wipeable_string> m_passphrase;
|
||||
messages::MessageType m_last_msg_type;
|
||||
|
||||
cryptonote::network_type network_type;
|
||||
|
||||
|
@ -311,6 +312,7 @@ namespace trezor {
|
|||
|
||||
// Protocol callbacks
|
||||
void on_button_request(GenericMessage & resp, const messages::common::ButtonRequest * msg);
|
||||
void on_button_pressed();
|
||||
void on_pin_request(GenericMessage & resp, const messages::common::PinMatrixRequest * msg);
|
||||
void on_passphrase_request(GenericMessage & resp, const messages::common::PassphraseRequest * msg);
|
||||
void on_passphrase_state_request(GenericMessage & resp, const messages::common::PassphraseStateRequest * msg);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue