Module inputs

Source
Expand description

Inputs are the actual contents sent to a target for each exeuction.

Re-exports§

pub use bytes::BytesInput;
pub use value::ValueInput;
pub use bytessub::BytesSubInput;
pub use encoded::*;
pub use gramatron::*;
pub use generalized::*;
pub use multi::*;
pub use list::*;
pub use nautilus::*;

Modules§

bytes
The BytesInput is the “normal” input, a map of bytes, that can be sent directly to the client (As opposed to other, more abstract, inputs, like an Grammar-Based AST Input)
bytessub
BytesSubInput is a wrapper input that can be used to mutate parts of a byte slice
encoded
The EncodedInput is the “normal” input, a map of codes, that can be sent directly to the client.
generalized
The GeneralizedInput is an input that ca be generalized to represent a rule, used by Grimoire
gramatron
The gramatron grammar fuzzer
list
Definitions for inputs which have multiple distinct subcomponents.
multi
An input composed of multiple parts identified by a key.
nautilus
Input for the Nautilus grammar fuzzer methods
value
Newtype pattern style wrapper for Inputs This allows us to wrap common types as Input, such as alloc::vec::Vec<u8> as crate::inputs::BytesInput and use those for mutations.

Structs§

ClosureInputConverter
InputConverter that uses a closure to convert
NopBytesConverter
Basic NopBytesConverter with just one type that is not converting
NopInput
An input for tests, mainly. There is no real use much else.

Traits§

HasMutatorBytes
Contains mutable bytes
HasTargetBytes
Has a byte representation intended for the target. Can be represented with a vector of bytes. This representation is not necessarily deserializable. Instead, it can be used as bytes input for a target
Input
An input for the target
InputConverter
Convert between two input types with a state
InputToBytes
This trait can transfor any input to bytes
ResizableMutator
Contains resizable bytes

Type Aliases§

MutVecInputDeprecated
A wrapper type that allows us to use mutators for Mutators for &mut Vec.