LLVM  4.0.0
Classes | Public Member Functions | Static Public Member Functions | List of all members
fuzzer::Fuzzer Class Reference

#include <FuzzerInternal.h>

Classes

struct  Coverage
 

Public Member Functions

 Fuzzer (UserCallback CB, InputCorpus &Corpus, MutationDispatcher &MD, FuzzingOptions Options)
 
 ~Fuzzer ()
 
void Loop ()
 
void MinimizeCrashLoop (const Unit &U)
 
void ShuffleAndMinimize (UnitVector *V)
 
void InitializeTraceState ()
 
void RereadOutputCorpus (size_t MaxSize)
 
size_t secondsSinceProcessStartUp ()
 
bool TimedOut ()
 
size_t execPerSec ()
 
size_t getTotalNumberOfRuns ()
 
void ExecuteCallback (const uint8_t *Data, size_t Size)
 
size_t RunOne (const uint8_t *Data, size_t Size)
 
void Merge (const std::vector< std::string > &Corpora)
 
void CrashResistantMerge (const std::vector< std::string > &Args, const std::vector< std::string > &Corpora)
 
void CrashResistantMergeInternalStep (const std::string &ControlFilePath)
 
UnitVector FindExtraUnits (const UnitVector &Initial, const UnitVector &Extra)
 
MutationDispatcherGetMD ()
 
void PrintFinalStats ()
 
void SetMaxInputLen (size_t MaxInputLen)
 
void SetMaxMutationLen (size_t MaxMutationLen)
 
void RssLimitCallback ()
 
void ResetCoverage ()
 
bool InFuzzingThread () const
 
size_t GetCurrentUnitInFuzzingThead (const uint8_t **Data) const
 
void TryDetectingAMemoryLeak (const uint8_t *Data, size_t Size, bool DuringInitialCorpusExecution)
 
void HandleMalloc (size_t Size)
 

Static Public Member Functions

static void StaticAlarmCallback ()
 
static void StaticCrashSignalCallback ()
 
static void StaticInterruptCallback ()
 
static void StaticFileSizeExceedCallback ()
 

Detailed Description

Definition at line 32 of file FuzzerInternal.h.

Constructor & Destructor Documentation

fuzzer::Fuzzer::Fuzzer ( UserCallback  CB,
InputCorpus Corpus,
MutationDispatcher MD,
FuzzingOptions  Options 
)
fuzzer::Fuzzer::~Fuzzer ( )

Definition at line 202 of file FuzzerLoop.cpp.

Member Function Documentation

void fuzzer::Fuzzer::CrashResistantMerge ( const std::vector< std::string > &  Args,
const std::vector< std::string > &  Corpora 
)
void fuzzer::Fuzzer::CrashResistantMergeInternalStep ( const std::string &  ControlFilePath)
size_t fuzzer::Fuzzer::execPerSec ( )
inline

Definition at line 75 of file FuzzerInternal.h.

Referenced by PrintFinalStats().

void fuzzer::Fuzzer::ExecuteCallback ( const uint8_t *  Data,
size_t  Size 
)
UnitVector fuzzer::Fuzzer::FindExtraUnits ( const UnitVector Initial,
const UnitVector Extra 
)

Definition at line 604 of file FuzzerLoop.cpp.

References assert(), fuzzer::TracePC::ResetMaps(), and fuzzer::TPC.

size_t fuzzer::Fuzzer::GetCurrentUnitInFuzzingThead ( const uint8_t **  Data) const

Definition at line 526 of file FuzzerLoop.cpp.

References assert().

Referenced by fuzzer::TraceState::TryToAddDesiredData().

MutationDispatcher& fuzzer::Fuzzer::GetMD ( )
inline

Definition at line 97 of file FuzzerInternal.h.

Referenced by LLVMFuzzerMutate().

size_t fuzzer::Fuzzer::getTotalNumberOfRuns ( )
inline

Definition at line 80 of file FuzzerInternal.h.

void fuzzer::Fuzzer::HandleMalloc ( size_t  Size)
bool fuzzer::Fuzzer::InFuzzingThread ( ) const
inline
void fuzzer::Fuzzer::InitializeTraceState ( )

Definition at line 194 of file FuzzerTraceState.cpp.

References fuzzer::TS, and fuzzer::FuzzingOptions::UseMemcmp.

Referenced by Fuzzer().

void fuzzer::Fuzzer::Loop ( )
void fuzzer::Fuzzer::Merge ( const std::vector< std::string > &  Corpora)
void fuzzer::Fuzzer::MinimizeCrashLoop ( const Unit U)

Definition at line 794 of file FuzzerLoop.cpp.

References assert(), and i.

void fuzzer::Fuzzer::PrintFinalStats ( )
void fuzzer::Fuzzer::RereadOutputCorpus ( size_t  MaxSize)
void fuzzer::Fuzzer::ResetCoverage ( )

Definition at line 765 of file FuzzerLoop.cpp.

Referenced by Fuzzer().

void fuzzer::Fuzzer::RssLimitCallback ( )
size_t fuzzer::Fuzzer::RunOne ( const uint8_t *  Data,
size_t  Size 
)
size_t fuzzer::Fuzzer::secondsSinceProcessStartUp ( )
inline

Definition at line 64 of file FuzzerInternal.h.

References llvm::count(), and now().

void fuzzer::Fuzzer::SetMaxInputLen ( size_t  MaxInputLen)

Definition at line 396 of file FuzzerLoop.cpp.

References assert(), and fuzzer::Printf().

void fuzzer::Fuzzer::SetMaxMutationLen ( size_t  MaxMutationLen)

Definition at line 405 of file FuzzerLoop.cpp.

References assert().

void fuzzer::Fuzzer::ShuffleAndMinimize ( UnitVector V)
void fuzzer::Fuzzer::StaticAlarmCallback ( )
static

Definition at line 254 of file FuzzerLoop.cpp.

References assert(), and fuzzer::F.

void fuzzer::Fuzzer::StaticCrashSignalCallback ( )
static

Definition at line 259 of file FuzzerLoop.cpp.

References assert(), and fuzzer::F.

void fuzzer::Fuzzer::StaticFileSizeExceedCallback ( )
static

Definition at line 269 of file FuzzerLoop.cpp.

References fuzzer::GetPid(), and fuzzer::Printf().

void fuzzer::Fuzzer::StaticInterruptCallback ( )
static

Definition at line 264 of file FuzzerLoop.cpp.

References assert(), and fuzzer::F.

bool fuzzer::Fuzzer::TimedOut ( )
inline

Definition at line 69 of file FuzzerInternal.h.

void fuzzer::Fuzzer::TryDetectingAMemoryLeak ( const uint8_t *  Data,
size_t  Size,
bool  DuringInitialCorpusExecution 
)

Definition at line 673 of file FuzzerLoop.cpp.

References fuzzer::EF, and fuzzer::Printf().

Referenced by ShuffleAndMinimize().


The documentation for this class was generated from the following files: