From b36881910855906f71887d8841008de743b6499b Mon Sep 17 00:00:00 2001 From: Andrea Fioraldi Date: Mon, 15 Feb 2021 15:36:31 +0100 Subject: [PATCH] fix buffer_(self_)copy debug asserts --- afl/src/mutators/mutations.rs | 8 ++++---- afl/src/mutators/scheduled.rs | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/afl/src/mutators/mutations.rs b/afl/src/mutators/mutations.rs index b0aae9489a..fc1368deb0 100644 --- a/afl/src/mutators/mutations.rs +++ b/afl/src/mutators/mutations.rs @@ -86,8 +86,8 @@ where #[inline] pub fn buffer_self_copy(data: &mut [u8], from: usize, to: usize, len: usize) { debug_assert!(data.len() > 0); - debug_assert!(from + len < data.len()); - debug_assert!(to + len < data.len()); + debug_assert!(from + len <= data.len()); + debug_assert!(to + len <= data.len()); if len != 0 && from != to { let ptr = data.as_mut_ptr(); unsafe { core::ptr::copy(ptr.offset(from as isize), ptr.offset(to as isize), len) } @@ -99,8 +99,8 @@ pub fn buffer_self_copy(data: &mut [u8], from: usize, to: usize, len: usize) { pub fn buffer_copy(dst: &mut [u8], src: &[u8], from: usize, to: usize, len: usize) { debug_assert!(dst.len() > 0); debug_assert!(src.len() > 0); - debug_assert!(from + len < src.len()); - debug_assert!(to + len < dst.len()); + debug_assert!(from + len <= src.len()); + debug_assert!(to + len <= dst.len()); let dst_ptr = dst.as_mut_ptr(); let src_ptr = src.as_ptr(); if len != 0 { diff --git a/afl/src/mutators/scheduled.rs b/afl/src/mutators/scheduled.rs index 9df163c78e..9714fedd4c 100644 --- a/afl/src/mutators/scheduled.rs +++ b/afl/src/mutators/scheduled.rs @@ -277,7 +277,7 @@ where pub fn new_default() -> Self { let mut scheduled = StdScheduledMutator::::new(); scheduled.add_mutation(mutation_bitflip); - /*scheduled.add_mutation(mutation_byteflip); + scheduled.add_mutation(mutation_byteflip); scheduled.add_mutation(mutation_byteinc); scheduled.add_mutation(mutation_bytedec); scheduled.add_mutation(mutation_byteneg); @@ -307,7 +307,7 @@ where scheduled.add_mutation(mutation_tokenreplace); scheduled.add_mutation(mutation_crossover_insert); - scheduled.add_mutation(mutation_crossover_replace);*/ + scheduled.add_mutation(mutation_crossover_replace); //scheduled.add_mutation(mutation_splice); HavocBytesMutator {