From ecdefc5cb0974bf01e41b9280b7ff21dc8c12a46 Mon Sep 17 00:00:00 2001 From: Gregory Sanders Date: Wed, 19 Jun 2019 15:35:42 -0400 Subject: [PATCH] Remove script/standard dependence of ContextualCheckDynaFedHeader --- src/validation.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/validation.cpp b/src/validation.cpp index 01c926538f..06a18fdc3a 100644 --- a/src/validation.cpp +++ b/src/validation.cpp @@ -3510,7 +3510,9 @@ static bool ContextualCheckDynaFedHeader(const CBlockHeader& block, CValidationS // for v0, fedpegscript's scriptPubKey must match. v1+ is unencumbered. if (fedpeg_version == 0) { - CScript computed_program = GetScriptForDestination(WitnessV0ScriptHash(proposed.m_fedpegscript)); + uint256 fedpeg_program; + CSHA256().Write(proposed.m_fedpegscript.data(), proposed.m_fedpegscript.size()).Finalize(fedpeg_program.begin()); + CScript computed_program = CScript() << OP_0 << ToByteVector(fedpeg_program); if (computed_program != proposed.m_fedpeg_program) { return state.Invalid(false, REJECT_INVALID, "invalid-dyna-fed", "proposed v0 segwit fedpegscript must match proposed fedpeg witness program"); }