pub struct Launcher<T, U: AsRawFd, V: AsRawFd> { /* private fields */ }Expand description
Facilitates the correct execution of the CSV launch process.
Implementations§
Source§impl<T, U: AsRawFd, V: AsRawFd> Launcher<T, U, V>
impl<T, U: AsRawFd, V: AsRawFd> Launcher<T, U, V>
Sourcepub fn as_mut_vmfd(&mut self) -> &mut U
pub fn as_mut_vmfd(&mut self) -> &mut U
Give access to the vm fd to create vCPUs or such.
Source§impl<U: AsRawFd, V: AsRawFd> Launcher<New, U, V>
impl<U: AsRawFd, V: AsRawFd> Launcher<New, U, V>
Source§impl<U: AsRawFd, V: AsRawFd> Launcher<Started, U, V>
impl<U: AsRawFd, V: AsRawFd> Launcher<Started, U, V>
Sourcepub fn update_data(&mut self, data: &[u8]) -> Result<()>
pub fn update_data(&mut self, data: &[u8]) -> Result<()>
Encrypt guest data with its VEK.
Sourcepub fn register_kvm_enc_region(&mut self, data: &[u8]) -> Result<()>
pub fn register_kvm_enc_region(&mut self, data: &[u8]) -> Result<()>
Register the encrypted memory region to a virtual machine.
Corresponds to the KVM_MEMORY_ENCRYPT_REG_REGION ioctl.
Sourcepub fn update_data_without_registration(&mut self, data: &[u8]) -> Result<()>
pub fn update_data_without_registration(&mut self, data: &[u8]) -> Result<()>
Encrypt guest data with its VEK, while the KVM encrypted memory region is not registered.
Sourcepub fn update_vmsa(&mut self) -> Result<()>
pub fn update_vmsa(&mut self) -> Result<()>
Encrypt the VMSA on CSV2.
Source§impl<U: AsRawFd, V: AsRawFd> Launcher<Measured, U, V>
impl<U: AsRawFd, V: AsRawFd> Launcher<Measured, U, V>
Sourcepub fn measurement(&self) -> Measurement
pub fn measurement(&self) -> Measurement
Get the measurement that the CSV platform recorded.
Sourcepub fn get_attestation_report(
&mut self,
mnonce: [u8; 16],
) -> Result<Box<AttestationReport>>
pub fn get_attestation_report( &mut self, mnonce: [u8; 16], ) -> Result<Box<AttestationReport>>
Get the attestation report.
Auto Trait Implementations§
impl<T, U, V> Freeze for Launcher<T, U, V>
impl<T, U, V> RefUnwindSafe for Launcher<T, U, V>
impl<T, U, V> Send for Launcher<T, U, V>
impl<T, U, V> Sync for Launcher<T, U, V>
impl<T, U, V> Unpin for Launcher<T, U, V>
impl<T, U, V> UnsafeUnpin for Launcher<T, U, V>
impl<T, U, V> UnwindSafe for Launcher<T, U, V>
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