pub struct FscryptInoLblk64FileCipher { /* private fields */ }Expand description
File cipher for FSCRYPT_POLICY_FLAG_IV_INO_LBLK_64.
Produces a 64-bit DUN with the 32-bit inode number in bits 32..63 and the 32-bit file logical
block number (file_offset / 4096) in bits 0..31: (ino << 32) | block_num.
Implementations§
Source§impl FscryptInoLblk64FileCipher
impl FscryptInoLblk64FileCipher
pub fn new(key: &UnwrappedKey) -> Self
pub fn new_with_slot(slot: u8) -> Self
Trait Implementations§
Source§impl Cipher for FscryptInoLblk64FileCipher
impl Cipher for FscryptInoLblk64FileCipher
Source§fn encrypt(
&self,
_ino: u64,
_attribute_id: u64,
_device_offset: u64,
_file_offset: u64,
_buffer: MutPtrByteSlice<'_>,
) -> Result<(), Error>
fn encrypt( &self, _ino: u64, _attribute_id: u64, _device_offset: u64, _file_offset: u64, _buffer: MutPtrByteSlice<'_>, ) -> Result<(), Error>
Encrypts data in the
buffer. Read moreSource§fn decrypt(
&self,
_ino: u64,
_attribute_id: u64,
_device_offset: u64,
_file_offset: u64,
_buffer: MutPtrByteSlice<'_>,
) -> Result<(), Error>
fn decrypt( &self, _ino: u64, _attribute_id: u64, _device_offset: u64, _file_offset: u64, _buffer: MutPtrByteSlice<'_>, ) -> Result<(), Error>
Decrypt the data in
buffer. Read moreSource§fn encrypt_filename(
&self,
_object_id: u64,
_buffer: &mut Vec<u8>,
) -> Result<(), Error>
fn encrypt_filename( &self, _object_id: u64, _buffer: &mut Vec<u8>, ) -> Result<(), Error>
Encrypts the filename contained in
buffer.Source§fn decrypt_filename(
&self,
_object_id: u64,
_buffer: &mut Vec<u8>,
) -> Result<(), Error>
fn decrypt_filename( &self, _object_id: u64, _buffer: &mut Vec<u8>, ) -> Result<(), Error>
Decrypts the filename contained in
buffer.Source§fn encrypt_symlink(
&self,
_object_id: u64,
_buffer: &mut Vec<u8>,
) -> Result<(), Error>
fn encrypt_symlink( &self, _object_id: u64, _buffer: &mut Vec<u8>, ) -> Result<(), Error>
Encrypts the symlink target contained in
buffer.Source§fn decrypt_symlink(
&self,
_object_id: u64,
_buffer: &mut Vec<u8>,
) -> Result<(), Error>
fn decrypt_symlink( &self, _object_id: u64, _buffer: &mut Vec<u8>, ) -> Result<(), Error>
Decrypts the symlink target contained in
buffer.Source§fn hash_code(&self, _raw_filename: &[u8], _filename: &str) -> Option<u32>
fn hash_code(&self, _raw_filename: &[u8], _filename: &str) -> Option<u32>
Returns a hash_code to use.
Note in the case of encrypted filenames, takes the raw encrypted bytes.
Source§fn hash_code_casefold(&self, _filename: &str) -> u32
fn hash_code_casefold(&self, _filename: &str) -> u32
Returns a case-folded hash_code to use for ‘filename’.
Source§fn supports_inline_encryption(&self) -> bool
fn supports_inline_encryption(&self) -> bool
True if supports inline encryption
Source§fn crypt_ctx(
&self,
ino: u64,
_attribute_id: u64,
file_offset: u64,
) -> Option<(u64, u8)>
fn crypt_ctx( &self, ino: u64, _attribute_id: u64, file_offset: u64, ) -> Option<(u64, u8)>
If this cipher type supports inline encryption, returns the (dun, slot) value.
Else returns None.
Source§fn decrypt_to(
&self,
ino: u64,
attribute_id: u64,
device_offset: u64,
file_offset: u64,
src: PtrByteSlice<'_>,
dst: MutPtrByteSlice<'_>,
) -> Result<(), Error>
fn decrypt_to( &self, ino: u64, attribute_id: u64, device_offset: u64, file_offset: u64, src: PtrByteSlice<'_>, dst: MutPtrByteSlice<'_>, ) -> Result<(), Error>
Auto Trait Implementations§
impl Freeze for FscryptInoLblk64FileCipher
impl RefUnwindSafe for FscryptInoLblk64FileCipher
impl Send for FscryptInoLblk64FileCipher
impl Sync for FscryptInoLblk64FileCipher
impl Unpin for FscryptInoLblk64FileCipher
impl UnsafeUnpin for FscryptInoLblk64FileCipher
impl UnwindSafe for FscryptInoLblk64FileCipher
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