Struct lief::pe::enclave_configuration::EnclaveConfiguration
pub struct EnclaveConfiguration<'a> { /* private fields */ }
Expand description
Defines an entry in the array of images that an enclave can import.
Implementations§
§impl EnclaveConfiguration<'_>
impl EnclaveConfiguration<'_>
pub fn size(&self) -> u32
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
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
pub fn policy_flags(&self) -> u32
A flag that indicates whether the enclave permits debugging.
pub fn is_debuggable(&self) -> bool
pub fn is_debuggable(&self) -> bool
Whether this enclave can be debugged
pub fn import_list_rva(&self) -> u32
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
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
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 family_id(&self) -> &[u8] ⓘ
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] ⓘ
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
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
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
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
pub fn nb_threads(&self) -> u32
The maximum number of threads that can be created within the enclave.
pub fn enclave_flags(&self) -> u32
pub fn enclave_flags(&self) -> u32
A flag that indicates whether the image is suitable for use as the primary image in the enclave.