Struct x86defs::snp::SevNpfInfo

source ·
pub struct SevNpfInfo(/* private fields */);

Implementations§

source§

impl SevNpfInfo

source

pub const fn new() -> Self

Creates a new default initialized bitfield.

source

pub const fn from_bits(bits: u64) -> Self

Convert from bits.

source

pub const fn into_bits(self) -> u64

Convert into bits.

source

pub const fn present(&self) -> bool

Bits: 0..1

source

pub const fn with_present(self, value: bool) -> Self

Bits: 0..1

source

pub fn set_present(&mut self, value: bool)

Bits: 0..1

source

pub const fn read_write(&self) -> bool

Bits: 1..2

source

pub const fn with_read_write(self, value: bool) -> Self

Bits: 1..2

source

pub fn set_read_write(&mut self, value: bool)

Bits: 1..2

source

pub const fn user(&self) -> bool

Bits: 2..3

source

pub const fn with_user(self, value: bool) -> Self

Bits: 2..3

source

pub fn set_user(&mut self, value: bool)

Bits: 2..3

source

pub const fn reserved_bit_set(&self) -> bool

Bits: 3..4

source

pub const fn with_reserved_bit_set(self, value: bool) -> Self

Bits: 3..4

source

pub fn set_reserved_bit_set(&mut self, value: bool)

Bits: 3..4

source

pub const fn fetch(&self) -> bool

Bits: 4..5

source

pub const fn with_fetch(self, value: bool) -> Self

Bits: 4..5

source

pub fn set_fetch(&mut self, value: bool)

Bits: 4..5

source

pub const fn shadow_stack(&self) -> bool

Bits: 6..7

source

pub const fn with_shadow_stack(self, value: bool) -> Self

Bits: 6..7

source

pub fn set_shadow_stack(&mut self, value: bool)

Bits: 6..7

source

pub const fn rmp_failure(&self) -> bool

Bits: 31..32

source

pub const fn with_rmp_failure(self, value: bool) -> Self

Bits: 31..32

source

pub fn set_rmp_failure(&mut self, value: bool)

Bits: 31..32

source

pub const fn caused_by_gpa_access(&self) -> bool

Bits: 32..33

source

pub const fn with_caused_by_gpa_access(self, value: bool) -> Self

Bits: 32..33

source

pub fn set_caused_by_gpa_access(&mut self, value: bool)

Bits: 32..33

source

pub const fn caused_by_page_table_access(&self) -> bool

Bits: 33..34

source

pub const fn with_caused_by_page_table_access(self, value: bool) -> Self

Bits: 33..34

source

pub fn set_caused_by_page_table_access(&mut self, value: bool)

Bits: 33..34

source

pub const fn encrypted_access(&self) -> bool

Bits: 34..35

source

pub const fn with_encrypted_access(self, value: bool) -> Self

Bits: 34..35

source

pub fn set_encrypted_access(&mut self, value: bool)

Bits: 34..35

source

pub const fn rmp_size_mismatch(&self) -> bool

Bits: 35..36

source

pub const fn with_rmp_size_mismatch(self, value: bool) -> Self

Bits: 35..36

source

pub fn set_rmp_size_mismatch(&mut self, value: bool)

Bits: 35..36

source

pub const fn vmpl_violation(&self) -> bool

Bits: 36..37

source

pub const fn with_vmpl_violation(self, value: bool) -> Self

Bits: 36..37

source

pub fn set_vmpl_violation(&mut self, value: bool)

Bits: 36..37

source

pub const fn npt_supervisor_shadow_stack(&self) -> bool

Bits: 37..38

source

pub const fn with_npt_supervisor_shadow_stack(self, value: bool) -> Self

Bits: 37..38

source

pub fn set_npt_supervisor_shadow_stack(&mut self, value: bool)

Bits: 37..38

Trait Implementations§

source§

impl AsBytes for SevNpfInfo
where u64: AsBytes,

§

fn as_bytes(&self) -> &[u8]

Gets the bytes of this value. Read more
§

fn as_bytes_mut(&mut self) -> &mut [u8]
where Self: FromBytes,

Gets the bytes of this value mutably. Read more
§

fn write_to(&self, bytes: &mut [u8]) -> Option<()>

Writes a copy of self to bytes. Read more
§

fn write_to_prefix(&self, bytes: &mut [u8]) -> Option<()>

Writes a copy of self to the prefix of bytes. Read more
§

fn write_to_suffix(&self, bytes: &mut [u8]) -> Option<()>

Writes a copy of self to the suffix of bytes. Read more
source§

impl Clone for SevNpfInfo

source§

fn clone(&self) -> SevNpfInfo

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for SevNpfInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for SevNpfInfo

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl From<SevNpfInfo> for u64

source§

fn from(v: SevNpfInfo) -> u64

Converts to this type from the input type.
source§

impl From<u64> for SevNpfInfo

source§

fn from(v: u64) -> Self

Converts to this type from the input type.
source§

impl FromBytes for SevNpfInfo
where u64: FromBytes,

§

fn ref_from(bytes: &[u8]) -> Option<&Self>
where Self: Sized,

Interprets the given bytes as a &Self without copying. Read more
§

fn ref_from_prefix(bytes: &[u8]) -> Option<&Self>
where Self: Sized,

Interprets the prefix of the given bytes as a &Self without copying. Read more
§

fn ref_from_suffix(bytes: &[u8]) -> Option<&Self>
where Self: Sized,

Interprets the suffix of the given bytes as a &Self without copying. Read more
§

fn mut_from(bytes: &mut [u8]) -> Option<&mut Self>
where Self: Sized + AsBytes,

Interprets the given bytes as a &mut Self without copying. Read more
§

fn mut_from_prefix(bytes: &mut [u8]) -> Option<&mut Self>
where Self: Sized + AsBytes,

Interprets the prefix of the given bytes as a &mut Self without copying. Read more
§

fn mut_from_suffix(bytes: &mut [u8]) -> Option<&mut Self>
where Self: Sized + AsBytes,

Interprets the suffix of the given bytes as a &mut Self without copying. Read more
§

fn slice_from(bytes: &[u8]) -> Option<&[Self]>
where Self: Sized,

Interprets the given bytes as a &[Self] without copying. Read more
§

fn slice_from_prefix(bytes: &[u8], count: usize) -> Option<(&[Self], &[u8])>
where Self: Sized,

Interprets the prefix of the given bytes as a &[Self] with length equal to count without copying. Read more
§

fn slice_from_suffix(bytes: &[u8], count: usize) -> Option<(&[u8], &[Self])>
where Self: Sized,

Interprets the suffix of the given bytes as a &[Self] with length equal to count without copying. Read more
§

fn mut_slice_from(bytes: &mut [u8]) -> Option<&mut [Self]>
where Self: Sized + AsBytes,

Interprets the given bytes as a &mut [Self] without copying. Read more
§

fn mut_slice_from_prefix( bytes: &mut [u8], count: usize, ) -> Option<(&mut [Self], &mut [u8])>
where Self: Sized + AsBytes,

Interprets the prefix of the given bytes as a &mut [Self] with length equal to count without copying. Read more
§

fn mut_slice_from_suffix( bytes: &mut [u8], count: usize, ) -> Option<(&mut [u8], &mut [Self])>
where Self: Sized + AsBytes,

Interprets the suffix of the given bytes as a &mut [Self] with length equal to count without copying. Read more
§

fn read_from(bytes: &[u8]) -> Option<Self>
where Self: Sized,

Reads a copy of Self from bytes. Read more
§

fn read_from_prefix(bytes: &[u8]) -> Option<Self>
where Self: Sized,

Reads a copy of Self from the prefix of bytes. Read more
§

fn read_from_suffix(bytes: &[u8]) -> Option<Self>
where Self: Sized,

Reads a copy of Self from the suffix of bytes. Read more
source§

impl FromZeroes for SevNpfInfo
where u64: FromZeroes,

§

fn zero(&mut self)

Overwrites self with zeroes. Read more
§

fn new_zeroed() -> Self
where Self: Sized,

Creates an instance of Self from zeroed bytes. Read more
§

fn new_box_zeroed() -> Box<Self>
where Self: Sized,

Creates a Box<Self> from zeroed bytes. Read more
§

fn new_box_slice_zeroed(len: usize) -> Box<[Self]>
where Self: Sized,

Creates a Box<[Self]> (a boxed slice) from zeroed bytes. Read more
§

fn new_vec_zeroed(len: usize) -> Vec<Self>
where Self: Sized,

Creates a Vec<Self> from zeroed bytes. Read more
source§

impl PartialEq for SevNpfInfo

source§

fn eq(&self, other: &SevNpfInfo) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Copy for SevNpfInfo

source§

impl Eq for SevNpfInfo

source§

impl StructuralPartialEq for SevNpfInfo

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.