Changeset View
Changeset View
Standalone View
Standalone View
src/script/sign.cpp
Show First 20 Lines • Show All 274 Lines • ▼ Show 20 Lines | bool SignatureExtractorChecker::CheckSig(const std::vector<uint8_t> &scriptSig, | ||||
} | } | ||||
return false; | return false; | ||||
} | } | ||||
namespace { | namespace { | ||||
struct Stacks { | struct Stacks { | ||||
std::vector<valtype> script; | std::vector<valtype> script; | ||||
Stacks() {} | Stacks() = delete; | ||||
explicit Stacks(const std::vector<valtype> &scriptSigStack_) | Stacks(const Stacks &) = delete; | ||||
: script(scriptSigStack_) {} | |||||
explicit Stacks(const SignatureData &data) { | explicit Stacks(const SignatureData &data) { | ||||
EvalScript(script, data.scriptSig, MANDATORY_SCRIPT_VERIFY_FLAGS, | EvalScript(script, data.scriptSig, MANDATORY_SCRIPT_VERIFY_FLAGS, | ||||
BaseSignatureChecker()); | BaseSignatureChecker()); | ||||
} | } | ||||
SignatureData Output() const { | |||||
SignatureData result; | |||||
result.scriptSig = PushAll(script); | |||||
return result; | |||||
} | |||||
}; | }; | ||||
} // namespace | } // namespace | ||||
// Extracts signatures and scripts from incomplete scriptSigs. Please do not | // Extracts signatures and scripts from incomplete scriptSigs. Please do not | ||||
// extend this, use PSBT instead | // extend this, use PSBT instead | ||||
SignatureData DataFromTransaction(const CMutableTransaction &tx, | SignatureData DataFromTransaction(const CMutableTransaction &tx, | ||||
unsigned int nIn, const CTxOut &txout) { | unsigned int nIn, const CTxOut &txout) { | ||||
SignatureData data; | SignatureData data; | ||||
▲ Show 20 Lines • Show All 325 Lines • Show Last 20 Lines |