From ef0b177e1872d36852d70ab0b5e528e27c9be871 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Tue, 7 Mar 2023 23:24:13 +0100 Subject: [PATCH] add more fuzzers Many thanks to Jemma Nelson @fwip --- fuzz/Cargo.toml | 18 ++++++++++++++++++ fuzz/fuzz_targets/fuzz_parse_glob.rs | 12 ++++++++++++ fuzz/fuzz_targets/fuzz_parse_size.rs | 12 ++++++++++++ fuzz/fuzz_targets/fuzz_parse_time.rs | 12 ++++++++++++ 4 files changed, 54 insertions(+) create mode 100644 fuzz/fuzz_targets/fuzz_parse_glob.rs create mode 100644 fuzz/fuzz_targets/fuzz_parse_size.rs create mode 100644 fuzz/fuzz_targets/fuzz_parse_time.rs diff --git a/fuzz/Cargo.toml b/fuzz/Cargo.toml index 01ca79843..2509d7e57 100644 --- a/fuzz/Cargo.toml +++ b/fuzz/Cargo.toml @@ -27,3 +27,21 @@ name = "fuzz_date" path = "fuzz_targets/fuzz_date.rs" test = false doc = false + +[[bin]] +name = "fuzz_parse_glob" +path = "fuzz_targets/fuzz_parse_glob.rs" +test = false +doc = false + +[[bin]] +name = "fuzz_parse_size" +path = "fuzz_targets/fuzz_parse_size.rs" +test = false +doc = false + +[[bin]] +name = "fuzz_parse_time" +path = "fuzz_targets/fuzz_parse_time.rs" +test = false +doc = false diff --git a/fuzz/fuzz_targets/fuzz_parse_glob.rs b/fuzz/fuzz_targets/fuzz_parse_glob.rs new file mode 100644 index 000000000..8215e7124 --- /dev/null +++ b/fuzz/fuzz_targets/fuzz_parse_glob.rs @@ -0,0 +1,12 @@ +// spell-checker:ignore libfuzzer + +#![no_main] + +use libfuzzer_sys::fuzz_target; +use uucore::parse_glob; + +fuzz_target!(|data: &[u8]| { + if let Ok(s) = std::str::from_utf8(data) { + _ = parse_glob::from_str(s) + } +}); diff --git a/fuzz/fuzz_targets/fuzz_parse_size.rs b/fuzz/fuzz_targets/fuzz_parse_size.rs new file mode 100644 index 000000000..e67a2c566 --- /dev/null +++ b/fuzz/fuzz_targets/fuzz_parse_size.rs @@ -0,0 +1,12 @@ +// spell-checker:ignore libfuzzer + +#![no_main] + +use libfuzzer_sys::fuzz_target; +use uucore::parse_size::parse_size; + +fuzz_target!(|data: &[u8]| { + if let Ok(s) = std::str::from_utf8(data) { + _ = parse_size(s); + } +}); diff --git a/fuzz/fuzz_targets/fuzz_parse_time.rs b/fuzz/fuzz_targets/fuzz_parse_time.rs new file mode 100644 index 000000000..0a4bbbd84 --- /dev/null +++ b/fuzz/fuzz_targets/fuzz_parse_time.rs @@ -0,0 +1,12 @@ +// spell-checker:ignore libfuzzer + +#![no_main] + +use libfuzzer_sys::fuzz_target; +use uucore::parse_time; + +fuzz_target!(|data: &[u8]| { + if let Ok(s) = std::str::from_utf8(data) { + _ = parse_time::from_str(s); + } +});