MCPcopy Create free account
hub / github.com/BTCGPU/BTCGPU / GetScriptForWitness

Function GetScriptForWitness

src/script/standard.cpp:325–337  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

323}
324
325CScript GetScriptForWitness(const CScript& redeemscript)
326{
327 txnouttype typ;
328 std::vector<std::vector<unsigned char> > vSolutions;
329 if (Solver(redeemscript, typ, vSolutions)) {
330 if (typ == TX_PUBKEY) {
331 return GetScriptForDestination(WitnessV0KeyHash(Hash160(vSolutions[0].begin(), vSolutions[0].end())));
332 } else if (typ == TX_PUBKEYHASH) {
333 return GetScriptForDestination(WitnessV0KeyHash(vSolutions[0]));
334 }
335 }
336 return GetScriptForDestination(WitnessV0ScriptHash(redeemscript));
337}
338
339bool IsValidDestination(const CTxDestination& dest) {
340 return dest.which() != 0;

Callers 9

MutateTxAddOutPubKeyFunction · 0.85
MutateTxAddOutMultiSigFunction · 0.85
MutateTxAddOutScriptFunction · 0.85
operator()Method · 0.85
BOOST_AUTO_TEST_CASEFunction · 0.85
BOOST_AUTO_TEST_CASEFunction · 0.85
BOOST_FIXTURE_TEST_CASEFunction · 0.85
BOOST_AUTO_TEST_CASEFunction · 0.85
SignTransactionFunction · 0.85

Calls 7

SolverFunction · 0.85
GetScriptForDestinationFunction · 0.85
WitnessV0KeyHashClass · 0.85
Hash160Function · 0.85
WitnessV0ScriptHashClass · 0.85
beginMethod · 0.45
endMethod · 0.45

Tested by 4

BOOST_AUTO_TEST_CASEFunction · 0.68
BOOST_AUTO_TEST_CASEFunction · 0.68
BOOST_FIXTURE_TEST_CASEFunction · 0.68
BOOST_AUTO_TEST_CASEFunction · 0.68