pub enum LaunchMeasurement {
V1(LaunchMeasurementV1),
V2(LaunchMeasurementV2),
}Expand description
Launch measurement carried in a PublishedVersionEntry.
Variants§
Implementations§
Source§impl LaunchMeasurement
impl LaunchMeasurement
Sourcepub fn resolve(&self, vcpus: usize) -> [u8; 48]
pub fn resolve(&self, vcpus: usize) -> [u8; 48]
Resolves the full 48-byte launch measurement for comparison with an attestation report.
For V1, returns the stored digest. For V2, reconstructs the full measurement by applying the VMSA page update once per vCPU.
§Panics
Panics if the measurement or VMSA has an invalid length. Use
Self::try_resolve for measurements from unvalidated input.
Sourcepub fn try_resolve(
&self,
vcpus: usize,
) -> Result<[u8; 48], LaunchMeasurementError>
pub fn try_resolve( &self, vcpus: usize, ) -> Result<[u8; 48], LaunchMeasurementError>
Like Self::resolve, but returns an error instead of panicking if
the measurement or VMSA has an invalid length.
§Errors
Returns an error if the measurement is not 48 bytes or the VMSA is larger than 4096 bytes.
Trait Implementations§
Source§impl Clone for LaunchMeasurement
impl Clone for LaunchMeasurement
Source§fn clone(&self) -> LaunchMeasurement
fn clone(&self) -> LaunchMeasurement
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for LaunchMeasurement
impl Debug for LaunchMeasurement
Source§impl<'de> Deserialize<'de> for LaunchMeasurement
impl<'de> Deserialize<'de> for LaunchMeasurement
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for LaunchMeasurement
impl RefUnwindSafe for LaunchMeasurement
impl Send for LaunchMeasurement
impl Sync for LaunchMeasurement
impl Unpin for LaunchMeasurement
impl UnsafeUnpin for LaunchMeasurement
impl UnwindSafe for LaunchMeasurement
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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