#[repr(C)]pub struct TeeTcbSvn {
    pub tdx_module_svn_minor: u8,
    pub tdx_module_svn_major: u8,
    pub seam_last_patch_svn: u8,
    pub _reserved: [u8; 13],
}Expand description
See TEE_TCB_SVN in Section 3.9.4, “Intel TDX Module v1.5 ABI specification”, March 2024.
Fields§
§tdx_module_svn_minor: u8TDX module minor SVN
tdx_module_svn_major: u8TDX module major SVN
seam_last_patch_svn: u8Microcode SE_SVN at the time the TDX module was loaded
_reserved: [u8; 13]Reserved
Trait Implementations§
Source§impl FromBytes for TeeTcbSvn
 
impl FromBytes for TeeTcbSvn
§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 TeeTcbSvn
 
impl FromZeros for TeeTcbSvn
§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 TeeTcbSvn
 
impl IntoBytes for TeeTcbSvn
§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 TryFromBytes for TeeTcbSvn
 
impl TryFromBytes for TeeTcbSvn
§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 TeeTcbSvn
Auto Trait Implementations§
impl Freeze for TeeTcbSvn
impl RefUnwindSafe for TeeTcbSvn
impl Send for TeeTcbSvn
impl Sync for TeeTcbSvn
impl Unpin for TeeTcbSvn
impl UnwindSafe for TeeTcbSvn
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