aboutsummaryrefslogtreecommitdiff
path: root/src/daemon/rpc_command_executor.cpp
diff options
context:
space:
mode:
authormoneromooo-monero <moneromooo-monero@users.noreply.github.com>2015-08-09 16:24:18 +0100
committermoneromooo-monero <moneromooo-monero@users.noreply.github.com>2015-08-09 16:25:05 +0100
commit08229335240e33acc848fa88da1c16e29df2b209 (patch)
treedf369cd7741c573822a8f7e43c27d88513e2afb0 /src/daemon/rpc_command_executor.cpp
parentdaemon: fix print_tx not find transactions (diff)
downloadmonero-08229335240e33acc848fa88da1c16e29df2b209.tar.xz
daemon: print a decoded tx in print_tx
in addition to the raw hex representation
Diffstat (limited to 'src/daemon/rpc_command_executor.cpp')
-rw-r--r--src/daemon/rpc_command_executor.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/daemon/rpc_command_executor.cpp b/src/daemon/rpc_command_executor.cpp
index 96f55ac25..b9ef3513c 100644
--- a/src/daemon/rpc_command_executor.cpp
+++ b/src/daemon/rpc_command_executor.cpp
@@ -492,7 +492,25 @@ bool t_rpc_command_executor::print_transaction(crypto::hash transaction_hash) {
if (1 == res.txs_as_hex.size())
{
+ // first as hex
tools::success_msg_writer() << res.txs_as_hex.front();
+
+ // then as json
+ crypto::hash tx_hash, tx_prefix_hash;
+ cryptonote::transaction tx;
+ cryptonote::blobdata blob;
+ if (!string_tools::parse_hexstr_to_binbuff(res.txs_as_hex.front(), blob))
+ {
+ tools::fail_msg_writer() << "Failed to parse tx";
+ }
+ else if (!cryptonote::parse_and_validate_tx_from_blob(blob, tx, tx_hash, tx_prefix_hash))
+ {
+ tools::fail_msg_writer() << "Failed to parse tx blob";
+ }
+ else
+ {
+ tools::success_msg_writer() << cryptonote::obj_to_json_str(tx) << std::endl;
+ }
}
else
{