age_setup/security/zeroize.rs
1use crate::errors::Result;
2use zeroize::Zeroize;
3#[must_use = "wipe_memory should be called to ensure memory is cleared"]
4pub(crate) fn wipe_memory(data: &mut [u8]) -> Result<()> {
5 data.zeroize();
6 Ok(())
7}
8#[cfg(test)]
9mod tests {
10 use super::*;
11 #[test]
12 fn test_wipe_memory_zeroizes() {
13 let mut data = vec![1, 2, 3, 4];
14 let result = wipe_memory(&mut data);
15 assert!(result.is_ok());
16 assert_eq!(data, vec![0, 0, 0, 0]);
17 }
18}