Struct libafl::executors::inprocess::InProcessForkExecutor [−][src]
pub struct InProcessForkExecutor<'a, H, I, OT, S, SP> where
H: FnMut(&I) -> ExitKind,
I: Input,
OT: ObserversTuple<I, S>,
SP: ShMemProvider, { /* fields omitted */ }
Implementations
impl<'a, H, I, OT, S, SP> InProcessForkExecutor<'a, H, I, OT, S, SP> where
H: FnMut(&I) -> ExitKind,
I: Input,
OT: ObserversTuple<I, S>,
SP: ShMemProvider,
impl<'a, H, I, OT, S, SP> InProcessForkExecutor<'a, H, I, OT, S, SP> where
H: FnMut(&I) -> ExitKind,
I: Input,
OT: ObserversTuple<I, S>,
SP: ShMemProvider,
pub fn new<EM, OC, OF, Z>(
harness_fn: &'a mut H,
observers: OT,
_fuzzer: &mut Z,
_state: &mut S,
_event_mgr: &mut EM,
shmem_provider: SP
) -> Result<Self, Error> where
EM: EventFirer<I> + EventRestarter<S>,
OC: Corpus<I>,
OF: Feedback<I, S>,
S: HasSolutions<OC, I> + HasClientPerfMonitor,
Z: HasObjective<I, OF, S>,
Retrieve the harness function for a mutable reference.
Trait Implementations
impl<'a, EM, H, I, OT, S, Z, SP> Executor<EM, I, S, Z> for InProcessForkExecutor<'a, H, I, OT, S, SP> where
H: FnMut(&I) -> ExitKind,
I: Input,
OT: ObserversTuple<I, S>,
SP: ShMemProvider,
impl<'a, EM, H, I, OT, S, Z, SP> Executor<EM, I, S, Z> for InProcessForkExecutor<'a, H, I, OT, S, SP> where
H: FnMut(&I) -> ExitKind,
I: Input,
OT: ObserversTuple<I, S>,
SP: ShMemProvider,
Instruct the target about the input and run
fn with_observers<OT>(self, observers: OT) -> WithObservers<Self, OT> where
Self: Sized,
OT: ObserversTuple<I, S>,
fn with_observers<OT>(self, observers: OT) -> WithObservers<Self, OT> where
Self: Sized,
OT: ObserversTuple<I, S>,
Wraps this Executor with the given ObserversTuple
to implement HasObservers
. Read more
impl<'a, H, I, OT, S, SP> HasObservers<I, OT, S> for InProcessForkExecutor<'a, H, I, OT, S, SP> where
H: FnMut(&I) -> ExitKind,
I: Input,
OT: ObserversTuple<I, S>,
SP: ShMemProvider,
impl<'a, H, I, OT, S, SP> HasObservers<I, OT, S> for InProcessForkExecutor<'a, H, I, OT, S, SP> where
H: FnMut(&I) -> ExitKind,
I: Input,
OT: ObserversTuple<I, S>,
SP: ShMemProvider,
Auto Trait Implementations
impl<'a, H, I, OT, S, SP> RefUnwindSafe for InProcessForkExecutor<'a, H, I, OT, S, SP> where
H: RefUnwindSafe,
I: RefUnwindSafe,
OT: RefUnwindSafe,
S: RefUnwindSafe,
SP: RefUnwindSafe,
impl<'a, H, I, OT, S, SP> Send for InProcessForkExecutor<'a, H, I, OT, S, SP> where
H: Send,
I: Send,
OT: Send,
S: Send,
SP: Send,
impl<'a, H, I, OT, S, SP> Sync for InProcessForkExecutor<'a, H, I, OT, S, SP> where
H: Sync,
I: Sync,
OT: Sync,
S: Sync,
SP: Sync,
impl<'a, H, I, OT, S, SP> Unpin for InProcessForkExecutor<'a, H, I, OT, S, SP> where
I: Unpin,
OT: Unpin,
S: Unpin,
SP: Unpin,
impl<'a, H, I, OT, S, SP> !UnwindSafe for InProcessForkExecutor<'a, H, I, OT, S, SP>
Blanket Implementations
Mutably borrows from an owned value. Read more
type PreprendResult = Tail
type PreprendResult = Tail
The Resulting TupleList
, of an Prepend::prepend()
call,
including the prepended entry. Read more