@ -1130,45 +1130,46 @@ UniValue getblockchaininfo(const JSONRPCRequest& request)
" Returns an object containing various state info regarding blockchain processing. \n "
" Returns an object containing various state info regarding blockchain processing. \n "
" \n Result: \n "
" \n Result: \n "
" { \n "
" { \n "
" \" chain \" : \" xxxx \" , (string) current network name as defined in BIP70 (main, test, regtest) \n "
" \" chain \" : \" xxxx \" , (string) current network name as defined in BIP70 (main, test, regtest) \n "
" \" blocks \" : xxxxxx, (numeric) the current number of blocks processed in the server \n "
" \" blocks \" : xxxxxx, (numeric) the current number of blocks processed in the server \n "
" \" headers \" : xxxxxx, (numeric) the current number of headers we have validated \n "
" \" headers \" : xxxxxx, (numeric) the current number of headers we have validated \n "
" \" bestblockhash \" : \" ... \" , (string) the hash of the currently best block \n "
" \" bestblockhash \" : \" ... \" , (string) the hash of the currently best block \n "
" \" difficulty \" : xxxxxx, (numeric) the current difficulty \n "
" \" difficulty \" : xxxxxx, (numeric) the current difficulty \n "
" \" mediantime \" : xxxxxx, (numeric) median time for the current best block \n "
" \" mediantime \" : xxxxxx, (numeric) median time for the current best block \n "
" \" verificationprogress \" : xxxx, (numeric) estimate of verification progress [0..1] \n "
" \" verificationprogress \" : xxxx, (numeric) estimate of verification progress [0..1] \n "
" \" chainwork \" : \" xxxx \" (string) total amount of work in active chain, in hexadecimal \n "
" \" initialblockdownload \" : xxxx, (bool) (debug information) estimate of whether this node is in Initial Block Download mode. \n "
" \" size_on_disk \" : xxxxxx, (numeric) the estimated size of the block and undo files on disk \n "
" \" chainwork \" : \" xxxx \" (string) total amount of work in active chain, in hexadecimal \n "
" \" pruned \" : xx, (boolean) if the blocks are subject to pruning \n "
" \" size_on_disk \" : xxxxxx, (numeric) the estimated size of the block and undo files on disk \n "
" \" pruneheight \" : xxxxxx, (numeric) lowest-height complete block stored (only present if pruning is enabled) \n "
" \" pruned \" : xx, (boolean) if the blocks are subject to pruning \n "
" \" automatic_pruning \" : xx, (boolean) whether automatic pruning is enabled (only present if pruning is enabled) \n "
" \" pruneheight \" : xxxxxx, (numeric) lowest-height complete block stored (only present if pruning is enabled) \n "
" \" automatic_pruning \" : xx, (boolean) whether automatic pruning is enabled (only present if pruning is enabled) \n "
" \" prune_target_size \" : xxxxxx, (numeric) the target size used by pruning (only present if automatic pruning is enabled) \n "
" \" prune_target_size \" : xxxxxx, (numeric) the target size used by pruning (only present if automatic pruning is enabled) \n "
" \" softforks \" : [ (array) status of softforks in progress \n "
" \" softforks \" : [ (array) status of softforks in progress \n "
" { \n "
" { \n "
" \" id \" : \" xxxx \" , (string) name of softfork \n "
" \" id \" : \" xxxx \" , (string) name of softfork \n "
" \" version \" : xx, (numeric) block version \n "
" \" version \" : xx, (numeric) block version \n "
" \" reject \" : { (object) progress toward rejecting pre-softfork blocks \n "
" \" reject \" : { (object) progress toward rejecting pre-softfork blocks \n "
" \" status \" : xx, (boolean) true if threshold reached \n "
" \" status \" : xx, (boolean) true if threshold reached \n "
" }, \n "
" }, \n "
" }, ... \n "
" }, ... \n "
" ], \n "
" ], \n "
" \" bip9_softforks \" : { (object) status of BIP9 softforks in progress \n "
" \" bip9_softforks \" : { (object) status of BIP9 softforks in progress \n "
" \" xxxx \" : { (string) name of the softfork \n "
" \" xxxx \" : { (string) name of the softfork \n "
" \" status \" : \" xxxx \" , (string) one of \" defined \" , \" started \" , \" locked_in \" , \" active \" , \" failed \" \n "
" \" status \" : \" xxxx \" , (string) one of \" defined \" , \" started \" , \" locked_in \" , \" active \" , \" failed \" \n "
" \" bit \" : xx, (numeric) the bit (0-28) in the block version field used to signal this softfork (only for \" started \" status) \n "
" \" bit \" : xx, (numeric) the bit (0-28) in the block version field used to signal this softfork (only for \" started \" status) \n "
" \" startTime \" : xx, (numeric) the minimum median time past of a block at which the bit gains its meaning \n "
" \" startTime \" : xx, (numeric) the minimum median time past of a block at which the bit gains its meaning \n "
" \" timeout \" : xx, (numeric) the median time past of a block at which the deployment is considered failed if not yet locked in \n "
" \" timeout \" : xx, (numeric) the median time past of a block at which the deployment is considered failed if not yet locked in \n "
" \" since \" : xx, (numeric) height of the first block to which the status applies \n "
" \" since \" : xx, (numeric) height of the first block to which the status applies \n "
" \" statistics \" : { (object) numeric statistics about BIP9 signalling for a softfork (only for \" started \" status) \n "
" \" statistics \" : { (object) numeric statistics about BIP9 signalling for a softfork (only for \" started \" status) \n "
" \" period \" : xx, (numeric) the length in blocks of the BIP9 signalling period \n "
" \" period \" : xx, (numeric) the length in blocks of the BIP9 signalling period \n "
" \" threshold \" : xx, (numeric) the number of blocks with the version bit set required to activate the feature \n "
" \" threshold \" : xx, (numeric) the number of blocks with the version bit set required to activate the feature \n "
" \" elapsed \" : xx, (numeric) the number of blocks elapsed since the beginning of the current period \n "
" \" elapsed \" : xx, (numeric) the number of blocks elapsed since the beginning of the current period \n "
" \" count \" : xx, (numeric) the number of blocks with the version bit set in the current period \n "
" \" count \" : xx, (numeric) the number of blocks with the version bit set in the current period \n "
" \" possible \" : xx (boolean) returns false if there are not enough blocks left in this period to pass activation threshold \n "
" \" possible \" : xx (boolean) returns false if there are not enough blocks left in this period to pass activation threshold \n "
" } \n "
" } \n "
" } \n "
" } \n "
" } \n "
" } \n "
" \" warnings \" : \" ... \" , (string) any network and blockchain warnings. \n "
" \" warnings \" : \" ... \" , (string) any network and blockchain warnings. \n "
" } \n "
" } \n "
" \n Examples: \n "
" \n Examples: \n "
+ HelpExampleCli ( " getblockchaininfo " , " " )
+ HelpExampleCli ( " getblockchaininfo " , " " )
@ -1185,6 +1186,7 @@ UniValue getblockchaininfo(const JSONRPCRequest& request)
obj . push_back ( Pair ( " difficulty " , ( double ) GetDifficulty ( ) ) ) ;
obj . push_back ( Pair ( " difficulty " , ( double ) GetDifficulty ( ) ) ) ;
obj . push_back ( Pair ( " mediantime " , ( int64_t ) chainActive . Tip ( ) - > GetMedianTimePast ( ) ) ) ;
obj . push_back ( Pair ( " mediantime " , ( int64_t ) chainActive . Tip ( ) - > GetMedianTimePast ( ) ) ) ;
obj . push_back ( Pair ( " verificationprogress " , GuessVerificationProgress ( Params ( ) . TxData ( ) , chainActive . Tip ( ) ) ) ) ;
obj . push_back ( Pair ( " verificationprogress " , GuessVerificationProgress ( Params ( ) . TxData ( ) , chainActive . Tip ( ) ) ) ) ;
obj . push_back ( Pair ( " initialblockdownload " , IsInitialBlockDownload ( ) ) ) ;
obj . push_back ( Pair ( " chainwork " , chainActive . Tip ( ) - > nChainWork . GetHex ( ) ) ) ;
obj . push_back ( Pair ( " chainwork " , chainActive . Tip ( ) - > nChainWork . GetHex ( ) ) ) ;
obj . push_back ( Pair ( " size_on_disk " , CalculateCurrentUsage ( ) ) ) ;
obj . push_back ( Pair ( " size_on_disk " , CalculateCurrentUsage ( ) ) ) ;
obj . push_back ( Pair ( " pruned " , fPruneMode ) ) ;
obj . push_back ( Pair ( " pruned " , fPruneMode ) ) ;