This commit is contained in:
jl777
2016-11-18 07:32:46 -03:00
parent 60e0c887c5
commit fc318ffe5d
3 changed files with 46 additions and 8 deletions

View File

@@ -589,6 +589,29 @@ Value gettxout(const Array& params, bool fHelp)
return ret;
}
int32_t gettxout_scriptPubKey(uint8_t *scriptPubkey,int32_t maxsize,uint256 txid,int32_t n)
{
int32_t i,m; uint8_t *ptr;
LOCK(cs_main);
CCoins coins;
if (fMempool)
{
LOCK(mempool.cs);
CCoinsViewMemPool view(pcoinsTip,mempool);
if ( view.GetCoins(txid,coins) == 0 )
return(-1);
mempool.pruneSpent(txid, coins); // TODO: this should be done by the CCoinsViewMemPool
} else if ( pcoinsTip->GetCoins(txid,coins) == 0 )
return(-1);
if ( n < 0 || (unsigned int)n >= coins.vout.size() || coins.vout[n].IsNull() )
return(-1);
ptr = (uint8_t *)coins.vout[n].scriptPubKey.data();
m = coins.vout[n].scriptPubKey.size();
for (i=0; i<maxsize&&i<m; i++)
scriptPubKey[i] = ptr[i];
return(i);
}
Value verifychain(const Array& params, bool fHelp)
{
if (fHelp || params.size() > 2)