|
oe_result_t | oe_add_vectored_exception_handler (bool is_first_handler, oe_vectored_exception_handler_t vectored_handler) |
| OP-TEE provides single-threaded enclaves only, and its ELF loader does not support thread-local relocations. More...
|
|
oe_result_t | oe_remove_vectored_exception_handler (oe_vectored_exception_handler_t vectored_handler) |
| Remove an existing vectored exception handler. More...
|
|
bool | oe_is_within_enclave (const void *ptr, size_t size) |
| Check whether the given buffer is strictly within the enclave. More...
|
|
bool | oe_is_outside_enclave (const void *ptr, size_t size) |
| Check whether the given buffer is strictly outside the enclave. More...
|
|
void * | oe_host_malloc (size_t size) |
| Allocate bytes from the host's heap. More...
|
|
void * | oe_host_realloc (void *ptr, size_t size) |
| Reallocate bytes from the host's heap. More...
|
|
void * | oe_host_calloc (size_t nmemb, size_t size) |
| Allocate zero-filled bytes from the host's heap. More...
|
|
void | oe_host_free (void *ptr) |
| Release allocated memory. More...
|
|
char * | oe_host_strndup (const char *str, size_t n) |
| Make a heap copy of a string. More...
|
|
void | oe_abort (void) OE_NO_RETURN |
| Abort execution of the enclave. More...
|
|
oe_result_t | oe_get_report_v2 (uint32_t flags, const uint8_t *report_data, size_t report_data_size, const void *opt_params, size_t opt_params_size, uint8_t **report_buffer, size_t *report_buffer_size) |
| Get a report signed by the enclave platform for use in attestation. More...
|
|
void | oe_free_report (uint8_t *report_buffer) |
| Frees a report buffer obtained from oe_get_report. More...
|
|
oe_result_t | oe_get_target_info_v2 (const uint8_t *report, size_t report_size, void **target_info_buffer, size_t *target_info_size) |
| Extracts additional platform specific data from the report and writes it to target_info_buffer. More...
|
|
void | oe_free_target_info (void *target_info) |
| Frees target info obtained from oe_get_target_info. More...
|
|
oe_result_t | oe_parse_report (const uint8_t *report, size_t report_size, oe_report_t *parsed_report) |
| Parse an enclave report into a standard format for reading. More...
|
|
oe_result_t | oe_verify_report (const uint8_t *report, size_t report_size, oe_report_t *parsed_report) |
| Verify the integrity of the report and its signature. More...
|
|
oe_result_t | oe_get_seal_key_by_policy_v2 (oe_seal_policy_t seal_policy, uint8_t **key_buffer, size_t *key_buffer_size, uint8_t **key_info, size_t *key_info_size) |
| Get a symmetric encryption key derived from the specified policy and coupled to the enclave platform. More...
|
|
oe_result_t | oe_get_public_key_by_policy (oe_seal_policy_t seal_policy, const oe_asymmetric_key_params_t *key_params, uint8_t **key_buffer, size_t *key_buffer_size, uint8_t **key_info, size_t *key_info_size) |
| Returns a public key that is associated with the identity of the enclave and the specified policy. More...
|
|
oe_result_t | oe_get_public_key (const oe_asymmetric_key_params_t *key_params, const uint8_t *key_info, size_t key_info_size, uint8_t **key_buffer, size_t *key_buffer_size) |
| Returns a public key that is associated with the identity of the enclave. More...
|
|
oe_result_t | oe_get_private_key_by_policy (oe_seal_policy_t seal_policy, const oe_asymmetric_key_params_t *key_params, uint8_t **key_buffer, size_t *key_buffer_size, uint8_t **key_info, size_t *key_info_size) |
| Returns a private key that is associated with the identity of the enclave and the specified policy. More...
|
|
oe_result_t | oe_get_private_key (const oe_asymmetric_key_params_t *key_params, const uint8_t *key_info, size_t key_info_size, uint8_t **key_buffer, size_t *key_buffer_size) |
| Returns a private key that is associated with the identity of the enclave. More...
|
|
void | oe_free_key (uint8_t *key_buffer, size_t key_buffer_size, uint8_t *key_info, size_t key_info_size) |
| Frees the given key and/or key info. More...
|
|
oe_result_t | oe_get_seal_key_v2 (const uint8_t *key_info, size_t key_info_size, uint8_t **key_buffer, size_t *key_buffer_size) |
| Get a symmetric encryption key from the enclave platform using existing key information. More...
|
|
void | oe_free_seal_key (uint8_t *key_buffer, uint8_t *key_info) |
| Frees a key and/or key info. More...
|
|
oe_enclave_t * | oe_get_enclave (void) |
| Obtains the enclave handle. More...
|
|
oe_result_t | oe_random (void *data, size_t size) |
| Generate a sequence of random bytes. More...
|
|
oe_result_t | oe_generate_attestation_certificate (const unsigned char *subject_name, uint8_t *private_key, size_t private_key_size, uint8_t *public_key, size_t public_key_size, uint8_t **output_cert, size_t *output_cert_size) |
| oe_generate_attestation_certificate. More...
|
|
void | oe_free_attestation_certificate (uint8_t *cert) |
| Free the given cert. More...
|
|
oe_result_t | oe_verify_attestation_certificate (uint8_t *cert_in_der, size_t cert_in_der_len, oe_identity_verify_callback_t enclave_identity_callback, void *arg) |
| oe_verify_attestation_certificate More...
|
|
This file defines the programming interface for developing enclaves.