aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSChernykh <15806605+SChernykh@users.noreply.github.com>2026-06-04 10:03:15 +0200
committerSChernykh <15806605+SChernykh@users.noreply.github.com>2026-06-04 10:04:29 +0200
commit2de5e8227f356c31784e249ca5317e7faf4ba969 (patch)
tree88171f19db8dbbb7eb208e93522a71f227f10cdf
parent29bf6a5825350850037a9504f4b0c45b34b1eb75 (diff)
downloadmonzero-core-2de5e8227f356c31784e249ca5317e7faf4ba969.tar.gz
monzero-core-2de5e8227f356c31784e249ca5317e7faf4ba969.tar.xz
monzero-core-2de5e8227f356c31784e249ca5317e7faf4ba969.zip
Fix: check hwdev.generate_output_ephemeral_keys result
If it fails, out_eph_public_key and view_tag remain uninitialized.
-rw-r--r--src/cryptonote_core/cryptonote_tx_utils.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/cryptonote_core/cryptonote_tx_utils.cpp b/src/cryptonote_core/cryptonote_tx_utils.cpp
index c350e24c4..7aea5cf50 100644
--- a/src/cryptonote_core/cryptonote_tx_utils.cpp
+++ b/src/cryptonote_core/cryptonote_tx_utils.cpp
@@ -453,11 +453,12 @@ namespace cryptonote
crypto::public_key out_eph_public_key;
crypto::view_tag view_tag;
- hwdev.generate_output_ephemeral_keys(tx.version,sender_account_keys, txkey_pub, tx_key,
+ const bool r = hwdev.generate_output_ephemeral_keys(tx.version,sender_account_keys, txkey_pub, tx_key,
dst_entr, change_addr, output_index,
need_additional_txkeys, additional_tx_keys,
additional_tx_public_keys, amount_keys, out_eph_public_key,
use_view_tags, view_tag);
+ CHECK_AND_ASSERT_MES(r, false, "Failed to generate output ephemeral keys");
tx_out out;
cryptonote::set_tx_out(dst_entr.amount, out_eph_public_key, use_view_tags, view_tag, out);