Struct libafl::events::llmp::LlmpRestartingEventManager [−][src]
pub struct LlmpRestartingEventManager<I, OT, S, SP, ST> where
I: Input,
OT: ObserversTuple,
SP: ShMemProvider + 'static,
ST: Stats, { /* fields omitted */ }
Expand description
A manager that can restart on the fly, storing states in-between (in on_resatrt
)
Implementations
impl<I, OT, S, SP, ST> LlmpRestartingEventManager<I, OT, S, SP, ST> where
I: Input,
OT: ObserversTuple,
SP: ShMemProvider + 'static,
ST: Stats,
[src]
impl<I, OT, S, SP, ST> LlmpRestartingEventManager<I, OT, S, SP, ST> where
I: Input,
OT: ObserversTuple,
SP: ShMemProvider + 'static,
ST: Stats,
[src]pub fn new(
llmp_mgr: LlmpEventManager<I, OT, S, SP, ST>,
sender: LlmpSender<SP>
) -> Self
[src]
pub fn new(
llmp_mgr: LlmpEventManager<I, OT, S, SP, ST>,
sender: LlmpSender<SP>
) -> Self
[src]Create a new runner, the executed child doing the actual fuzzing.
pub fn sender(&self) -> &LlmpSender<SP>
[src]
pub fn sender(&self) -> &LlmpSender<SP>
[src]Get the sender
pub fn sender_mut(&mut self) -> &mut LlmpSender<SP>
[src]
pub fn sender_mut(&mut self) -> &mut LlmpSender<SP>
[src]Get the sender (mut)
Trait Implementations
impl<I: Debug, OT: Debug, S: Debug, SP: Debug, ST: Debug> Debug for LlmpRestartingEventManager<I, OT, S, SP, ST> where
I: Input,
OT: ObserversTuple,
SP: ShMemProvider + 'static,
ST: Stats,
[src]
impl<I: Debug, OT: Debug, S: Debug, SP: Debug, ST: Debug> Debug for LlmpRestartingEventManager<I, OT, S, SP, ST> where
I: Input,
OT: ObserversTuple,
SP: ShMemProvider + 'static,
ST: Stats,
[src]impl<I, OT, S, SP, ST> EventFirer<I, S> for LlmpRestartingEventManager<I, OT, S, SP, ST> where
I: Input,
OT: ObserversTuple,
S: Serialize,
SP: ShMemProvider,
ST: Stats,
[src]
impl<I, OT, S, SP, ST> EventFirer<I, S> for LlmpRestartingEventManager<I, OT, S, SP, ST> where
I: Input,
OT: ObserversTuple,
S: Serialize,
SP: ShMemProvider,
ST: Stats,
[src]impl<E, I, OT, S, SP, ST, Z> EventProcessor<E, S, Z> for LlmpRestartingEventManager<I, OT, S, SP, ST> where
E: Executor<I>,
I: Input,
Z: IfInteresting<I, S> + IsInteresting<I, OT, S>,
OT: ObserversTuple,
SP: ShMemProvider + 'static,
ST: Stats,
[src]
impl<E, I, OT, S, SP, ST, Z> EventProcessor<E, S, Z> for LlmpRestartingEventManager<I, OT, S, SP, ST> where
E: Executor<I>,
I: Input,
Z: IfInteresting<I, S> + IsInteresting<I, OT, S>,
OT: ObserversTuple,
SP: ShMemProvider + 'static,
ST: Stats,
[src]fn process(
&mut self,
fuzzer: &mut Z,
state: &mut S,
executor: &mut E
) -> Result<usize, Error>
[src]
fn process(
&mut self,
fuzzer: &mut Z,
state: &mut S,
executor: &mut E
) -> Result<usize, Error>
[src]Lookup for incoming events and process them. Return the number of processes events or an error Read more
fn serialize_observers<OT>(&mut self, observers: &OT) -> Result<Vec<u8>, Error> where
OT: ObserversTuple,
[src]
fn serialize_observers<OT>(&mut self, observers: &OT) -> Result<Vec<u8>, Error> where
OT: ObserversTuple,
[src]Serialize all observers for this type and manager
fn deserialize_observers<OT>(
&mut self,
observers_buf: &[u8]
) -> Result<OT, Error> where
OT: ObserversTuple,
[src]
fn deserialize_observers<OT>(
&mut self,
observers_buf: &[u8]
) -> Result<OT, Error> where
OT: ObserversTuple,
[src]Deserialize all observers for this type and manager
impl<I, OT, S, SP, ST> EventRestarter<S> for LlmpRestartingEventManager<I, OT, S, SP, ST> where
I: Input,
OT: ObserversTuple,
S: Serialize,
SP: ShMemProvider,
ST: Stats,
[src]
impl<I, OT, S, SP, ST> EventRestarter<S> for LlmpRestartingEventManager<I, OT, S, SP, ST> where
I: Input,
OT: ObserversTuple,
S: Serialize,
SP: ShMemProvider,
ST: Stats,
[src]fn await_restart_safe(&mut self)
[src]
fn await_restart_safe(&mut self)
[src]The llmp client needs to wait until a broker mapped all pages, before shutting down. Otherwise, the OS may already have removed the shared maps,
impl<E, I, OT, S, SP, ST, Z> EventManager<E, I, S, Z> for LlmpRestartingEventManager<I, OT, S, SP, ST> where
E: Executor<I>,
I: Input,
S: Serialize,
Z: IfInteresting<I, S> + IsInteresting<I, OT, S>,
OT: ObserversTuple,
SP: ShMemProvider + 'static,
ST: Stats,
[src]
E: Executor<I>,
I: Input,
S: Serialize,
Z: IfInteresting<I, S> + IsInteresting<I, OT, S>,
OT: ObserversTuple,
SP: ShMemProvider + 'static,
ST: Stats,
Auto Trait Implementations
impl<I, OT, S, SP, ST> RefUnwindSafe for LlmpRestartingEventManager<I, OT, S, SP, ST> where
I: RefUnwindSafe,
OT: RefUnwindSafe,
S: RefUnwindSafe,
SP: RefUnwindSafe,
ST: RefUnwindSafe,
<SP as ShMemProvider>::Mem: RefUnwindSafe,
I: RefUnwindSafe,
OT: RefUnwindSafe,
S: RefUnwindSafe,
SP: RefUnwindSafe,
ST: RefUnwindSafe,
<SP as ShMemProvider>::Mem: RefUnwindSafe,
impl<I, OT, S, SP, ST> !Send for LlmpRestartingEventManager<I, OT, S, SP, ST>
impl<I, OT, S, SP, ST> !Sync for LlmpRestartingEventManager<I, OT, S, SP, ST>
impl<I, OT, S, SP, ST> Unpin for LlmpRestartingEventManager<I, OT, S, SP, ST> where
I: Unpin,
OT: Unpin,
S: Unpin,
SP: Unpin,
ST: Unpin,
<SP as ShMemProvider>::Mem: Unpin,
I: Unpin,
OT: Unpin,
S: Unpin,
SP: Unpin,
ST: Unpin,
<SP as ShMemProvider>::Mem: Unpin,
impl<I, OT, S, SP, ST> UnwindSafe for LlmpRestartingEventManager<I, OT, S, SP, ST> where
I: UnwindSafe,
OT: UnwindSafe,
S: UnwindSafe,
SP: UnwindSafe,
ST: UnwindSafe,
<SP as ShMemProvider>::Mem: UnwindSafe,
I: UnwindSafe,
OT: UnwindSafe,
S: UnwindSafe,
SP: UnwindSafe,
ST: UnwindSafe,
<SP as ShMemProvider>::Mem: UnwindSafe,
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
type Output = T
Should always be Self