1
Fork 0
mirror of https://github.com/RGBCube/uutils-coreutils synced 2025-07-28 03:27:44 +00:00

fuzz: adapt to API changes of rand

This commit is contained in:
Daniel Hofstetter 2025-01-30 10:57:17 +01:00
parent 527602248f
commit 9aec9dc454
13 changed files with 115 additions and 115 deletions

View file

@ -22,7 +22,7 @@ use std::process::Command;
static CMD_PATH: &str = "cksum";
fn generate_cksum_args() -> Vec<String> {
let mut rng = rand::thread_rng();
let mut rng = rand::rng();
let mut args = Vec::new();
let digests = [
@ -38,29 +38,29 @@ fn generate_cksum_args() -> Vec<String> {
"--binary",
];
if rng.gen_bool(0.3) {
if rng.random_bool(0.3) {
args.push("-a".to_string());
args.push(digests[rng.gen_range(0..digests.len())].to_string());
args.push(digests[rng.random_range(0..digests.len())].to_string());
}
if rng.gen_bool(0.2) {
args.push(digest_opts[rng.gen_range(0..digest_opts.len())].to_string());
if rng.random_bool(0.2) {
args.push(digest_opts[rng.random_range(0..digest_opts.len())].to_string());
}
if rng.gen_bool(0.15) {
if rng.random_bool(0.15) {
args.push("-l".to_string());
args.push(rng.gen_range(8..513).to_string());
args.push(rng.random_range(8..513).to_string());
}
if rng.gen_bool(0.05) {
for _ in 0..rng.gen_range(0..3) {
if rng.random_bool(0.05) {
for _ in 0..rng.random_range(0..3) {
args.push(format!("file_{}", generate_random_string(5)));
}
} else {
args.push("-c".to_string());
}
if rng.gen_bool(0.25) {
if rng.random_bool(0.25) {
if let Ok(file_path) = generate_random_file() {
args.push(file_path);
}
@ -68,7 +68,7 @@ fn generate_cksum_args() -> Vec<String> {
if args.is_empty() || !args.iter().any(|arg| arg.starts_with("file_")) {
args.push("-a".to_string());
args.push(digests[rng.gen_range(0..digests.len())].to_string());
args.push(digests[rng.random_range(0..digests.len())].to_string());
if let Ok(file_path) = generate_random_file() {
args.push(file_path);
@ -106,7 +106,7 @@ fn select_random_digest_opts<'a>(
) -> Vec<&'a str> {
digest_opts
.iter()
.filter(|_| rng.gen_bool(0.5))
.filter(|_| rng.random_bool(0.5))
.copied()
.collect()
}
@ -123,7 +123,7 @@ fuzz_target!(|_data: &[u8]| {
.map_or("md5", |index| &cksum_args[index + 1]);
let all_digest_opts = ["--base64", "--raw", "--tag", "--untagged"];
let mut rng = rand::thread_rng();
let mut rng = rand::rng();
let selected_digest_opts = select_random_digest_opts(&mut rng, &all_digest_opts);
if let Ok(checksum_file_path) =