Struct libafl::executors::forkserver::ForkserverExecutorBuilder
source · [−]pub struct ForkserverExecutorBuilder<'a, SP> { /* private fields */ }
Expand description
The builder for ForkserverExecutor
Implementations
sourceimpl<'a, SP> ForkserverExecutorBuilder<'a, SP>
impl<'a, SP> ForkserverExecutorBuilder<'a, SP>
sourcepub fn build<I, OT, S>(
&mut self,
observers: OT
) -> Result<ForkserverExecutor<I, OT, S, SP>, Error> where
I: Input + HasTargetBytes,
OT: ObserversTuple<I, S>,
SP: ShMemProvider,
pub fn build<I, OT, S>(
&mut self,
observers: OT
) -> Result<ForkserverExecutor<I, OT, S, SP>, Error> where
I: Input + HasTargetBytes,
OT: ObserversTuple<I, S>,
SP: ShMemProvider,
Builds ForkserverExecutor
.
sourcepub fn autotokens(self, tokens: &'a mut Tokens) -> Self
pub fn autotokens(self, tokens: &'a mut Tokens) -> Self
Use autodict?
sourcepub fn parse_afl_cmdline<IT, O>(self, args: IT) -> Self where
IT: IntoIterator<Item = O>,
O: AsRef<OsStr>,
pub fn parse_afl_cmdline<IT, O>(self, args: IT) -> Self where
IT: IntoIterator<Item = O>,
O: AsRef<OsStr>,
Parse afl style command line
sourceimpl<'a> ForkserverExecutorBuilder<'a, StdShMemProvider>
impl<'a> ForkserverExecutorBuilder<'a, StdShMemProvider>
sourcepub fn new() -> ForkserverExecutorBuilder<'a, StdShMemProvider>
pub fn new() -> ForkserverExecutorBuilder<'a, StdShMemProvider>
Creates a new AFL
-style ForkserverExecutor
with the given target, arguments and observers.
This is the builder for ForkserverExecutor
This Forkserver will attempt to provide inputs over shared mem when shmem_provider
is given.
Else this forkserver will try to write the input to .cur_input
file.
If debug_child
is set, the child will print to stdout
/stderr
.
sourcepub fn arg<O>(self, arg: O) -> Self where
O: AsRef<OsStr>,
pub fn arg<O>(self, arg: O) -> Self where
O: AsRef<OsStr>,
Adds an argument to the harness’s commandline
sourcepub fn args<IT, O>(self, args: IT) -> Self where
IT: IntoIterator<Item = O>,
O: AsRef<OsStr>,
pub fn args<IT, O>(self, args: IT) -> Self where
IT: IntoIterator<Item = O>,
O: AsRef<OsStr>,
Adds arguments to the harness’s commandline
sourcepub fn env<K, V>(self, key: K, val: V) -> Self where
K: AsRef<OsStr>,
V: AsRef<OsStr>,
pub fn env<K, V>(self, key: K, val: V) -> Self where
K: AsRef<OsStr>,
V: AsRef<OsStr>,
Adds an environmental var to the harness’s commandline
sourcepub fn envs<IT, K, V>(self, vars: IT) -> Self where
IT: IntoIterator<Item = (K, V)>,
K: AsRef<OsStr>,
V: AsRef<OsStr>,
pub fn envs<IT, K, V>(self, vars: IT) -> Self where
IT: IntoIterator<Item = (K, V)>,
K: AsRef<OsStr>,
V: AsRef<OsStr>,
Adds environmental vars to the harness’s commandline
sourcepub fn arg_input_file<P: AsRef<Path>>(self, path: P) -> Self
pub fn arg_input_file<P: AsRef<Path>>(self, path: P) -> Self
Place the input at this position and set the filename for the input.
sourcepub fn arg_input_file_std(self) -> Self
pub fn arg_input_file_std(self) -> Self
Place the input at this position and set the default filename for the input.
sourcepub fn debug_child(self, debug_child: bool) -> Self
pub fn debug_child(self, debug_child: bool) -> Self
If debug_child
is set, the child will print to stdout
/stderr
.
sourcepub fn shmem_provider<SP: ShMemProvider>(
self,
shmem_provider: &'a mut SP
) -> ForkserverExecutorBuilder<'a, SP>
pub fn shmem_provider<SP: ShMemProvider>(
self,
shmem_provider: &'a mut SP
) -> ForkserverExecutorBuilder<'a, SP>
Shmem provider for forkserver’s shared memory testcase feature.
Trait Implementations
sourceimpl<'a, SP: Debug> Debug for ForkserverExecutorBuilder<'a, SP>
impl<'a, SP: Debug> Debug for ForkserverExecutorBuilder<'a, SP>
sourceimpl<'a> Default for ForkserverExecutorBuilder<'a, StdShMemProvider>
impl<'a> Default for ForkserverExecutorBuilder<'a, StdShMemProvider>
Auto Trait Implementations
impl<'a, SP> RefUnwindSafe for ForkserverExecutorBuilder<'a, SP> where
SP: RefUnwindSafe,
impl<'a, SP> Send for ForkserverExecutorBuilder<'a, SP> where
SP: Send,
impl<'a, SP> Sync for ForkserverExecutorBuilder<'a, SP> where
SP: Sync,
impl<'a, SP> Unpin for ForkserverExecutorBuilder<'a, SP>
impl<'a, SP> !UnwindSafe for ForkserverExecutorBuilder<'a, SP>
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.