diff options
author | luigi1111 <luigi1111w@gmail.com> | 2020-06-22 14:27:12 -0500 |
---|---|---|
committer | luigi1111 <luigi1111w@gmail.com> | 2020-06-22 14:27:12 -0500 |
commit | 4627b0f3e24a33df031121b67fa2b0379e11c960 (patch) | |
tree | 56faf185f1f3efd4ff20c811052a03c5adfdf3b9 | |
parent | Merge pull request #6678 (diff) | |
parent | add trezor support to sweep_single (diff) | |
download | monero-4627b0f3e24a33df031121b67fa2b0379e11c960.tar.xz |
Merge pull request #6681
19bb72d add trezor support to sweep_single (ph4r05)
-rw-r--r-- | src/simplewallet/simplewallet.cpp | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/simplewallet/simplewallet.cpp b/src/simplewallet/simplewallet.cpp index df5bae08d..ffe38eedf 100644 --- a/src/simplewallet/simplewallet.cpp +++ b/src/simplewallet/simplewallet.cpp @@ -7340,6 +7340,32 @@ bool simple_wallet::sweep_single(const std::vector<std::string> &args_) success_msg_writer(true) << tr("Unsigned transaction(s) successfully written to file: ") << "multisig_monero_tx"; } } + else if (m_wallet->get_account().get_device().has_tx_cold_sign()) + { + try + { + tools::wallet2::signed_tx_set signed_tx; + std::vector<cryptonote::address_parse_info> dsts_info; + dsts_info.push_back(info); + + if (!cold_sign_tx(ptx_vector, signed_tx, dsts_info, [&](const tools::wallet2::signed_tx_set &tx){ return accept_loaded_tx(tx); })){ + fail_msg_writer() << tr("Failed to cold sign transaction with HW wallet"); + return true; + } + + commit_or_save(signed_tx.ptx, m_do_not_relay); + success_msg_writer(true) << tr("Money successfully sent, transaction: ") << get_transaction_hash(ptx_vector[0].tx); + } + catch (const std::exception& e) + { + handle_transfer_exception(std::current_exception(), m_wallet->is_trusted_daemon()); + } + catch (...) + { + LOG_ERROR("Unknown error"); + fail_msg_writer() << tr("unknown error"); + } + } else if (m_wallet->watch_only()) { bool r = m_wallet->save_tx(ptx_vector, "unsigned_monero_tx"); |