Trait LuksCryptDevice

Source
pub trait LuksCryptDevice: CryptDevice + CryptDeviceType {
    // Required methods
    fn activate(&mut self, name: &str, key: &[u8]) -> Result<Keyslot>;
    fn deactivate(self, name: &str) -> Result<()>;
    fn destroy_keyslot(&mut self, slot: Keyslot) -> Result<()>;
    fn keyslot_status(&self, keyslot: Keyslot) -> crypt_keyslot_info;
    fn dump(&self);
    fn uuid(&self) -> Uuid;
    fn add_keyslot(
        &mut self,
        key: &[u8],
        maybe_prev_key: Option<&[u8]>,
        maybe_keyslot: Option<Keyslot>,
    ) -> Result<Keyslot>;
    fn update_keyslot(
        &mut self,
        key: &[u8],
        prev_key: &[u8],
        maybe_keyslot: Option<Keyslot>,
    ) -> Result<Keyslot>;
}

Required Methods§

Source

fn activate(&mut self, name: &str, key: &[u8]) -> Result<Keyslot>

Activate the crypt device, and give it the specified name

Source

fn deactivate(self, name: &str) -> Result<()>

Deactivate the crypt device, remove the device-mapper mapping and key information from kernel

Source

fn destroy_keyslot(&mut self, slot: Keyslot) -> Result<()>

Destroy (and disable) key slot

Source

fn keyslot_status(&self, keyslot: Keyslot) -> crypt_keyslot_info

Get status of key slot

Source

fn dump(&self)

Dump text-formatted information about the current device to stdout

Source

fn uuid(&self) -> Uuid

UUID of the current device

Source

fn add_keyslot( &mut self, key: &[u8], maybe_prev_key: Option<&[u8]>, maybe_keyslot: Option<Keyslot>, ) -> Result<Keyslot>

Add a new keyslot with the specified key

Source

fn update_keyslot( &mut self, key: &[u8], prev_key: &[u8], maybe_keyslot: Option<Keyslot>, ) -> Result<Keyslot>

Replace an old key with a new one

Implementors§