rdseed 0.1.0-beta.11

Rust interface for RDRAND / RDSEED CPU instructions
Documentation
// This is free and unencumbered software released into the public domain.
// SPDX-License-Identifier: CC0-1.0 OR Unlicense

// RDSEED

#[test]
fn fill_bytes_seed() {
   let mut data = [0u8; 16];
   // check if entire array is zero
   assert!(data.iter().all(|x| *x == 0), "Array not zeroed");
   rdseed::fill_bytes(&mut data, rdseed::get64);
   // check if at least one item is non zero
   assert!(data.iter().any(|x| *x != 0), "Array is all zero");
}

// RDRAND

#[test]
fn fill_bytes_rand() {
   let mut data = [0u8; 16];
   // check if entire array is zero
   assert!(data.iter().all(|x| *x == 0), "Array not zeroed");
   rdseed::fill_bytes(&mut data, rdseed::rand::get64);
   // check if at least one item is non zero
   assert!(data.iter().any(|x| *x != 0), "Array is all zero");
}