![]() |
TF-M Reference Manual
1.2.0
TrustedFirmware-M
|
#include "psa/internal_trusted_storage.h"
#include "tfm_api.h"
#include "tfm_ns_interface.h"
#include "tfm_veneers.h"
Go to the source code of this file.
Macros | |
#define | IOVEC_LEN(x) (sizeof(x)/sizeof(x[0])) |
Functions | |
psa_status_t | psa_its_set (psa_storage_uid_t uid, size_t data_length, const void *p_data, psa_storage_create_flags_t create_flags) |
Create a new, or modify an existing, uid/value pair. More... | |
psa_status_t | psa_its_get (psa_storage_uid_t uid, size_t data_offset, size_t data_size, void *p_data, size_t *p_data_length) |
Retrieve data associated with a provided UID. More... | |
psa_status_t | psa_its_get_info (psa_storage_uid_t uid, struct psa_storage_info_t *p_info) |
Retrieve the metadata about the provided uid. More... | |
psa_status_t | psa_its_remove (psa_storage_uid_t uid) |
Remove the provided uid and its associated data from the storage. More... | |
#define IOVEC_LEN | ( | x | ) | (sizeof(x)/sizeof(x[0])) |
Definition at line 14 of file tfm_its_func_api.c.
psa_status_t psa_its_get | ( | psa_storage_uid_t | uid, |
size_t | data_offset, | ||
size_t | data_size, | ||
void * | p_data, | ||
size_t * | p_data_length | ||
) |
Retrieve data associated with a provided UID.
Retrieves up to data_size
bytes of the data associated with uid
, starting at data_offset
bytes from the beginning of the data. Upon successful completion, the data will be placed in the p_data
buffer, which must be at least data_size
bytes in size. The length of the data returned will be in p_data_length
. If data_size
is 0, the contents of p_data_length
will be set to zero.
[in] | uid | The uid value |
[in] | data_offset | The starting offset of the data requested |
[in] | data_size | The amount of data requested |
[out] | p_data | On success, the buffer where the data will be placed |
[out] | p_data_length | On success, this will contain size of the data placed in p_data |
PSA_SUCCESS | The operation completed successfully |
PSA_ERROR_DOES_NOT_EXIST | The operation failed because the provided uid value was not found in the storage |
PSA_ERROR_STORAGE_FAILURE | The operation failed because the physical storage has failed (Fatal error) |
PSA_ERROR_INVALID_ARGUMENT | The operation failed because one of the provided arguments (p_data , p_data_length ) is invalid, for example is NULL or references memory the caller cannot access. In addition, this can also happen if data_offset is larger than the size of the data associated with uid |
Definition at line 40 of file tfm_its_func_api.c.
psa_status_t psa_its_get_info | ( | psa_storage_uid_t | uid, |
struct psa_storage_info_t * | p_info | ||
) |
Retrieve the metadata about the provided uid.
Retrieves the metadata stored for a given uid
as a psa_storage_info_t
structure.
[in] | uid | The uid value |
[out] | p_info | A pointer to the psa_storage_info_t struct that will be populated with the metadata |
PSA_SUCCESS | The operation completed successfully |
PSA_ERROR_DOES_NOT_EXIST | The operation failed because the provided uid value was not found in the storage |
PSA_ERROR_STORAGE_FAILURE | The operation failed because the physical storage has failed (Fatal error) |
PSA_ERROR_INVALID_ARGUMENT | The operation failed because one of the provided pointers(p_info ) is invalid, for example is NULL or references memory the caller cannot access |
Definition at line 74 of file tfm_its_func_api.c.
psa_status_t psa_its_remove | ( | psa_storage_uid_t | uid | ) |
Remove the provided uid and its associated data from the storage.
Deletes the data from internal storage.
[in] | uid | The uid value |
PSA_SUCCESS | The operation completed successfully |
PSA_ERROR_INVALID_ARGUMENT | The operation failed because one or more of the given arguments were invalid (null pointer, wrong flags and so on) |
PSA_ERROR_DOES_NOT_EXIST | The operation failed because the provided uid value was not found in the storage |
PSA_ERROR_NOT_PERMITTED | The operation failed because the provided uid value was created with PSA_STORAGE_FLAG_WRITE_ONCE |
PSA_ERROR_STORAGE_FAILURE | The operation failed because the physical storage has failed (Fatal error) |
Definition at line 99 of file tfm_its_func_api.c.
psa_status_t psa_its_set | ( | psa_storage_uid_t | uid, |
size_t | data_length, | ||
const void * | p_data, | ||
psa_storage_create_flags_t | create_flags | ||
) |
Create a new, or modify an existing, uid/value pair.
Stores data in the internal storage.
[in] | uid | The identifier for the data |
[in] | data_length | The size in bytes of the data in p_data |
[in] | p_data | A buffer containing the data |
[in] | create_flags | The flags that the data will be stored with |
PSA_SUCCESS | The operation completed successfully |
PSA_ERROR_NOT_PERMITTED | The operation failed because the provided uid value was already created with PSA_STORAGE_FLAG_WRITE_ONCE |
PSA_ERROR_NOT_SUPPORTED | The operation failed because one or more of the flags provided in create_flags is not supported or is not valid |
PSA_ERROR_INSUFFICIENT_STORAGE | The operation failed because there was insufficient space on the storage medium |
PSA_ERROR_STORAGE_FAILURE | The operation failed because the physical storage has failed (Fatal error) |
PSA_ERROR_INVALID_ARGUMENT | The operation failed because one of the provided pointers(p_data ) is invalid, for example is NULL or references memory the caller cannot access |
Definition at line 16 of file tfm_its_func_api.c.