-
-
Notifications
You must be signed in to change notification settings - Fork 306
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature: Make executors and feedbacks easier to use outside of the fuzzing loop #2511
base: main
Are you sure you want to change the base?
Feature: Make executors and feedbacks easier to use outside of the fuzzing loop #2511
Conversation
…utside of LibAFLs Fuzzer loop
@addisoncrump can you take a look? It might interfere with #2438 somewhat (?) |
ideally the normal run_target would already be reusable / have minimal generic bounds/ have sensible Nop Variants for easy use. |
Sorry for the delay -- lots of IRL stuff right now. I will look at this tomorrow. |
Sorry for the delay, I think we can merge this. |
wait, i'll check this when i refactor (or before) executor. |
It would be nice to be able to use LibAFL components more easily outside of LibAFL's fuzzer harnessing (by which I mean the plug-and-play fuzzing loop) to allow for more reuse.
For example, I found myself ripping my hair out over trying to just run the forkserver with an observer to simply collect, aggregate and plot coverage. To do so, I had to provide types for fuzzers, feedbacks, schedulers, etc. even though none of those things were relevant for my use-case.
I ended up making changes like the ones in this PR in my own fork and it made it quite a bit nicer to use, now you can reuse some of the components and are only required to satisfy the directly needed type constraints for these components.