From 07530fea57458da2d878d478eb5942d292051985 Mon Sep 17 00:00:00 2001 From: Andrew-Fryer <44042538+Andrew-Fryer@users.noreply.github.com> Date: Fri, 16 Jun 2023 20:06:07 -0400 Subject: [PATCH] Trigger feedback side effects during force-loading (#1317) * this triggers feedback side effects during force-loading * oops; correct typo in introspection branch --------- Co-authored-by: Dongjia "toka" Zhang --- libafl/src/fuzzer/mod.rs | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/libafl/src/fuzzer/mod.rs b/libafl/src/fuzzer/mod.rs index 6ea268dbb6..d8b34db513 100644 --- a/libafl/src/fuzzer/mod.rs +++ b/libafl/src/fuzzer/mod.rs @@ -507,6 +507,27 @@ where let observers = executor.observers(); // Always consider this to be "interesting" + // However, we still want to trigger the side effects of objectives and feedbacks. + #[cfg(not(feature = "introspection"))] + let _is_solution = self + .objective_mut() + .is_interesting(state, manager, &input, observers, &exit_kind)?; + + #[cfg(feature = "introspection")] + let _is_solution = self + .objective_mut() + .is_interesting_introspection(state, manager, &input, observers, &exit_kind)?; + + #[cfg(not(feature = "introspection"))] + let _is_corpus = self + .feedback_mut() + .is_interesting(state, manager, &input, observers, &exit_kind)?; + + #[cfg(feature = "introspection")] + let _is_corpus = self + .feedback_mut() + .is_interesting_introspection(state, manager, &input, observers, &exit_kind)?; + // Not a solution self.objective_mut().discard_metadata(state, &input)?;