pub struct EnclaveConfiguration<'a> { /* private fields */ }
Expand description

Defines an entry in the array of images that an enclave can import.

Implementations§

§

impl EnclaveConfiguration<'_>

pub fn size(&self) -> u32

The size of the IMAGE_ENCLAVE_CONFIG64/IMAGE_ENCLAVE_CONFIG32 structure, in bytes.

pub fn min_required_config_size(&self) -> u32

The minimum size of the IMAGE_ENCLAVE_CONFIG(32,64) structure that the image loader must be able to process in order for the enclave to be usable.

This member allows an enclave to inform an earlier version of the image loader that the image loader can safely load the enclave and ignore optional members added to IMAGE_ENCLAVE_CONFIG(32,64) for later versions of the enclave. If the size of IMAGE_ENCLAVE_CONFIG(32,64) that the image loader can process is less than MinimumRequiredConfigSize, the enclave cannot be run securely.

If MinimumRequiredConfigSize is zero, the minimum size of the IMAGE_ENCLAVE_CONFIG(32,64) structure that the image loader must be able to process in order for the enclave to be usable is assumed to be the size of the structure through and including the MinimumRequiredConfigSize member.

pub fn policy_flags(&self) -> u32

A flag that indicates whether the enclave permits debugging.

pub fn is_debuggable(&self) -> bool

Whether this enclave can be debugged

pub fn import_list_rva(&self) -> u32

The RVA of the array of images that the enclave image may import, with identity information for each image.

pub fn import_entry_size(&self) -> u32

The size of each image in the array of images that the EnclaveConfiguration::import_list_rva member points to.

pub fn nb_imports(&self) -> u32

The number of images in the array of images that the EnclaveConfiguration::import_list_rva member points to.

pub fn imports(&self) -> Imports<'_>

Return an iterator over the enclave’s imports

pub fn family_id(&self) -> &[u8]

The family identifier that the author of the enclave assigned to the enclave.

pub fn image_id(&self) -> &[u8]

The image identifier that the author of the enclave assigned to the enclave.

pub fn image_version(&self) -> u32

The version number that the author of the enclave assigned to the enclave.

pub fn security_version(&self) -> u32

The security version number that the author of the enclave assigned to the enclave.

pub fn enclave_size(&self) -> u64

The expected virtual size of the private address range for the enclave, in bytes.

pub fn nb_threads(&self) -> u32

The maximum number of threads that can be created within the enclave.

pub fn enclave_flags(&self) -> u32

A flag that indicates whether the image is suitable for use as the primary image in the enclave.

Trait Implementations§

§

impl Debug for EnclaveConfiguration<'_>

§

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

Formats the value using the given formatter. Read more
§

impl Display for EnclaveConfiguration<'_>

§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. 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 Twhere 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> ToString for Twhere T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

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

§

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 Twhere U: TryFrom<T>,

§

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.