Changeset View
Changeset View
Standalone View
Standalone View
src/test/fuzz/signature_checker.cpp
Show All 19 Lines | |||||
namespace { | namespace { | ||||
class FuzzedSignatureChecker : public BaseSignatureChecker { | class FuzzedSignatureChecker : public BaseSignatureChecker { | ||||
FuzzedDataProvider &m_fuzzed_data_provider; | FuzzedDataProvider &m_fuzzed_data_provider; | ||||
public: | public: | ||||
FuzzedSignatureChecker(FuzzedDataProvider &fuzzed_data_provider) | FuzzedSignatureChecker(FuzzedDataProvider &fuzzed_data_provider) | ||||
: m_fuzzed_data_provider(fuzzed_data_provider) {} | : m_fuzzed_data_provider(fuzzed_data_provider) {} | ||||
virtual bool CheckSig(const std::vector<uint8_t> &scriptSig, | bool CheckSig(const std::vector<uint8_t> &scriptSig, | ||||
const std::vector<uint8_t> &vchPubKey, | const std::vector<uint8_t> &vchPubKey, | ||||
const CScript &scriptCode, uint32_t flags) const { | const CScript &scriptCode, uint32_t flags) const override { | ||||
return m_fuzzed_data_provider.ConsumeBool(); | return m_fuzzed_data_provider.ConsumeBool(); | ||||
} | } | ||||
virtual bool CheckLockTime(const CScriptNum &nLockTime) const { | bool CheckLockTime(const CScriptNum &nLockTime) const override { | ||||
return m_fuzzed_data_provider.ConsumeBool(); | return m_fuzzed_data_provider.ConsumeBool(); | ||||
} | } | ||||
virtual bool CheckSequence(const CScriptNum &nSequence) const { | bool CheckSequence(const CScriptNum &nSequence) const override { | ||||
return m_fuzzed_data_provider.ConsumeBool(); | return m_fuzzed_data_provider.ConsumeBool(); | ||||
} | } | ||||
virtual ~FuzzedSignatureChecker() {} | virtual ~FuzzedSignatureChecker() {} | ||||
}; | }; | ||||
} // namespace | } // namespace | ||||
void test_one_input(const std::vector<uint8_t> &buffer) { | void test_one_input(const std::vector<uint8_t> &buffer) { | ||||
Show All 26 Lines |