Cargo Features
[dependencies]
libafl_targets = { version = "0.14.0", default-features = false, features = ["std", "introspection", "libfuzzer", "libfuzzer_define_run_driver", "libfuzzer_interceptors", "libfuzzer_oom", "sanitizers_flags", "pointer_maps", "sancov_pcguard_edges", "sancov_pcguard_hitcounts", "sancov_value_profile", "sancov_8bit", "sancov_ngram4", "sancov_ngram8", "sancov_ctx", "sancov_cmplog", "sancov_pcguard", "sanitizer_interfaces", "clippy", "observers", "common", "coverage", "cmplog", "forkserver", "windows_asan", "whole_archive", "cmplog_extended_instrumentation", "function-logging", "track_hit_feedbacks"] }
- default = cmplog, common, coverage, forkserver, sanitizers_flags, std, windows_asan
-
These default features are set whenever
libafl_targets
is added without
somewhere in the dependency tree.default-features = false - std default libfuzzer?
-
libafl:
Feature Flags
General Features
Enables features that need rust's
std
lib to work, like print, env, ... supportAffects
libafl_targets::drcov
,libafl_targets::windows_asan
… - introspection
-
Enables introspection of libafl
libafl:
Collects performance statistics of the fuzzing pipeline and displays it on
Monitor
components - libfuzzer libfuzzer_define_run_driver? libfuzzer_interceptors? libfuzzer_no_link_main? libfuzzer_oom? = common, std
-
Affects
libafl_targets::libfuzzer
… - libfuzzer_no_link_main libfuzzer_define_run_driver = libfuzzer
- libfuzzer_interceptors = libfuzzer, sancov_cmplog
- libfuzzer_oom = libfuzzer
-
Affects
observers::oom
… - sanitizers_flags default
- pointer_maps
- sancov_pcguard_edges = coverage
-
Affects
coverage::edges_map_mut_slice
,coverage::std_edges_map_observer
,coverage::edges_max_num
,libafl_targets::sancov_pcguard
… - sancov_pcguard_hitcounts sancov_pcguard? = coverage
-
Affects
coverage::edges_map_mut_slice
,coverage::std_edges_map_observer
,coverage::edges_max_num
,libafl_targets::sancov_pcguard
… - sancov_value_profile = common
-
Affects
libafl_targets::sancov_cmp
… - sancov_8bit
-
Affects
libafl_targets::sancov_8bit
… - sancov_ngram4 = coverage
-
Affects
sancov_pcguard::PREV_ARRAY_4
,sancov_pcguard::SHR_4
,sancov_pcguard::NgramHook
,coverage::edges_map_mut_slice
,coverage::std_edges_map_observer
,coverage::edges_max_num
,libafl_targets::sancov_pcguard
… - sancov_ngram8 = coverage
-
Affects
sancov_pcguard::PREV_ARRAY_8
,sancov_pcguard::SHR_8
,sancov_pcguard::NgramHook
,coverage::edges_map_mut_slice
,coverage::std_edges_map_observer
,coverage::edges_max_num
,libafl_targets::sancov_pcguard
… - sancov_ctx = coverage
-
Affects
sancov_pcguard::CtxHook
,coverage::edges_map_mut_slice
,coverage::std_edges_map_observer
,coverage::edges_max_num
,libafl_targets::sancov_pcguard
… - sancov_cmplog libfuzzer_interceptors? = common
-
Defines cmp and __sanitizer_weak_hook functions. Use libfuzzer_interceptors to define interceptors (only compatible with Linux)
Affects
libafl_targets::sancov_cmp
… - sancov_pcguard = sancov_pcguard_hitcounts
- sanitizer_interfaces
-
Affects
libafl_targets::sanitizer_ifaces
… - clippy
-
Ignore compiler warnings during clippy
- observers = ahash, meminterval
- common default cmplog coverage forkserver function-logging? libfuzzer? sancov_cmplog? sancov_value_profile? windows_asan
-
Compile common C code defining sanitizer options and cross-platform intrinsics
- coverage default sancov_ctx? sancov_ngram4? sancov_ngram8? sancov_pcguard_edges? sancov_pcguard_hitcounts? = common
-
Compile C code definining coverage maps
Affects
libafl_targets::coverage
… - cmplog default = common
-
Compile C code defining cmp log maps
- forkserver default = common
-
Compile C code for forkserver support
Affects
libafl_targets::forkserver
… - windows_asan default = common
-
Compile C code for ASAN on Windows
Affects
libafl_targets::windows_asan
… - whole_archive
-
use +whole-archive to ensure the presence of weak symbols
- cmplog_extended_instrumentation
-
support for aflpp cmplog map, we will remove this once aflpp and libafl cmplog shares the same LLVM passes.
Affects
cmps::libafl_cmplog_map_extended
… - function-logging = common
-
Affects
libafl_targets::call
… - track_hit_feedbacks
-
Enables track_hit_feedbacks of libafl
libafl:
Tracks the Feedbacks and the Objectives that were interesting for a Testcase
Features from optional dependencies
In crates that don't use the dep:
syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.