diff options
author | Wladimir J. van der Laan <laanwj@gmail.com> | 2016-07-26 14:21:04 +0200 |
---|---|---|
committer | Wladimir J. van der Laan <laanwj@gmail.com> | 2016-07-26 14:24:11 +0200 |
commit | 4b1a4d8810f9d84d0e03dc02b53fd910606a5544 (patch) | |
tree | 9c4a37f2790206db491774e3b9b882bccfe02a37 /src/main.cpp | |
parent | 618c9dd8c651f15ea37a09d3ee4fa4426c75ac02 (diff) | |
parent | c59c434b7d1211c13f7904b9bc675e16910a1c0a (diff) | |
download | bitcoin-4b1a4d8810f9d84d0e03dc02b53fd910606a5544.tar.xz |
Merge #8381: Make witness v0 outputs non-standard
c59c434 qa: Add test for standardness of segwit v0 outputs (Suhas Daftuar)
1ffaff2 Make witness v0 outputs non-standard before segwit activation (Johnson Lau)
Diffstat (limited to 'src/main.cpp')
-rw-r--r-- | src/main.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/main.cpp b/src/main.cpp index ed1b9a985d..052b739326 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1143,13 +1143,14 @@ bool AcceptToMemoryPoolWorker(CTxMemPool& pool, CValidationState& state, const C } // Reject transactions with witness before segregated witness activates (override with -prematurewitness) - if (!GetBoolArg("-prematurewitness",false) && !tx.wit.IsNull() && !IsWitnessEnabled(chainActive.Tip(), Params().GetConsensus())) { + bool witnessEnabled = IsWitnessEnabled(chainActive.Tip(), Params().GetConsensus()); + if (!GetBoolArg("-prematurewitness",false) && !tx.wit.IsNull() && !witnessEnabled) { return state.DoS(0, false, REJECT_NONSTANDARD, "no-witness-yet", true); } // Rather not work on nonstandard transactions (unless -testnet/-regtest) string reason; - if (fRequireStandard && !IsStandardTx(tx, reason)) + if (fRequireStandard && !IsStandardTx(tx, reason, witnessEnabled)) return state.DoS(0, false, REJECT_NONSTANDARD, reason); // Only accept nLockTime-using transactions that can be mined in the next |