7 #ifndef PIVX_SCRIPT_INTERPRETER_H
8 #define PIVX_SCRIPT_INTERPRETER_H
104 virtual bool CheckSig(
const std::vector<unsigned char>& scriptSig,
const std::vector<unsigned char>& vchPubKey,
const CScript& scriptCode,
SigVersion sigversion)
const
137 bool CheckSig(
const std::vector<unsigned char>& scriptSig,
const std::vector<unsigned char>& vchPubKey,
const CScript& scriptCode,
SigVersion sigversion)
const override ;
int64_t CAmount
Amount in PIV (Can be negative)
virtual bool CheckColdStake(bool fAllowLastOutputFree, const CScript &prevoutScript, std::vector< valtype > &stack, unsigned int flags, ScriptError *error) const
virtual bool CheckLockTime(const CScriptNum &nLockTime) const
virtual bool CheckSig(const std::vector< unsigned char > &scriptSig, const std::vector< unsigned char > &vchPubKey, const CScript &scriptCode, SigVersion sigversion) const
virtual ~BaseSignatureChecker()
An encapsulated public key.
Serialized script, used inside transaction inputs and outputs.
The basic transaction that is broadcasted on the network and contained in blocks.
MutableTransactionSignatureChecker(const CMutableTransaction *txToIn, unsigned int nInIn, const CAmount &amount)
const PrecomputedTransactionData * precomTxData
TransactionSignatureChecker(const CTransaction *txToIn, unsigned int nInIn, const CAmount &amountIn)
bool CheckColdStake(bool fAllowLastOutputFree, const CScript &prevoutScript, std::vector< valtype > &stack, unsigned int flags, ScriptError *serror) const override
bool CheckSig(const std::vector< unsigned char > &scriptSig, const std::vector< unsigned char > &vchPubKey, const CScript &scriptCode, SigVersion sigversion) const override
virtual bool VerifySignature(const std::vector< unsigned char > &vchSig, const CPubKey &vchPubKey, const uint256 &sighash) const
bool CheckLockTime(const CScriptNum &nLockTime) const override
const CTransaction * txTo
TransactionSignatureChecker(const CTransaction *txToIn, unsigned int nInIn, const CAmount &amountIn, const PrecomputedTransactionData &cachedHashesIn)
@ SCRIPT_VERIFY_NULLDUMMY
@ SCRIPT_VERIFY_SIGPUSHONLY
@ SCRIPT_VERIFY_CHECKLOCKTIMEVERIFY
@ SCRIPT_VERIFY_STRICTENC
@ SCRIPT_VERIFY_CLEANSTACK
@ SCRIPT_VERIFY_MINIMALDATA
@ SCRIPT_VERIFY_DISCOURAGE_UPGRADABLE_NOPS
@ SCRIPT_VERIFY_EXCHANGEADDR
bool CheckSignatureEncoding(const std::vector< unsigned char > &vchSig, unsigned int flags, ScriptError *serror)
const unsigned int NOT_AN_INPUT
Special case nIn for signing Sapling txs.
uint256 SignatureHash(const CScript &scriptCode, const CTransaction &txTo, unsigned int nIn, int nHashType, const CAmount &amount, SigVersion sigversion, const PrecomputedTransactionData *cache=nullptr)
bool VerifyScript(const CScript &scriptSig, const CScript &scriptPubKey, unsigned int flags, const BaseSignatureChecker &checker, SigVersion sigversion, ScriptError *serror=nullptr)
bool EvalScript(std::vector< std::vector< unsigned char > > &stack, const CScript &script, unsigned int flags, const BaseSignatureChecker &checker, SigVersion sigversion, ScriptError *error=nullptr)
enum ScriptError_t ScriptError
A mutable version of CTransaction.
uint256 hashShieldedSpends
uint256 hashShieldedOutputs
PrecomputedTransactionData(const CTransaction &tx)
bool error(const char *fmt, const Args &... args)