FAPI functions to invoke NvRead either as one-call or in an asynchronous manner.
◆ Fapi_NvRead()
TSS2_RC Fapi_NvRead |
( |
FAPI_CONTEXT * |
context, |
|
|
char const * |
nvPath, |
|
|
uint8_t ** |
data, |
|
|
size_t * |
size, |
|
|
char ** |
logData |
|
) |
| |
One-Call function for Fapi_NvRead
Reads data from an NV index within the TPM. The FAPI will automatically do the multiple reads if the NV index is larger than the TPM's TPM2_MAX_NV_BUFFER_SIZE.
- Parameters
-
[in,out] | context | The FAPI_CONTEXT |
[in] | nvPath | The path of the NV index to read |
[out] | data | The data that was read from the NV index |
[out] | size | The size of data in bytes. May be NULL |
[out] | logData | The log data of the NV index if the index is of type "extend". May be NULL |
- Return values
-
TSS2_RC_SUCCESS | if the function call was a success. |
TSS2_FAPI_RC_BAD_REFERENCE | if context, nvPath or data is NULL. |
TSS2_FAPI_RC_BAD_CONTEXT | if context corruption is detected. |
TSS2_FAPI_RC_BAD_PATH | if nvPath is not found. |
TSS2_FAPI_RC_AUTHORIZATION_FAILED | if authorization fails. |
TSS2_FAPI_RC_AUTHORIZATION_UNKNOWN | if don't know how to authenticate. |
TSS2_FAPI_RC_NV_NOT_READABLE | if the NV is not a readable index. |
TSS2_FAPI_RC_BAD_SEQUENCE | if the context has an asynchronous operation already pending. |
TSS2_FAPI_RC_IO_ERROR | if the data cannot be saved. |
TSS2_FAPI_RC_MEMORY | if the FAPI cannot allocate enough memory for internal operations or return parameters. |
TSS2_FAPI_RC_NO_TPM | if FAPI was initialized in no-TPM-mode via its config file. |
TSS2_FAPI_RC_PATH_NOT_FOUND | if a FAPI object path was not found during authorization. |
TSS2_FAPI_RC_KEY_NOT_FOUND | if a key was not found. |
TSS2_FAPI_RC_BAD_VALUE | if an invalid value was passed into the function. |
TSS2_FAPI_RC_TRY_AGAIN | if an I/O operation is not finished yet and this function needs to be called again. |
TSS2_FAPI_RC_GENERAL_FAILURE | if an internal error occurred. |
TSS2_FAPI_RC_POLICY_UNKNOWN | if policy search for a certain policy digest was not successful. |
TSS2_ESYS_RC_* | possible error codes of ESAPI. |
TSS2_FAPI_RC_NOT_PROVISIONED | FAPI was not provisioned. |
◆ Fapi_NvRead_Async()
TSS2_RC Fapi_NvRead_Async |
( |
FAPI_CONTEXT * |
context, |
|
|
char const * |
nvPath |
|
) |
| |
Asynchronous function for Fapi_NvRead
Reads data from an NV index within the TPM. The FAPI will automatically do the multiple reads if the NV index is larger than the TPM's TPM2_MAX_NV_BUFFER_SIZE.
Call Fapi_NvRead_Finish to finish the execution of this command.
- Parameters
-
[in,out] | context | The FAPI_CONTEXT |
[in] | nvPath | The path of the NV index to read |
- Return values
-
TSS2_RC_SUCCESS | if the function call was a success. |
TSS2_FAPI_RC_BAD_REFERENCE | if context or nvPath is NULL. * |
TSS2_FAPI_RC_BAD_CONTEXT | if context corruption is detected. |
TSS2_FAPI_RC_BAD_PATH | if nvPath is not found. |
TSS2_FAPI_RC_AUTHORIZATION_FAILED | if authorization fails. |
TSS2_FAPI_RC_AUTHORIZATION_UNKNOWN | if don't know how to authenticate. |
TSS2_FAPI_RC_NV_NOT_READABLE | if the NV is not a readable index. |
TSS2_FAPI_RC_BAD_SEQUENCE | if the context has an asynchronous operation already pending. |
TSS2_FAPI_RC_IO_ERROR | if the data cannot be saved. |
TSS2_FAPI_RC_MEMORY | if the FAPI cannot allocate enough memory for internal operations or return parameters. |
TSS2_FAPI_RC_NO_TPM | if FAPI was initialized in no-TPM-mode via its config file. |
TSS2_FAPI_RC_PATH_NOT_FOUND | if a FAPI object path was not found during authorization. |
TSS2_FAPI_RC_KEY_NOT_FOUND | if a key was not found. |
TSS2_FAPI_RC_BAD_VALUE | if an invalid value was passed into the function. |
TSS2_FAPI_RC_NOT_PROVISIONED | FAPI was not provisioned. |
◆ Fapi_NvRead_Finish()
TSS2_RC Fapi_NvRead_Finish |
( |
FAPI_CONTEXT * |
context, |
|
|
uint8_t ** |
data, |
|
|
size_t * |
size, |
|
|
char ** |
logData |
|
) |
| |
Asynchronous finish function for Fapi_NvRead
This function should be called after a previous Fapi_NvRead_Async.
- Parameters
-
[in,out] | context | The FAPI_CONTEXT |
[out] | data | The data that was read from the NV index |
[out] | size | The size of data in bytes. May be NULL |
[out] | logData | The log data of the NV index if the index is of type "extend". May be NULL |
- Return values
-
TSS2_RC_SUCCESS | if the function call was a success. |
TSS2_FAPI_RC_BAD_REFERENCE | if context or data is NULL. |
TSS2_FAPI_RC_BAD_CONTEXT | if context corruption is detected. |
TSS2_FAPI_RC_BAD_SEQUENCE | if the context has an asynchronous operation already pending. |
TSS2_FAPI_RC_IO_ERROR | if the data cannot be saved. |
TSS2_FAPI_RC_MEMORY | if the FAPI cannot allocate enough memory for internal operations or return parameters. |
TSS2_FAPI_RC_TRY_AGAIN | if the asynchronous operation is not yet complete. Call this function again later. |
TSS2_FAPI_RC_BAD_PATH | if a path is used in inappropriate context or contains illegal characters. |
TSS2_FAPI_RC_GENERAL_FAILURE | if an internal error occurred. |
TSS2_FAPI_RC_BAD_VALUE | if an invalid value was passed into the function. |
TSS2_FAPI_RC_PATH_NOT_FOUND | if a FAPI object path was not found during authorization. |
TSS2_FAPI_RC_KEY_NOT_FOUND | if a key was not found. |
TSS2_FAPI_RC_AUTHORIZATION_UNKNOWN | if a required authorization callback is not set. |
TSS2_FAPI_RC_AUTHORIZATION_FAILED | if the authorization attempt fails. |
TSS2_FAPI_RC_POLICY_UNKNOWN | if policy search for a certain policy digest was not successful. |
TSS2_ESYS_RC_* | possible error codes of ESAPI. |
TSS2_FAPI_RC_NOT_PROVISIONED | FAPI was not provisioned. |