Replace SCRIPT_VERIFY_NOCACHE by flag directly to checker

This commit is contained in:
Pieter Wuille
2014-09-14 04:48:32 +02:00
parent 5c1e798a8e
commit e790c370b5
13 changed files with 65 additions and 75 deletions

View File

@@ -14,21 +14,13 @@ class CPubKey;
class CachingSignatureChecker : public SignatureChecker
{
public:
CachingSignatureChecker(const CTransaction& txToIn, unsigned int nInIn) : SignatureChecker(txToIn, nInIn) {}
private:
bool store;
bool VerifySignature(const std::vector<unsigned char>& vchSig, const CPubKey& vchPubKey, const uint256& sighash, int flags) const;
public:
CachingSignatureChecker(const CTransaction& txToIn, unsigned int nInIn, bool storeIn=true) : SignatureChecker(txToIn, nInIn), store(storeIn) {}
bool VerifySignature(const std::vector<unsigned char>& vchSig, const CPubKey& vchPubKey, const uint256& sighash) const;
};
// Wrappers using a default SignatureChecker.
bool inline EvalScript(std::vector<std::vector<unsigned char> >& stack, const CScript& script, const CTransaction& txTo, unsigned int nIn, unsigned int flags)
{
return EvalScript(stack, script, flags, CachingSignatureChecker(txTo, nIn));
}
bool inline VerifyScript(const CScript& scriptSig, const CScript& scriptPubKey, const CTransaction& txTo, unsigned int nIn, unsigned int flags)
{
return VerifyScript(scriptSig, scriptPubKey, flags, CachingSignatureChecker(txTo, nIn));
}
#endif