mirror of
https://github.com/monero-project/monero.git
synced 2024-12-23 03:59:33 +00:00
Merge pull request #8950
a0e5c3c
wallet2: when checking frozen multisig tx set, don't assume order (jeffro256)
This commit is contained in:
commit
1ab593991c
1 changed files with 4 additions and 4 deletions
|
@ -1986,14 +1986,14 @@ bool wallet2::frozen(const multisig_tx_set& txs) const
|
||||||
CHECK_AND_ASSERT_THROW_MES(cd.sources.size() == ptx.tx.vin.size(), "mismatched multisg tx set source sizes");
|
CHECK_AND_ASSERT_THROW_MES(cd.sources.size() == ptx.tx.vin.size(), "mismatched multisg tx set source sizes");
|
||||||
for (size_t src_idx = 0; src_idx < cd.sources.size(); ++src_idx)
|
for (size_t src_idx = 0; src_idx < cd.sources.size(); ++src_idx)
|
||||||
{
|
{
|
||||||
// Check that the key images are consistent between tx vin and construction data
|
// Extract keys images from tx vin and construction data
|
||||||
const crypto::key_image multisig_ki = rct::rct2ki(cd.sources[src_idx].multisig_kLRki.ki);
|
const crypto::key_image multisig_ki = rct::rct2ki(cd.sources[src_idx].multisig_kLRki.ki);
|
||||||
CHECK_AND_ASSERT_THROW_MES(ptx.tx.vin[src_idx].type() == typeid(cryptonote::txin_to_key), "multisig tx cannot be miner");
|
CHECK_AND_ASSERT_THROW_MES(ptx.tx.vin[src_idx].type() == typeid(cryptonote::txin_to_key), "multisig tx cannot be miner");
|
||||||
const crypto::key_image vin_ki = boost::get<cryptonote::txin_to_key>(ptx.tx.vin[src_idx]).k_image;
|
const crypto::key_image& vin_ki = boost::get<cryptonote::txin_to_key>(ptx.tx.vin[src_idx]).k_image;
|
||||||
CHECK_AND_ASSERT_THROW_MES(multisig_ki == vin_ki, "Mismatched key image b/t vin and construction data");
|
|
||||||
|
|
||||||
// Add key image to set
|
// Add key images to set (there will be some overlap)
|
||||||
kis_to_sign.insert(multisig_ki);
|
kis_to_sign.insert(multisig_ki);
|
||||||
|
kis_to_sign.insert(vin_ki);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Step 2. Scan all transfers for frozen key images
|
// Step 2. Scan all transfers for frozen key images
|
||||||
|
|
Loading…
Reference in a new issue