Return improved error message when trying to spend Coinbase coins (#1373).

Extra parameter added to AvailableCoins to include or exclude Coinbase coins.
SelectCoins, used for sending taddr->taddr, will exclude Coinbase coins.

Added qa rpc test and a runtime parameter -regtestprotectcoinbase to enforce
the coinbase->zaddr consensus rule in regtest mode.
This commit is contained in:
Simon
2016-09-22 11:30:32 -07:00
parent f2c99399b8
commit 2b1cda3b6a
7 changed files with 182 additions and 9 deletions

View File

@@ -336,6 +336,11 @@ CChainParams &Params(CBaseChainParams::Network network) {
void SelectParams(CBaseChainParams::Network network) {
SelectBaseParams(network);
pCurrentParams = &Params(network);
// Some python qa rpc tests need to enforce the coinbase consensus rule
if (network == CBaseChainParams::REGTEST && mapArgs.count("-regtestprotectcoinbase")) {
regTestParams.SetRegTestCoinbaseMustBeProtected();
}
}
bool SelectParamsFromCommandLine()