Struct libafl::executors::forkserver::TimeoutForkserverExecutor
source · [−]pub struct TimeoutForkserverExecutor<E: Debug> { /* private fields */ }
Expand description
The timeout forkserver executor that wraps around the standard forkserver executor and sets a timeout before each run.
Implementations
sourceimpl<E: Debug> TimeoutForkserverExecutor<E>
impl<E: Debug> TimeoutForkserverExecutor<E>
sourcepub fn new(executor: E, exec_tmout: Duration) -> Result<Self, Error>
pub fn new(executor: E, exec_tmout: Duration) -> Result<Self, Error>
Create a new TimeoutForkserverExecutor
sourcepub fn with_signal(
executor: E,
exec_tmout: Duration,
signal: Signal
) -> Result<Self, Error>
pub fn with_signal(
executor: E,
exec_tmout: Duration,
signal: Signal
) -> Result<Self, Error>
Create a new TimeoutForkserverExecutor
that sends a user-defined signal to the timed-out process
Trait Implementations
sourceimpl<E: Debug + Debug> Debug for TimeoutForkserverExecutor<E>
impl<E: Debug + Debug> Debug for TimeoutForkserverExecutor<E>
sourceimpl<E: Debug, EM, I, S, Z> Executor<EM, I, S, Z> for TimeoutForkserverExecutor<E> where
I: Input + HasTargetBytes,
E: Executor<EM, I, S, Z> + HasForkserver,
impl<E: Debug, EM, I, S, Z> Executor<EM, I, S, Z> for TimeoutForkserverExecutor<E> where
I: Input + HasTargetBytes,
E: Executor<EM, I, S, Z> + HasForkserver,
sourcefn run_target(
&mut self,
_fuzzer: &mut Z,
_state: &mut S,
_mgr: &mut EM,
input: &I
) -> Result<ExitKind, Error>
fn run_target(
&mut self,
_fuzzer: &mut Z,
_state: &mut S,
_mgr: &mut EM,
input: &I
) -> Result<ExitKind, Error>
Instruct the target about the input and run
sourcefn 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
sourcefn post_run_reset(&mut self)
fn post_run_reset(&mut self)
Custom Reset Handler, e.g., to reset timers
sourceimpl<E, I, OT, S> HasObservers<I, OT, S> for TimeoutForkserverExecutor<E> where
E: HasObservers<I, OT, S>,
OT: ObserversTuple<I, S>,
impl<E, I, OT, S> HasObservers<I, OT, S> for TimeoutForkserverExecutor<E> where
E: HasObservers<I, OT, S>,
OT: ObserversTuple<I, S>,
Auto Trait Implementations
impl<E> RefUnwindSafe for TimeoutForkserverExecutor<E> where
E: RefUnwindSafe,
impl<E> Send for TimeoutForkserverExecutor<E> where
E: Send,
impl<E> Sync for TimeoutForkserverExecutor<E> where
E: Sync,
impl<E> Unpin for TimeoutForkserverExecutor<E> where
E: Unpin,
impl<E> UnwindSafe for TimeoutForkserverExecutor<E> where
E: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Tail, T> Prepend<T> for Tail
impl<Tail, T> Prepend<T> for Tail
type PreprendResult = Tail
type PreprendResult = Tail
The Resulting TupleList
, of an Prepend::prepend()
call,
including the prepended entry. Read more
sourcefn prepend(self, value: T) -> (T, <Tail as Prepend<T>>::PreprendResult)
fn prepend(self, value: T) -> (T, <Tail as Prepend<T>>::PreprendResult)
Prepend a value to this tuple, returning a new tuple with prepended value.