aboutsummaryrefslogtreecommitdiff
path: root/src/cryptonote_basic/cryptonote_format_utils.cpp
diff options
context:
space:
mode:
authorRiccardo Spagni <ric@spagni.net>2018-10-15 13:36:15 +0200
committerRiccardo Spagni <ric@spagni.net>2018-10-15 13:36:15 +0200
commitc531df734f5238963a6119b39c9c5c9487964e28 (patch)
tree8cd3cc465b682617f3f943f8eef92f17ac4b44be /src/cryptonote_basic/cryptonote_format_utils.cpp
parentad8e6ee8c76e368b69ba549e93a61358039cac7d (diff)
parent6844ae1b8d6b9fcbe4fda5ac5cb0e5a4242d850a (diff)
downloadmonzero-core-c531df734f5238963a6119b39c9c5c9487964e28.tar.gz
monzero-core-c531df734f5238963a6119b39c9c5c9487964e28.tar.xz
monzero-core-c531df734f5238963a6119b39c9c5c9487964e28.zip
Merge pull request #4389
6844ae1b tx_pool: avoid parsing a whole tx if only the prefix is needed (moneromooo-monero)
Diffstat (limited to 'src/cryptonote_basic/cryptonote_format_utils.cpp')
-rw-r--r--src/cryptonote_basic/cryptonote_format_utils.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/cryptonote_basic/cryptonote_format_utils.cpp b/src/cryptonote_basic/cryptonote_format_utils.cpp
index 5fcfa33f6..9e9c12605 100644
--- a/src/cryptonote_basic/cryptonote_format_utils.cpp
+++ b/src/cryptonote_basic/cryptonote_format_utils.cpp
@@ -199,6 +199,16 @@ namespace cryptonote
return true;
}
//---------------------------------------------------------------
+ bool parse_and_validate_tx_prefix_from_blob(const blobdata& tx_blob, transaction_prefix& tx)
+ {
+ std::stringstream ss;
+ ss << tx_blob;
+ binary_archive<false> ba(ss);
+ bool r = ::serialization::serialize_noeof(ba, tx);
+ CHECK_AND_ASSERT_MES(r, false, "Failed to parse transaction prefix from blob");
+ return true;
+ }
+ //---------------------------------------------------------------
bool parse_and_validate_tx_from_blob(const blobdata& tx_blob, transaction& tx, crypto::hash& tx_hash, crypto::hash& tx_prefix_hash)
{
std::stringstream ss;