diff options
| author | Ben Woosley <[email protected]> | 2018-07-15 12:19:12 -0400 |
|---|---|---|
| committer | Ben Woosley <[email protected]> | 2019-03-04 01:15:52 -0800 |
| commit | 73aaf4ecf825a4d18c802ca5dd3856ce9096915e (patch) | |
| tree | 186a73f817cfa2cfcad195ab5cca3afb0bf600e6 /src/script | |
| parent | Merge #15118: Refactor block file logic (diff) | |
| download | discoin-73aaf4ecf825a4d18c802ca5dd3856ce9096915e.tar.xz discoin-73aaf4ecf825a4d18c802ca5dd3856ce9096915e.zip | |
Make SignatureExtractorChecker private to its own file
It's only used here in DataFromTransaction
Diffstat (limited to 'src/script')
| -rw-r--r-- | src/script/sign.cpp | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/src/script/sign.cpp b/src/script/sign.cpp index 320956d0c..4af66008d 100644 --- a/src/script/sign.cpp +++ b/src/script/sign.cpp @@ -243,6 +243,7 @@ bool ProduceSignature(const SigningProvider& provider, const BaseSignatureCreato return sigdata.complete; } +namespace { class SignatureExtractorChecker final : public BaseSignatureChecker { private: @@ -251,21 +252,17 @@ private: public: SignatureExtractorChecker(SignatureData& sigdata, BaseSignatureChecker& checker) : sigdata(sigdata), checker(checker) {} - bool CheckSig(const std::vector<unsigned char>& scriptSig, const std::vector<unsigned char>& vchPubKey, const CScript& scriptCode, SigVersion sigversion) const override; -}; - -bool SignatureExtractorChecker::CheckSig(const std::vector<unsigned char>& scriptSig, const std::vector<unsigned char>& vchPubKey, const CScript& scriptCode, SigVersion sigversion) const -{ - if (checker.CheckSig(scriptSig, vchPubKey, scriptCode, sigversion)) { - CPubKey pubkey(vchPubKey); - sigdata.signatures.emplace(pubkey.GetID(), SigPair(pubkey, scriptSig)); - return true; + bool CheckSig(const std::vector<unsigned char>& scriptSig, const std::vector<unsigned char>& vchPubKey, const CScript& scriptCode, SigVersion sigversion) const override + { + if (checker.CheckSig(scriptSig, vchPubKey, scriptCode, sigversion)) { + CPubKey pubkey(vchPubKey); + sigdata.signatures.emplace(pubkey.GetID(), SigPair(pubkey, scriptSig)); + return true; + } + return false; } - return false; -} +}; -namespace -{ struct Stacks { std::vector<valtype> script; |