Trait libafl::stages::mutational::MutationalStage [−][src]
pub trait MutationalStage<C, E, EM, I, M, S, Z>: Stage<E, EM, S, Z> where
C: Corpus<I>,
M: Mutator<I, S>,
I: Input,
S: HasClientPerfStats + HasCorpus<C, I>,
Z: Evaluator<E, EM, I, S>, { fn mutator(&self) -> &M; fn mutator_mut(&mut self) -> &mut M; fn iterations(&self, state: &mut S) -> usize; fn perform_mutational(
&mut self,
fuzzer: &mut Z,
executor: &mut E,
state: &mut S,
manager: &mut EM,
corpus_idx: usize
) -> Result<(), Error> { ... } }
Expand description
A Mutational stage is the stage in a fuzzing run that mutates inputs. Mutational stages will usually have a range of mutations that are being applied to the input one by one, between executions.
Required methods
fn mutator_mut(&mut self) -> &mut M
fn mutator_mut(&mut self) -> &mut M
The mutator registered for this stage (mutable)
fn iterations(&self, state: &mut S) -> usize
fn iterations(&self, state: &mut S) -> usize
Gets the number of iterations this mutator should run for.
Provided methods
Implementors
impl<C, E, EM, I, M, R, S, Z> MutationalStage<C, E, EM, I, M, S, Z> for StdMutationalStage<C, E, EM, I, M, R, S, Z> where
C: Corpus<I>,
M: Mutator<I, S>,
I: Input,
R: Rand,
S: HasClientPerfStats + HasCorpus<C, I> + HasRand<R>,
Z: Evaluator<E, EM, I, S>,