#[repr(C)]pub struct SnpReportReq {
    pub user_data: [u8; 64],
    pub vmpl: u32,
    pub rsvd: [u8; 28],
}Expand description
Request structure for the SNP_GET_REPORT request.
See MSG_REPORT_REQ in Table 21, “SEV Secure Nested Paging Firmware ABI specification”, Revision 1.55.
Fields§
§user_data: [u8; 64]Guest-provided data to be included in the attestation report.
vmpl: u32The VMPL to put in the attestation report. Must be greater than or equal to the current VMPL and, at most, three.
rsvd: [u8; 28]Reserved
Trait Implementations§
Source§impl FromBytes for SnpReportReq
 
impl FromBytes for SnpReportReq
§fn ref_from_bytes(
    source: &[u8],
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout + Immutable,
 
fn ref_from_bytes(
    source: &[u8],
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout + Immutable,
§fn ref_from_prefix(
    source: &[u8],
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout + Immutable,
 
fn ref_from_prefix(
    source: &[u8],
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout + Immutable,
§fn ref_from_suffix(
    source: &[u8],
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: Immutable + KnownLayout,
 
fn ref_from_suffix(
    source: &[u8],
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: Immutable + KnownLayout,
Interprets the suffix of the given bytes as a 
&Self. Read more§fn mut_from_bytes(
    source: &mut [u8],
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout,
 
fn mut_from_bytes(
    source: &mut [u8],
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout,
§fn mut_from_prefix(
    source: &mut [u8],
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout,
 
fn mut_from_prefix(
    source: &mut [u8],
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout,
§fn mut_from_suffix(
    source: &mut [u8],
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout,
 
fn mut_from_suffix(
    source: &mut [u8],
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout,
§fn ref_from_bytes_with_elems(
    source: &[u8],
    count: usize,
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
 
fn ref_from_bytes_with_elems(
    source: &[u8],
    count: usize,
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
§fn ref_from_prefix_with_elems(
    source: &[u8],
    count: usize,
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
 
fn ref_from_prefix_with_elems(
    source: &[u8],
    count: usize,
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
§fn ref_from_suffix_with_elems(
    source: &[u8],
    count: usize,
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
 
fn ref_from_suffix_with_elems(
    source: &[u8],
    count: usize,
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
§fn mut_from_bytes_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout<PointerMetadata = usize> + Immutable,
 
fn mut_from_bytes_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout<PointerMetadata = usize> + Immutable,
§fn mut_from_prefix_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout<PointerMetadata = usize>,
 
fn mut_from_prefix_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout<PointerMetadata = usize>,
§fn mut_from_suffix_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout<PointerMetadata = usize>,
 
fn mut_from_suffix_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout<PointerMetadata = usize>,
Source§impl FromZeros for SnpReportReq
 
impl FromZeros for SnpReportReq
§fn new_zeroed() -> Selfwhere
    Self: Sized,
 
fn new_zeroed() -> Selfwhere
    Self: Sized,
Creates an instance of 
Self from zeroed bytes. Read more§fn new_box_zeroed() -> Result<Box<Self>, AllocError>where
    Self: Sized,
 
fn new_box_zeroed() -> Result<Box<Self>, AllocError>where
    Self: Sized,
Creates a 
Box<Self> from zeroed bytes. Read more§fn new_box_zeroed_with_elems(count: usize) -> Result<Box<Self>, AllocError>where
    Self: KnownLayout<PointerMetadata = usize>,
 
fn new_box_zeroed_with_elems(count: usize) -> Result<Box<Self>, AllocError>where
    Self: KnownLayout<PointerMetadata = usize>,
Creates a 
Box<[Self]> (a boxed slice) from zeroed bytes. Read more§fn new_vec_zeroed(len: usize) -> Result<Vec<Self>, AllocError>where
    Self: Sized,
 
fn new_vec_zeroed(len: usize) -> Result<Vec<Self>, AllocError>where
    Self: Sized,
Creates a 
Vec<Self> from zeroed bytes. Read moreSource§impl IntoBytes for SnpReportReq
 
impl IntoBytes for SnpReportReq
§fn as_mut_bytes(&mut self) -> &mut [u8] ⓘwhere
    Self: FromBytes,
 
fn as_mut_bytes(&mut self) -> &mut [u8] ⓘwhere
    Self: FromBytes,
Gets the bytes of this value mutably. Read more
§fn write_to(&self, dst: &mut [u8]) -> Result<(), SizeError<&Self, &mut [u8]>>where
    Self: Immutable,
 
fn write_to(&self, dst: &mut [u8]) -> Result<(), SizeError<&Self, &mut [u8]>>where
    Self: Immutable,
Source§impl KnownLayout for SnpReportReq
 
impl KnownLayout for SnpReportReq
Source§impl TryFromBytes for SnpReportReq
 
impl TryFromBytes for SnpReportReq
§fn try_ref_from_bytes(
    source: &[u8],
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout + Immutable,
 
fn try_ref_from_bytes(
    source: &[u8],
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout + Immutable,
§fn try_ref_from_prefix(
    source: &[u8],
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout + Immutable,
 
fn try_ref_from_prefix(
    source: &[u8],
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout + Immutable,
§fn try_ref_from_suffix(
    source: &[u8],
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout + Immutable,
 
fn try_ref_from_suffix(
    source: &[u8],
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout + Immutable,
§fn try_mut_from_bytes(
    bytes: &mut [u8],
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout + IntoBytes,
 
fn try_mut_from_bytes(
    bytes: &mut [u8],
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout + IntoBytes,
§fn try_mut_from_prefix(
    source: &mut [u8],
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout + IntoBytes,
 
fn try_mut_from_prefix(
    source: &mut [u8],
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout + IntoBytes,
§fn try_mut_from_suffix(
    source: &mut [u8],
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout + IntoBytes,
 
fn try_mut_from_suffix(
    source: &mut [u8],
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout + IntoBytes,
§fn try_ref_from_bytes_with_elems(
    source: &[u8],
    count: usize,
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
 
fn try_ref_from_bytes_with_elems(
    source: &[u8],
    count: usize,
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
§fn try_ref_from_prefix_with_elems(
    source: &[u8],
    count: usize,
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
 
fn try_ref_from_prefix_with_elems(
    source: &[u8],
    count: usize,
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
Attempts to interpret the prefix of the given 
source as a &Self with
a DST length equal to count. Read more§fn try_ref_from_suffix_with_elems(
    source: &[u8],
    count: usize,
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
 
fn try_ref_from_suffix_with_elems(
    source: &[u8],
    count: usize,
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
Attempts to interpret the suffix of the given 
source as a &Self with
a DST length equal to count. Read more§fn try_mut_from_bytes_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + IntoBytes,
 
fn try_mut_from_bytes_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + IntoBytes,
§fn try_mut_from_prefix_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + IntoBytes,
 
fn try_mut_from_prefix_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + IntoBytes,
Attempts to interpret the prefix of the given 
source as a &mut Self
with a DST length equal to count. Read more§fn try_mut_from_suffix_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + IntoBytes,
 
fn try_mut_from_suffix_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + IntoBytes,
Attempts to interpret the suffix of the given 
source as a &mut Self
with a DST length equal to count. Read more§fn try_read_from_bytes(
    source: &[u8],
) -> Result<Self, ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: Sized,
 
fn try_read_from_bytes(
    source: &[u8],
) -> Result<Self, ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: Sized,
§fn try_read_from_prefix(
    source: &[u8],
) -> Result<(Self, &[u8]), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: Sized,
 
fn try_read_from_prefix(
    source: &[u8],
) -> Result<(Self, &[u8]), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: Sized,
§fn try_read_from_suffix(
    source: &[u8],
) -> Result<(&[u8], Self), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: Sized,
 
fn try_read_from_suffix(
    source: &[u8],
) -> Result<(&[u8], Self), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: Sized,
impl Immutable for SnpReportReq
Auto Trait Implementations§
impl Freeze for SnpReportReq
impl RefUnwindSafe for SnpReportReq
impl Send for SnpReportReq
impl Sync for SnpReportReq
impl Unpin for SnpReportReq
impl UnwindSafe for SnpReportReq
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