From cafcc526953ad10123e7a209683849dd37124bf5 Mon Sep 17 00:00:00 2001 From: Brian Stafford Date: Tue, 24 May 2022 10:29:59 -0500 Subject: [PATCH] rpc: Add missing fields to getrawtransaction help text Co-authored-by: Jack Grigg --- src/rpc/rawtransaction.cpp | 89 ++++++++++++++++++++++++++++---------- 1 file changed, 65 insertions(+), 24 deletions(-) diff --git a/src/rpc/rawtransaction.cpp b/src/rpc/rawtransaction.cpp index 4de0e5bb6..5ee1d649d 100644 --- a/src/rpc/rawtransaction.cpp +++ b/src/rpc/rawtransaction.cpp @@ -295,35 +295,46 @@ UniValue getrawtransaction(const UniValue& params, bool fHelp) "\nResult (if verbose > 0):\n" "{\n" - " \"in_active_chain\": b, (bool) Whether specified block is in the active chain or not (only present with explicit \"blockhash\" argument)\n" - " \"hex\" : \"data\", (string) The serialized, hex-encoded data for 'txid'\n" - " \"txid\" : \"id\", (string) The transaction id (same as provided)\n" - " \"authdigest\" : \"id\", (string) The transaction's auth digest. For pre-v5 transactions this will be ffff..ffff\n" - " \"size\" : n, (numeric) The transaction size\n" - " \"version\" : n, (numeric) The version\n" - " \"locktime\" : ttt, (numeric) The lock time\n" - " \"expiryheight\" : ttt, (numeric, optional) The block height after which the transaction expires\n" - " \"vin\" : [ (array of json objects)\n" - " {\n" - " \"txid\": \"id\", (string) The transaction id\n" + " \"in_active_chain\": b, (bool) Whether specified block is in the active chain or not (only present with explicit \"blockhash\" argument)\n" + " \"hex\" : \"data\", (string) The serialized, hex-encoded data for 'txid'\n" + " \"txid\" : \"id\", (string) The transaction id (same as provided)\n" + " \"authdigest\" : \"id\", (string) The transaction's auth digest. For pre-v5 transactions this will be ffff..ffff\n" + " \"size\" : n, (numeric) The transaction size\n" + " \"overwintered\" : b, (bool, optional) Whether the overwintered flag is set\n" + " \"version\" : n, (numeric) The version\n" + " \"versiongroupid\" : \"hex\", (string, optional) The version group ID\n" + " \"locktime\" : ttt, (numeric) The lock time\n" + " \"expiryheight\" : ttt, (numeric, optional) The block height after which the transaction expires\n" + " \"vin\" : [ (array of json objects)\n" + " { (coinbase transactions)\n" + " \"coinbase\": \"hex\", (string) The coinbase scriptSig as hex\n" + " \"sequence\": n (numeric) The script sequence number\n" + " },\n" + " { (non-coinbase transactions)\n" + " \"txid\": \"id\", (string) The transaction id\n" " \"vout\": n, (numeric) \n" " \"scriptSig\": { (json object) The script\n" - " \"asm\": \"asm\", (string) asm\n" - " \"hex\": \"hex\" (string) hex\n" + " \"asm\": \"asm\", (string) asm\n" + " \"hex\": \"hex\" (string) hex\n" " },\n" " \"sequence\": n (numeric) The script sequence number\n" + " \"value\": n (numeric, optional) The value of the output being spent in " + CURRENCY_UNIT + "\n" + " \"valueSat\": n (numeric, optional) The value of the output being spent, in zats\n" + " \"address\": n (string, optional) The address of the output being spent\n" " }\n" " ,...\n" " ],\n" " \"vout\" : [ (array of json objects)\n" " {\n" " \"value\" : x.xxx, (numeric) The value in " + CURRENCY_UNIT + "\n" + " \"valueZat\" : n, (numeric) The value in zats\n" + " \"valueSat\" : n, (numeric) The value in zats\n" " \"n\" : n, (numeric) index\n" " \"scriptPubKey\" : { (json object)\n" - " \"asm\" : \"asm\", (string) the asm\n" - " \"hex\" : \"hex\", (string) the hex\n" + " \"asm\" : \"asm\", (string) the asm\n" + " \"hex\" : \"hex\", (string) the hex\n" " \"reqSigs\" : n, (numeric) The required sigs\n" - " \"type\" : \"pubkeyhash\", (string) The type, eg 'pubkeyhash'\n" + " \"type\" : \"pubkeyhash\", (string) The type, eg 'pubkeyhash'\n" " \"addresses\" : [ (json array of string)\n" " \"zcashaddress\" (string) Zcash address\n" " ,...\n" @@ -335,8 +346,10 @@ UniValue getrawtransaction(const UniValue& params, bool fHelp) " \"vjoinsplit\" : [ (array of json objects, only for version >= 2)\n" " {\n" " \"vpub_old\" : x.xxx, (numeric) public input value in " + CURRENCY_UNIT + "\n" + " \"vpub_oldZat\" : n, (numeric) public input value in zats\n" " \"vpub_new\" : x.xxx, (numeric) public output value in " + CURRENCY_UNIT + "\n" - " \"anchor\" : \"hex\", (string) the anchor\n" + " \"vpub_newZat\" : n, (numeric) public output value in zats\n" + " \"anchor\" : \"hex\", (string) the anchor\n" " \"nullifiers\" : [ (json array of string)\n" " \"hex\" (string) input note nullifier\n" " ,...\n" @@ -345,13 +358,13 @@ UniValue getrawtransaction(const UniValue& params, bool fHelp) " \"hex\" (string) output note commitment\n" " ,...\n" " ],\n" - " \"onetimePubKey\" : \"hex\", (string) the onetime public key used to encrypt the ciphertexts\n" - " \"randomSeed\" : \"hex\", (string) the random seed\n" + " \"onetimePubKey\" : \"hex\", (string) the onetime public key used to encrypt the ciphertexts\n" + " \"randomSeed\" : \"hex\", (string) the random seed\n" " \"macs\" : [ (json array of string)\n" " \"hex\" (string) input note MAC\n" " ,...\n" " ],\n" - " \"proof\" : \"hex\", (string) the zero-knowledge proof\n" + " \"proof\" : \"hex\", (string) the zero-knowledge proof\n" " \"ciphertexts\" : [ (json array of string)\n" " \"hex\" (string) output note ciphertext\n" " ,...\n" @@ -359,10 +372,38 @@ UniValue getrawtransaction(const UniValue& params, bool fHelp) " }\n" " ,...\n" " ],\n" - " \"blockhash\" : \"hash\", (string) the block hash\n" - " \"confirmations\" : n, (numeric) The confirmations\n" - " \"time\" : ttt, (numeric) The transaction time in seconds since epoch (Jan 1 1970 GMT)\n" - " \"blocktime\" : ttt (numeric) The block time in seconds since epoch (Jan 1 1970 GMT)\n" + " \"valueBalance\" : x.xxx, (numeric, optional) The net value of Sapling Spends minus Outputs in " + CURRENCY_UNIT + "\n" + " \"valueBalanceZat\" : n, (numeric, optional) The net value of Sapling Spends minus Outputs in " + MINOR_CURRENCY_UNIT + "\n" + " \"vShieldedSpend\" : [ (array of json objects, only for version >= 3)\n" + " {\n" + " \"cv\" : \"hex\", (string) Value commitment to the input note\n" + " \"anchor\" : \"hex\", (string) Merkle root of the Sapling note commitment tree\n" + " \"nullifier\" : \"hex\", (string) The nullifier of the input note\n" + " \"rk\" : \"hex\", (string) The randomized public key for spendAuthSig\n" + " \"proof\" : \"hex\", (string) A zero-knowledge proof using the Sapling Spend circuit\n" + " \"spendAuthSig\" : \"hex\", (string) A signature authorizing this Spend\n" + " }\n" + " ,...\n" + " ],\n" + " \"vShieldedOutput\" : [ (array of json objects, only for version >= 3)\n" + " {\n" + " \"cv\" : \"hex\", (string) Value commitment to the input note\n" + " \"cmu\" : \"hex\", (string) The u-coordinate of the note commitment for the output note\n" + " \"ephemeralKey\" : \"hex\", (string) A Jubjub public key\n" + " \"encCiphertext\" : \"hex\", (string) The output note encrypted to the recipient\n" + " \"outCiphertext\" : \"hex\", (string) A ciphertext enabling the sender to recover the output note\n" + " \"proof\" : \"hex\", (string) A zero-knowledge proof using the Sapling Output circuit\n" + " }\n" + " ,...\n" + " ],\n" + " \"bindingSig\" : \"hash\", (string, optional) The Sapling binding sig\n" + " \"joinSplitPubKey\" : \"hex\", (string, optional) An encoding of a JoinSplitSig public validating key\n" + " \"joinSplitSig\" : \"hex\", (string, optional) The Sprout binding signature\n" + " \"blockhash\" : \"hash\", (string) the block hash\n" + " \"height\" : n, (numeric) the block height\n" + " \"confirmations\" : n, (numeric) The confirmations\n" + " \"time\" : ttt, (numeric) The transaction time in seconds since epoch (Jan 1 1970 GMT)\n" + " \"blocktime\" : ttt (numeric) The block time in seconds since epoch (Jan 1 1970 GMT)\n" "}\n" "\nExamples:\n"