
* remove unneeded loop in `SpliceMutator::mutate` previously we searched for the first and the last difference between exactly the same 2 inputs 3 times in a loop * remove unused struct fields * avoid allocating strings for `Transition`s * avoid allocating `String`s for `Stack`s * avoid allocating Strings for `Element`s * apply some clippy lints * some more clippy lints * simplify regex * remove superflous if condition * remove the Rc<_> in `Element` * small cleanups and regex fix * avoid allocating a vector for the culled pda * bug fix * bug fix * reintroduce the Rc, but make it use the *one* alloced VecDeque this time * slim down dependencies * use Box<[&str]> for storted state stacks this saves us a whopping 8 bytes ;), since we don't have to store the capacity * revert the changes from 9ffa715c10089f157e4e20563143a2df890c8ffe fixes a bug * apply clippy lint --------- Co-authored-by: Andrea Fioraldi <andreafioraldi@gmail.com>
LibAFL Utils
Welcome to the LibAFL Utils folder. Here, you find some helful utilities that may be helpful for successfull fuzzing campaigns.
DeExit: ldpreload exit lib
In the deexit
folder, you'll find a ldpreloadable library, that changes calls to exit
to abort()
s.
When a target exits, it quits, and LibAFL will not be able to catch this or recover.
Abort, on the other hand, raises an error LibAFL's inprocess executor will be able to catch, thanks to its signal handlers.
Gramatron: gramatron grammars and preprocessing utils
See https://github.com/HexHive/Gramatron
libafl_benches
This folder contains benchmarks for various things in LibAFL, like hash speeds and RNGs.
Run with cargo bench