Global Metrics
path: .metrics.loc.blank
old: 34.0
new: 3.0
path: .metrics.loc.sloc
old: 350.0
new: 85.0
path: .metrics.loc.lloc
old: 126.0
new: 0.0
path: .metrics.loc.cloc
old: 101.0
new: 11.0
path: .metrics.loc.ploc
old: 215.0
new: 71.0
path: .metrics.nargs.average
old: 4.5
new: null
path: .metrics.nargs.sum
old: 18.0
new: 0.0
path: .metrics.nom.total
old: 4.0
new: 0.0
path: .metrics.nom.functions
old: 4.0
new: 0.0
path: .metrics.mi.mi_original
old: 18.645120159547034
new: 58.71175018667792
path: .metrics.mi.mi_sei
old: -8.063284212259717
new: 35.752780481779745
path: .metrics.mi.mi_visual_studio
old: 10.90357904067078
new: 34.33435683431457
path: .metrics.halstead.effort
old: 937862.9810814108
new: 8013.720120820917
path: .metrics.halstead.level
old: 0.013054830287206267
new: 0.2545454545454546
path: .metrics.halstead.n2
old: 145.0
new: 84.0
path: .metrics.halstead.difficulty
old: 76.6
new: 3.928571428571429
path: .metrics.halstead.time
old: 52103.49894896726
new: 445.20667337893985
path: .metrics.halstead.volume
old: 12243.642050671158
new: 2039.856030754415
path: .metrics.halstead.N1
old: 879.0
new: 183.0
path: .metrics.halstead.purity_ratio
old: 0.7185217428029574
new: 1.741473980913818
path: .metrics.halstead.estimated_program_length
old: 1181.968266910865
new: 548.5643039878527
path: .metrics.halstead.N2
old: 766.0
new: 132.0
path: .metrics.halstead.bugs
old: 3.193780080544
new: 0.13348573557894178
path: .metrics.halstead.length
old: 1645.0
new: 315.0
path: .metrics.halstead.n1
old: 29.0
new: 5.0
path: .metrics.halstead.vocabulary
old: 174.0
new: 89.0
path: .metrics.nexits.sum
old: 3.0
new: 0.0
path: .metrics.nexits.average
old: 0.75
new: null
path: .metrics.cognitive.average
old: 15.0
new: null
path: .metrics.cognitive.sum
old: 60.0
new: 0.0
path: .metrics.cyclomatic.average
old: 7.4
new: 1.0
path: .metrics.cyclomatic.sum
old: 37.0
new: 3.0
Spaces Data
Minimal test - lines (15, 83)
path: .spaces[0].metrics.cyclomatic.average
old: 2.0
new: 1.0
path: .spaces[0].metrics.loc.sloc
old: 15.0
new: 69.0
path: .spaces[0].metrics.loc.lloc
old: 5.0
new: 0.0
path: .spaces[0].metrics.loc.ploc
old: 14.0
new: 67.0
path: .spaces[0].metrics.loc.cloc
old: 0.0
new: 1.0
path: .spaces[0].metrics.mi.mi_original
old: 96.39595158982368
new: 62.39633344752744
path: .spaces[0].metrics.mi.mi_visual_studio
old: 56.37190151451678
new: 36.489083887442945
path: .spaces[0].metrics.mi.mi_sei
old: 63.57274904720741
new: 23.79275233037461
path: .spaces[0].metrics.nom.functions
old: 1.0
new: 0.0
path: .spaces[0].metrics.nom.total
old: 1.0
new: 0.0
path: .spaces[0].metrics.nexits.sum
old: 1.0
new: 0.0
path: .spaces[0].metrics.nexits.average
old: 1.0
new: null
path: .spaces[0].metrics.cognitive.average
old: 1.0
new: null
path: .spaces[0].metrics.cognitive.sum
old: 1.0
new: 0.0
path: .spaces[0].metrics.halstead.N2
old: 35.0
new: 129.0
path: .spaces[0].metrics.halstead.N1
old: 36.0
new: 183.0
path: .spaces[0].metrics.halstead.estimated_program_length
old: 101.40868524464064
new: 532.9289048531197
path: .spaces[0].metrics.halstead.length
old: 71.0
new: 312.0
path: .spaces[0].metrics.halstead.vocabulary
old: 27.0
new: 87.0
path: .spaces[0].metrics.halstead.bugs
old: 0.1144527670064773
new: 0.1322864211924264
path: .spaces[0].metrics.halstead.effort
old: 6362.405238471811
new: 7905.96310429633
path: .spaces[0].metrics.halstead.level
old: 0.05306122448979592
new: 0.25426356589147286
path: .spaces[0].metrics.halstead.n2
old: 13.0
new: 82.0
path: .spaces[0].metrics.halstead.volume
old: 337.59701265360627
new: 2010.1983707048032
path: .spaces[0].metrics.halstead.n1
old: 14.0
new: 5.0
path: .spaces[0].metrics.halstead.purity_ratio
old: 1.428291341473812
new: 1.7081054642728195
path: .spaces[0].metrics.halstead.time
old: 353.4669576928784
new: 439.2201724609072
path: .spaces[0].metrics.halstead.difficulty
old: 18.846153846153847
new: 3.932926829268293
path: .spaces[0].metrics.nargs.average
old: 3.0
new: null
path: .spaces[0].metrics.nargs.sum
old: 3.0
new: 0.0
Code
namespace fuzzer {
struct FuzzingOptions {
int Verbosity = 1;
size_t MaxLen = 0;
size_t LenControl = 1000;
int UnitTimeoutSec = 300;
int TimeoutExitCode = 70;
int OOMExitCode = 71;
int InterruptExitCode = 72;
int ErrorExitCode = 77;
bool IgnoreTimeouts = true;
bool IgnoreOOMs = true;
bool IgnoreCrashes = false;
int MaxTotalTimeSec = 0;
int RssLimitMb = 0;
int MallocLimitMb = 0;
bool DoCrossOver = true;
int MutateDepth = 5;
bool ReduceDepth = false;
bool UseCounters = false;
bool UseMemmem = true;
bool UseCmp = false;
int UseValueProfile = false;
bool Shrink = false;
bool ReduceInputs = false;
int ReloadIntervalSec = 1;
bool ShuffleAtStartUp = true;
bool PreferSmall = true;
size_t MaxNumberOfRuns = -1L;
int ReportSlowUnits = 10;
bool OnlyASCII = false;
bool Entropic = false;
size_t EntropicFeatureFrequencyThreshold = 0xFF;
size_t EntropicNumberOfRarestFeatures = 100;
std::string OutputCorpus;
std::string ArtifactPrefix = "./";
std::string ExactArtifactPath;
std::string ExitOnSrcPos;
std::string ExitOnItem;
std::string FocusFunction;
std::string DataFlowTrace;
std::string CollectDataFlow;
std::string FeaturesDir;
std::string StopFile;
bool SaveArtifacts = true;
bool PrintNEW = true; // Print a status line when new units are found;
bool PrintNewCovPcs = false;
int PrintNewCovFuncs = 0;
bool PrintFinalStats = false;
bool PrintCorpusStats = false;
bool PrintCoverage = false;
bool DumpCoverage = false;
bool DetectLeaks = true;
int PurgeAllocatorIntervalSec = 1;
int TraceMalloc = 0;
bool HandleAbrt = false;
bool HandleBus = false;
bool HandleFpe = false;
bool HandleIll = false;
bool HandleInt = false;
bool HandleSegv = false;
bool HandleTerm = false;
bool HandleXfsz = false;
bool HandleUsr1 = false;
bool HandleUsr2 = false;
};
} // namespace fuzzer