ZeroErr
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 std::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 std::string MutateData (const uint8_t *data, size_t size, size_t max_size, unsigned int seed) override
 

Public Attributes

Domain m_domain
 
Rngm_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 ( 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 std::string zeroerr::FuzzTestWithDomain< TargetFunction, FuncType, Domain, Base >::MutateData ( const uint8_t *  data,
size_t  size,
size_t  max_size,
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 std::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: