From 4f1481a12a8e01c9b017822b6ca74f24516c1ea2 Mon Sep 17 00:00:00 2001 From: David Tolnay Date: Sun, 15 May 2022 13:46:15 -0700 Subject: [PATCH] Assert size of string in fuzz target --- fuzz/fuzz_targets/fuzz_itoa.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/fuzz/fuzz_targets/fuzz_itoa.rs b/fuzz/fuzz_targets/fuzz_itoa.rs index 43d728b..bc02f53 100644 --- a/fuzz/fuzz_targets/fuzz_itoa.rs +++ b/fuzz/fuzz_targets/fuzz_itoa.rs @@ -2,6 +2,7 @@ use arbitrary::Arbitrary; use libfuzzer_sys::fuzz_target; +use std::mem; #[derive(Arbitrary, Debug)] enum IntegerInput { @@ -21,7 +22,7 @@ enum IntegerInput { fuzz_target!(|input: IntegerInput| { let mut buffer = itoa::Buffer::new(); - match input { + let string = match input { IntegerInput::I8(val) => buffer.format(val), IntegerInput::U8(val) => buffer.format(val), IntegerInput::I16(val) => buffer.format(val), @@ -35,4 +36,5 @@ fuzz_target!(|input: IntegerInput| { IntegerInput::Isize(val) => buffer.format(val), IntegerInput::Usize(val) => buffer.format(val), }; + assert!(string.len() <= mem::size_of::()); });