 |
Bitcoin Core
22.99.0
P2P Digital Currency
|
Go to the documentation of this file.
23 script_mut = std::move(s);
45 const CScript& script = script_mut;
57 (void)script.
GetOp(pc, opcode);
58 std::vector<uint8_t> data;
59 (void)script.
GetOp(pc, opcode, data);
64 std::vector<uint8_t> program;
bool IsPayToWitnessScriptHash() const
CScript ConsumeScript(FuzzedDataProvider &fuzzed_data_provider, const bool maybe_p2wsh) noexcept
bool IsWitnessProgram(int &version, std::vector< unsigned char > &program) const
bool HasValidOps() const
Check if the script contains valid OP_CODES.
opcodetype
Script opcodes.
bool IsPayToScriptHash() const
opcodetype ConsumeOpcodeType(FuzzedDataProvider &fuzzed_data_provider) noexcept
bool IsPushOnly(const_iterator pc) const
Called by IsStandardTx and P2SH/BIP62 VerifyScript (which makes it consensus-critical).
size_t CallOneOf(FuzzedDataProvider &fuzzed_data_provider, Callables... callables)
std::vector< uint8_t > ConsumeRandomLengthByteVector(FuzzedDataProvider &fuzzed_data_provider, const std::optional< size_t > &max_length=std::nullopt) noexcept
#define LIMITED_WHILE(condition, limit)
Can be used to limit a theoretically unbounded loop.
Serialized script, used inside transaction inputs and outputs.
unsigned int GetSigOpCount(bool fAccurate) const
Pre-version-0.6, Bitcoin always counted CHECKMULTISIGs as 20 sigops.
bool IsUnspendable() const
Returns whether the script is guaranteed to fail at execution, regardless of the initial stack.
CScriptNum ConsumeScriptNum(FuzzedDataProvider &fuzzed_data_provider) noexcept
bool GetOp(const_iterator &pc, opcodetype &opcodeRet, std::vector< unsigned char > &vchRet) const