Fapi_GetRandom - Man Page

Synopsis

Functions

TSS2_RC Fapi_GetRandom (FAPI_CONTEXT *context, size_t numBytes, uint8_t **data)
TSS2_RC Fapi_GetRandom_Async (FAPI_CONTEXT *context, size_t numBytes)
TSS2_RC Fapi_GetRandom_Finish (FAPI_CONTEXT *context, uint8_t **data)

Detailed Description

FAPI functions to invoke GetRandom either as one-call or in an asynchronous manner.

Function Documentation

Fapi_GetRandom (FAPI_CONTEXT * context, size_t numBytes, uint8_t ** data)

One-Call function for Fapi_GetRandom

Creates an array with a specified number of bytes. May execute the underlying TPM command multiple times if the requested number of bytes is too big.

Parameters

context The FAPI_CONTEXT
numBytes The number of bytes requested from the TPM
data The array of random bytes returned from the TPM

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_VALUE if numBytes is 0.
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_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_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.
TSS2_FAPI_RC_BAD_PATH if the path is used in inappropriate context or contains illegal characters.

Fapi_GetRandom_Async (FAPI_CONTEXT * context, size_t numBytes)

Asynchronous function for Fapi_GetRandom

Creates an array with a specified number of bytes. May execute the underlying TPM command multiple times if the requested number of bytes is too big.

Call Fapi_GetRandom_Finish to finish the execution of this command.

Parameters

context The FAPI_CONTEXT
numBytes The number of bytes requested from the TPM

Return values

TSS2_RC_SUCCESS if the function call was a success.
TSS2_FAPI_RC_BAD_REFERENCE if context is NULL.
TSS2_FAPI_RC_BAD_CONTEXT if context corruption is detected.
TSS2_FAPI_RC_BAD_VALUE if numBytes is 0.
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_NOT_PROVISIONED FAPI was not provisioned.
TSS2_FAPI_RC_BAD_PATH if the path is used in inappropriate context or contains illegal characters.

Fapi_GetRandom_Finish (FAPI_CONTEXT * context, uint8_t ** data)

Asynchronous finish function for Fapi_GetRandom

This function should be called after a previous Fapi_GetRandom_Async.

Parameters

context The FAPI_CONTEXT
data The array of random bytes returned from the TPM

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_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.
TSS2_FAPI_RC_BAD_PATH if the path is used in inappropriate context or contains illegal characters.

Author

Generated automatically by Doxygen for tpm2-tss from the source code.

Info

Wed Jan 27 2021 Version 3.0.3 tpm2-tss