mirror of
https://github.com/rosenpass/rosenpass.git
synced 2025-12-18 13:24:38 +03:00
This finishes the last step of removing sodium.rs from the rosenpass crate itself and also removes the NOTHING and NONCE0 constants. Hashing functions now use destination parameters; rosenpass_constant_time::xor now does too.
23 lines
449 B
Rust
23 lines
449 B
Rust
#![no_main]
|
|
extern crate arbitrary;
|
|
extern crate rosenpass;
|
|
|
|
use libfuzzer_sys::fuzz_target;
|
|
|
|
use rosenpass_sodium::{hash::blake2b, init as sodium_init};
|
|
use rosenpass_to::To;
|
|
|
|
#[derive(arbitrary::Arbitrary, Debug)]
|
|
pub struct Blake2b {
|
|
pub key: [u8; 32],
|
|
pub data: Box<[u8]>,
|
|
}
|
|
|
|
fuzz_target!(|input: Blake2b| {
|
|
sodium_init().unwrap();
|
|
|
|
let mut out = [0u8; 32];
|
|
|
|
blake2b::hash(&input.key, &input.data).to(&mut out).unwrap();
|
|
});
|