Struct libafl::stages::concolic::ConcolicTracingStage [−][src]
pub struct ConcolicTracingStage<C, EM, I, OT, S, TE, Z> where
I: Input,
C: Corpus<I>,
TE: Executor<EM, I, S, Z> + HasObservers<I, OT, S>,
OT: ObserversTuple<I, S>,
S: HasClientPerfStats + HasExecutions + HasCorpus<C, I>, { /* fields omitted */ }
Expand description
Wraps a TracingStage
to add concolic observing.
Implementations
impl<C, EM, I, OT, S, TE, Z> ConcolicTracingStage<C, EM, I, OT, S, TE, Z> where
I: Input,
C: Corpus<I>,
TE: Executor<EM, I, S, Z> + HasObservers<I, OT, S>,
OT: ObserversTuple<I, S>,
S: HasClientPerfStats + HasExecutions + HasCorpus<C, I>,
impl<C, EM, I, OT, S, TE, Z> ConcolicTracingStage<C, EM, I, OT, S, TE, Z> where
I: Input,
C: Corpus<I>,
TE: Executor<EM, I, S, Z> + HasObservers<I, OT, S>,
OT: ObserversTuple<I, S>,
S: HasClientPerfStats + HasExecutions + HasCorpus<C, I>,
Creates a new default tracing stage using the given Executor
, observing traces from a ConcolicObserver
with the given name.
Trait Implementations
impl<C: Clone, EM: Clone, I: Clone, OT: Clone, S: Clone, TE: Clone, Z: Clone> Clone for ConcolicTracingStage<C, EM, I, OT, S, TE, Z> where
I: Input,
C: Corpus<I>,
TE: Executor<EM, I, S, Z> + HasObservers<I, OT, S>,
OT: ObserversTuple<I, S>,
S: HasClientPerfStats + HasExecutions + HasCorpus<C, I>,
impl<C: Clone, EM: Clone, I: Clone, OT: Clone, S: Clone, TE: Clone, Z: Clone> Clone for ConcolicTracingStage<C, EM, I, OT, S, TE, Z> where
I: Input,
C: Corpus<I>,
TE: Executor<EM, I, S, Z> + HasObservers<I, OT, S>,
OT: ObserversTuple<I, S>,
S: HasClientPerfStats + HasExecutions + HasCorpus<C, I>,
impl<C: Debug, EM: Debug, I: Debug, OT: Debug, S: Debug, TE: Debug, Z: Debug> Debug for ConcolicTracingStage<C, EM, I, OT, S, TE, Z> where
I: Input,
C: Corpus<I>,
TE: Executor<EM, I, S, Z> + HasObservers<I, OT, S>,
OT: ObserversTuple<I, S>,
S: HasClientPerfStats + HasExecutions + HasCorpus<C, I>,
impl<C: Debug, EM: Debug, I: Debug, OT: Debug, S: Debug, TE: Debug, Z: Debug> Debug for ConcolicTracingStage<C, EM, I, OT, S, TE, Z> where
I: Input,
C: Corpus<I>,
TE: Executor<EM, I, S, Z> + HasObservers<I, OT, S>,
OT: ObserversTuple<I, S>,
S: HasClientPerfStats + HasExecutions + HasCorpus<C, I>,
impl<E, C, EM, I, OT, S, TE, Z> Stage<E, EM, S, Z> for ConcolicTracingStage<C, EM, I, OT, S, TE, Z> where
I: Input,
C: Corpus<I>,
TE: Executor<EM, I, S, Z> + HasObservers<I, OT, S>,
OT: ObserversTuple<I, S>,
S: HasClientPerfStats + HasExecutions + HasCorpus<C, I>,
impl<E, C, EM, I, OT, S, TE, Z> Stage<E, EM, S, Z> for ConcolicTracingStage<C, EM, I, OT, S, TE, Z> where
I: Input,
C: Corpus<I>,
TE: Executor<EM, I, S, Z> + HasObservers<I, OT, S>,
OT: ObserversTuple<I, S>,
S: HasClientPerfStats + HasExecutions + HasCorpus<C, I>,
Auto Trait Implementations
impl<C, EM, I, OT, S, TE, Z> RefUnwindSafe for ConcolicTracingStage<C, EM, I, OT, S, TE, Z> where
C: RefUnwindSafe,
EM: RefUnwindSafe,
I: RefUnwindSafe,
OT: RefUnwindSafe,
S: RefUnwindSafe,
TE: RefUnwindSafe,
Z: RefUnwindSafe,
impl<C, EM, I, OT, S, TE, Z> Send for ConcolicTracingStage<C, EM, I, OT, S, TE, Z> where
C: Send,
EM: Send,
I: Send,
OT: Send,
S: Send,
TE: Send,
Z: Send,
impl<C, EM, I, OT, S, TE, Z> Sync for ConcolicTracingStage<C, EM, I, OT, S, TE, Z> where
C: Sync,
EM: Sync,
I: Sync,
OT: Sync,
S: Sync,
TE: Sync,
Z: Sync,
impl<C, EM, I, OT, S, TE, Z> Unpin for ConcolicTracingStage<C, EM, I, OT, S, TE, Z> where
C: Unpin,
EM: Unpin,
I: Unpin,
OT: Unpin,
S: Unpin,
TE: Unpin,
Z: Unpin,
impl<C, EM, I, OT, S, TE, Z> UnwindSafe for ConcolicTracingStage<C, EM, I, OT, S, TE, Z> where
C: UnwindSafe,
EM: UnwindSafe,
I: UnwindSafe,
OT: UnwindSafe,
S: UnwindSafe,
TE: UnwindSafe,
Z: UnwindSafe,
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
type Output = T
type Output = T
Should always be Self