InterestingWordMutator

Trait InterestingWordMutator 

Source
pub(crate) trait InterestingWordMutator:
    Sized
    + Copy
    + Debug {
    // Required methods
    fn mutate_interesting_byte(
        self,
        size: usize,
        test_runner: &mut TestRunner,
    ) -> Option<Self>;
    fn mutate_interesting_word(
        self,
        size: usize,
        test_runner: &mut TestRunner,
    ) -> Option<Self>;
    fn mutate_interesting_dword(
        self,
        size: usize,
        test_runner: &mut TestRunner,
    ) -> Option<Self>;
}
Expand description

Mutator that changes the current value by randomly injecting interesting words (for uint, int, address and fixed bytes) - see https://github.com/AFLplusplus/LibAFL/blob/90cb9a2919faf386e0678870e52784070cdac4b6/crates/libafl/src/mutators/mutations.rs#L88-L123.

Required Methods§

Source

fn mutate_interesting_byte( self, size: usize, test_runner: &mut TestRunner, ) -> Option<Self>

Source

fn mutate_interesting_word( self, size: usize, test_runner: &mut TestRunner, ) -> Option<Self>

Source

fn mutate_interesting_dword( self, size: usize, test_runner: &mut TestRunner, ) -> Option<Self>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl InterestingWordMutator for Address

Source§

fn mutate_interesting_byte( self, _size: usize, test_runner: &mut TestRunner, ) -> Option<Self>

Source§

fn mutate_interesting_word( self, _size: usize, test_runner: &mut TestRunner, ) -> Option<Self>

Source§

fn mutate_interesting_dword( self, _size: usize, test_runner: &mut TestRunner, ) -> Option<Self>

Source§

impl InterestingWordMutator for I256

Source§

fn mutate_interesting_byte( self, size: usize, test_runner: &mut TestRunner, ) -> Option<Self>

Source§

fn mutate_interesting_word( self, size: usize, test_runner: &mut TestRunner, ) -> Option<Self>

Source§

fn mutate_interesting_dword( self, size: usize, test_runner: &mut TestRunner, ) -> Option<Self>

Source§

impl InterestingWordMutator for U256

Source§

fn mutate_interesting_byte( self, size: usize, test_runner: &mut TestRunner, ) -> Option<Self>

Source§

fn mutate_interesting_word( self, size: usize, test_runner: &mut TestRunner, ) -> Option<Self>

Source§

fn mutate_interesting_dword( self, size: usize, test_runner: &mut TestRunner, ) -> Option<Self>

Source§

impl InterestingWordMutator for Word

Source§

fn mutate_interesting_byte( self, size: usize, test_runner: &mut TestRunner, ) -> Option<Self>

Source§

fn mutate_interesting_word( self, size: usize, test_runner: &mut TestRunner, ) -> Option<Self>

Source§

fn mutate_interesting_dword( self, size: usize, test_runner: &mut TestRunner, ) -> Option<Self>

Implementors§