pub enum NoPadding {}
Expand description
Don’t pad the data. Useful for key wrapping. Padding will fail if the data cannot be fitted into blocks without padding.
use block_padding::{NoPadding, Padding};
let msg = b"test";
let n = msg.len();
let mut buffer = [0xff; 16];
buffer[..n].copy_from_slice(msg);
let padded_msg = NoPadding::pad(&mut buffer, n, 4).unwrap();
assert_eq!(padded_msg, b"test");
assert_eq!(NoPadding::unpad(&padded_msg).unwrap(), msg);
let padded_msg = NoPadding::pad(&mut buffer, n, 2).unwrap();
assert_eq!(padded_msg, b"test");
assert_eq!(NoPadding::unpad(&padded_msg).unwrap(), msg);
Trait Implementations§
Source§impl Padding for NoPadding
impl Padding for NoPadding
impl Copy for NoPadding
Auto Trait Implementations§
impl Freeze for NoPadding
impl RefUnwindSafe for NoPadding
impl Send for NoPadding
impl Sync for NoPadding
impl Unpin for NoPadding
impl UnwindSafe for NoPadding
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more