mirror of
https://github.com/monero-project/monero.git
synced 2024-11-18 18:11:03 +00:00
check_spend_proof
My intention is to mitigate #3761 by returning "bad signature", rather than throwing an error, as the error is triggered inappropriately in the case of checking a different txid than the one used to create the signature, which causes issues for monerophp: https://github.com/monero-integrations/monerophp/issues/72 & my temp fix: https://github.com/monero-integrations/monerophp/pull/74
This commit is contained in:
parent
7ed94d3122
commit
eb9f3a3294
1 changed files with 3 additions and 2 deletions
|
@ -8414,8 +8414,9 @@ bool wallet2::check_spend_proof(const crypto::hash &txid, const std::string &mes
|
||||||
}
|
}
|
||||||
std::vector<std::vector<crypto::signature>> signatures = { std::vector<crypto::signature>(1) };
|
std::vector<std::vector<crypto::signature>> signatures = { std::vector<crypto::signature>(1) };
|
||||||
const size_t sig_len = tools::base58::encode(std::string((const char *)&signatures[0][0], sizeof(crypto::signature))).size();
|
const size_t sig_len = tools::base58::encode(std::string((const char *)&signatures[0][0], sizeof(crypto::signature))).size();
|
||||||
THROW_WALLET_EXCEPTION_IF(sig_str.size() != header_len + num_sigs * sig_len,
|
if( sig_str.size() != header_len + num_sigs * sig_len ) {
|
||||||
error::wallet_internal_error, "incorrect signature size");
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
// decode base58
|
// decode base58
|
||||||
signatures.clear();
|
signatures.clear();
|
||||||
|
|
Loading…
Reference in a new issue