Disable enforced coinbase protection in miner_tests.

This commit is contained in:
Sean Bowe 2016-06-14 15:18:52 -06:00
parent a180d0a6c6
commit d212ba320b
3 changed files with 9 additions and 1 deletions

View File

@ -62,6 +62,7 @@ bool fPruneMode = false;
bool fIsBareMultisigStd = true;
bool fCheckBlockIndex = false;
bool fCheckpointsEnabled = true;
bool fCoinbaseEnforcedProtectionEnabled = true;
size_t nCoinCacheUsage = 5000 * 300;
uint64_t nPruneTarget = 0;
bool fAlerts = DEFAULT_ALERTS;
@ -1631,7 +1632,9 @@ bool NonContextualCheckInputs(const CTransaction& tx, CValidationState &state, c
if (coins->IsCoinBase()) {
// Ensure that coinbases cannot be spent to transparent outputs
// Disabled on regtest
if (consensusParams.fCoinbaseMustBeProtected && !tx.vout.empty()) {
if (fCoinbaseEnforcedProtectionEnabled &&
consensusParams.fCoinbaseMustBeProtected &&
!tx.vout.empty()) {
return state.Invalid(
error("CheckInputs(): tried to spend coinbase with transparent outputs"),
REJECT_INVALID, "bad-txns-coinbase-spend-has-transparent-outputs");

View File

@ -116,6 +116,9 @@ extern bool fTxIndex;
extern bool fIsBareMultisigStd;
extern bool fCheckBlockIndex;
extern bool fCheckpointsEnabled;
// TODO: remove this flag by structuring our code such that
// it is unneeded for testing
extern bool fCoinbaseEnforcedProtectionEnabled;
extern size_t nCoinCacheUsage;
extern CFeeRate minRelayTxFee;
extern bool fAlerts;

View File

@ -147,6 +147,7 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
LOCK(cs_main);
fCheckpointsEnabled = false;
fCoinbaseEnforcedProtectionEnabled = false;
// We can't make transactions until we have inputs
// Therefore, load 100 blocks :)
@ -417,6 +418,7 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity)
delete tx;
fCheckpointsEnabled = true;
fCoinbaseEnforcedProtectionEnabled = true;
}
BOOST_AUTO_TEST_SUITE_END()