ZeroErr
Loading...
Searching...
No Matches
zeroerr::FuzzTestWithDomain< TargetFunction, FuncType, Domain, Base > Struct Template Reference

FuzzTestWithDomain implements the Base class with the domain passed into. More...

#include <fuzztest.h>

Inheritance diagram for zeroerr::FuzzTestWithDomain< TargetFunction, FuncType, Domain, Base >:
Collaboration diagram for zeroerr::FuzzTestWithDomain< TargetFunction, FuncType, Domain, Base >:

Public Member Functions

 FuzzTestWithDomain (const Base &ft, const Domain &domain)
virtual void Run (int _count=1000, int _seed=0) override
Domain::CorpusType GetRandomCorpus ()
Domain::CorpusType TryParse (const zeroerr::String &input)
template<typename T, unsigned... I>
void apply (T args, detail::seq< I... >)
virtual void RunOneTime (const uint8_t *data, size_t size) override
virtual zeroerr::String MutateData (const uint8_t *data, size_t size, size_t, unsigned int seed) override

Public Attributes

Domain m_domain
Rng * m_rng

Detailed Description

template<typename TargetFunction, typename FuncType, typename Domain, typename Base>
struct zeroerr::FuzzTestWithDomain< TargetFunction, FuncType, Domain, Base >

FuzzTestWithDomain implements the Base class with the domain passed into.

Template Parameters
TargetFunctionThe target function to fuzz.
FuncTypeis the decomposition result of the target function.
DomainThe domain to use.
BaseThe base class to inherit from.

Constructor & Destructor Documentation

◆ FuzzTestWithDomain()

template<typename TargetFunction, typename FuncType, typename Domain, typename Base>
zeroerr::FuzzTestWithDomain< TargetFunction, FuncType, Domain, Base >::FuzzTestWithDomain ( const Base & ft,
const Domain & domain )
inline

Member Function Documentation

◆ apply()

template<typename TargetFunction, typename FuncType, typename Domain, typename Base>
template<typename T, unsigned... I>
void zeroerr::FuzzTestWithDomain< TargetFunction, FuncType, Domain, Base >::apply ( T args,
detail::seq< I... >  )
inline

◆ GetRandomCorpus()

template<typename TargetFunction, typename FuncType, typename Domain, typename Base>
Domain::CorpusType zeroerr::FuzzTestWithDomain< TargetFunction, FuncType, Domain, Base >::GetRandomCorpus ( )
inline

◆ MutateData()

template<typename TargetFunction, typename FuncType, typename Domain, typename Base>
virtual zeroerr::String zeroerr::FuzzTestWithDomain< TargetFunction, FuncType, Domain, Base >::MutateData ( const uint8_t * data,
size_t size,
size_t ,
unsigned int seed )
inlineoverridevirtual

◆ Run()

template<typename TargetFunction, typename FuncType, typename Domain, typename Base>
virtual void zeroerr::FuzzTestWithDomain< TargetFunction, FuncType, Domain, Base >::Run ( int _count = 1000,
int _seed = 0 )
inlineoverridevirtual

◆ RunOneTime()

template<typename TargetFunction, typename FuncType, typename Domain, typename Base>
virtual void zeroerr::FuzzTestWithDomain< TargetFunction, FuncType, Domain, Base >::RunOneTime ( const uint8_t * data,
size_t size )
inlineoverridevirtual

◆ TryParse()

template<typename TargetFunction, typename FuncType, typename Domain, typename Base>
Domain::CorpusType zeroerr::FuzzTestWithDomain< TargetFunction, FuncType, Domain, Base >::TryParse ( const zeroerr::String & input)
inline

Member Data Documentation

◆ m_domain

template<typename TargetFunction, typename FuncType, typename Domain, typename Base>
Domain zeroerr::FuzzTestWithDomain< TargetFunction, FuncType, Domain, Base >::m_domain

◆ m_rng

template<typename TargetFunction, typename FuncType, typename Domain, typename Base>
Rng* zeroerr::FuzzTestWithDomain< TargetFunction, FuncType, Domain, Base >::m_rng

The documentation for this struct was generated from the following file: