.TH "Fapi_CreateSeal" 3 "Sun May 7 2023" "Version 4.0.1" "tpm2-tss" \" -*- nroff -*- .ad l .nh .SH NAME Fapi_CreateSeal \- Fapi_CreateSeal .SH SYNOPSIS .br .PP .SS "Functions" .in +1c .ti -1c .RI "TSS2_RC \fBFapi_CreateSeal\fP (\fBFAPI_CONTEXT\fP *context, char const *path, char const *type, size_t size, char const *policyPath, char const *authValue, uint8_t const *data)" .br .ti -1c .RI "TSS2_RC \fBFapi_CreateSeal_Async\fP (\fBFAPI_CONTEXT\fP *context, char const *path, char const *type, size_t size, char const *policyPath, char const *authValue, uint8_t const *data)" .br .ti -1c .RI "TSS2_RC \fBFapi_CreateSeal_Finish\fP (\fBFAPI_CONTEXT\fP *context)" .br .in -1c .SH "Detailed Description" .PP FAPI functions to invoke CreateSeal either as one-call or in an asynchronous manner\&. .SH "Function Documentation" .PP .SS "Fapi_CreateSeal (\fBFAPI_CONTEXT\fP * context, char const * path, char const * type, size_t size, char const * policyPath, char const * authValue, uint8_t const * data)" One-Call function for Fapi_CreateSeal .PP Creates a sealed object and stores it in the FAPI metadata store\&. If no data is provided, the TPM generates random data to fill the sealed object\&. .PP \fBParameters\fP .RS 4 \fIcontext\fP The \fBFAPI_CONTEXT\fP .br \fIpath\fP The path to the new sealed object .br \fItype\fP The type of the new sealed object\&. May be NULL .br \fIsize\fP The size of the new sealed object\&. Must not be 0 .br \fIpolicyPath\fP The path to the policy that is associated with the new sealed object\&. May be NULL .br \fIauthValue\fP The authorization value for the new sealed object\&. May be NULL .br \fIdata\fP The data that is to be sealed within the new object\&. May be NULL .RE .PP \fBReturn values\fP .RS 4 \fITSS2_RC_SUCCESS\fP if the function call was a success\&. .br \fITSS2_FAPI_RC_BAD_REFERENCE\fP if context, or path is NULL\&. .br \fITSS2_FAPI_RC_BAD_CONTEXT\fP if context corruption is detected\&. .br \fITSS2_FAPI_RC_KEY_NOT_FOUND\fP if the parent key does not map to a FAPI key\&. .br \fITSS2_FAPI_RC_BAD_PATH\fP if policyPath is non-NULL and does not map to a FAPI key\&. .br \fITSS2_FAPI_RC_PATH_ALREADY_EXISTS\fP if a sealed object already exists at path\&. .br \fITSS2_FAPI_RC_BAD_VALUE\fP if the keyType is invalid\&. .br \fITSS2_FAPI_RC_BAD_SEQUENCE\fP if the context has an asynchronous operation already pending\&. .br \fITSS2_FAPI_RC_IO_ERROR\fP if the data cannot be saved\&. .br \fITSS2_FAPI_RC_MEMORY\fP if the FAPI cannot allocate enough memory for internal operations or return parameters\&. .br \fITSS2_FAPI_RC_NO_TPM\fP if FAPI was initialized in no-TPM-mode via its config file\&. .br \fITSS2_FAPI_RC_TRY_AGAIN\fP if an I/O operation is not finished yet and this function needs to be called again\&. .br \fITSS2_FAPI_RC_AUTHORIZATION_UNKNOWN\fP if a required authorization callback is not set\&. .br \fITSS2_ESYS_RC_*\fP possible error codes of ESAPI\&. .br \fITSS2_FAPI_RC_PATH_NOT_FOUND\fP if a FAPI object path was not found during authorization\&. .br \fITSS2_FAPI_RC_GENERAL_FAILURE\fP if an internal error occured\&. .br \fITSS2_FAPI_RC_NOT_PROVISIONED\fP FAPI was not provisioned\&. .br \fITSS2_FAPI_RC_AUTHORIZATION_FAILED\fP if the authorization attempt fails\&. .br \fITSS2_FAPI_RC_POLICY_UNKNOWN\fP if policy search for a certain policy digest was not successful\&. .RE .PP .SS "Fapi_CreateSeal_Async (\fBFAPI_CONTEXT\fP * context, char const * path, char const * type, size_t size, char const * policyPath, char const * authValue, uint8_t const * data)" Asynchronous function for Fapi_CreateSeal .PP Creates a sealed object and stores it in the FAPI metadata store\&. If no data is provided, the TPM generates random data to fill the sealed object\&. .PP Call Fapi_CreateSeal_Finish to finish the execution of this command\&. .PP \fBParameters\fP .RS 4 \fIcontext\fP The \fBFAPI_CONTEXT\fP .br \fIpath\fP The path to the new sealed object .br \fItype\fP The type of the new sealed object\&. May be NULL .br \fIsize\fP The size of the new sealed object\&. Must not be 0 .br \fIpolicyPath\fP The path to the policy that is associated with the new sealed object\&. May be NULL .br \fIauthValue\fP The authorization value for the new sealed object\&. May be NULL .br \fIdata\fP The data that is to be sealed within the new object\&. May be NULL .RE .PP \fBReturn values\fP .RS 4 \fITSS2_RC_SUCCESS\fP if the function call was a success\&. .br \fITSS2_FAPI_RC_BAD_REFERENCE\fP if context, or path is NULL\&. .br \fITSS2_FAPI_RC_BAD_CONTEXT\fP if context corruption is detected\&. .br \fITSS2_FAPI_RC_KEY_NOT_FOUND\fP if the parent key does not map to a FAPI key\&. .br \fITSS2_FAPI_RC_BAD_PATH\fP if policyPath is non-NULL and does not map to a FAPI key\&. .br \fITSS2_FAPI_RC_PATH_ALREADY_EXISTS\fP if a sealed object already exists at path\&. .br \fITSS2_FAPI_RC_BAD_VALUE\fP if the keyType is invalid\&. .br \fITSS2_FAPI_RC_BAD_SEQUENCE\fP if the context has an asynchronous operation already pending\&. .br \fITSS2_FAPI_RC_IO_ERROR\fP if the data cannot be saved\&. .br \fITSS2_FAPI_RC_MEMORY\fP if the FAPI cannot allocate enough memory for internal operations or return parameters\&. .br \fITSS2_FAPI_RC_NO_TPM\fP if FAPI was initialized in no-TPM-mode via its config file\&. .br \fITSS2_FAPI_RC_PATH_NOT_FOUND\fP if a FAPI object path was not found during authorization\&. .RE .PP .SS "Fapi_CreateSeal_Finish (\fBFAPI_CONTEXT\fP * context)" Asynchronous finish function for Fapi_CreateSeal .PP This function should be called after a previous Fapi_CreateSeal\&. .PP \fBParameters\fP .RS 4 \fIcontext\fP The \fBFAPI_CONTEXT\fP .RE .PP \fBReturn values\fP .RS 4 \fITSS2_RC_SUCCESS\fP if the function call was a success\&. .br \fITSS2_FAPI_RC_BAD_REFERENCE\fP if context is NULL\&. .br \fITSS2_FAPI_RC_BAD_CONTEXT\fP if context corruption is detected\&. .br \fITSS2_FAPI_RC_BAD_SEQUENCE\fP if the context has an asynchronous operation already pending\&. .br \fITSS2_FAPI_RC_IO_ERROR\fP if the data cannot be saved\&. .br \fITSS2_FAPI_RC_MEMORY\fP if the FAPI cannot allocate enough memory for internal operations or return parameters\&. .br \fITSS2_FAPI_RC_TRY_AGAIN\fP if the asynchronous operation is not yet complete\&. Call this function again later\&. .br \fITSS2_FAPI_RC_BAD_VALUE\fP if an invalid value was passed into the function\&. .br \fITSS2_FAPI_RC_AUTHORIZATION_UNKNOWN\fP if a required authorization callback is not set\&. .br \fITSS2_ESYS_RC_*\fP possible error codes of ESAPI\&. .br \fITSS2_FAPI_RC_GENERAL_FAILURE\fP if an internal error occured\&. .br \fITSS2_FAPI_RC_NOT_PROVISIONED\fP FAPI was not provisioned\&. .br \fITSS2_FAPI_RC_KEY_NOT_FOUND\fP if a key was not found\&. .br \fITSS2_FAPI_RC_BAD_PATH\fP if the path is used in inappropriate context or contains illegal characters\&. .br \fITSS2_FAPI_RC_PATH_NOT_FOUND\fP if a FAPI object path was not found during authorization\&. .br \fITSS2_FAPI_RC_AUTHORIZATION_FAILED\fP if the authorization attempt fails\&. .br \fITSS2_FAPI_RC_POLICY_UNKNOWN\fP if policy search for a certain policy digest was not successful\&. .br \fITSS2_FAPI_RC_PATH_ALREADY_EXISTS\fP if the object already exists in object store\&. .RE .PP .SH "Author" .PP Generated automatically by Doxygen for tpm2-tss from the source code\&.