.TH "fapi" 3 "Fri Oct 7 2022" "Version 3.2.0" "tpm2-tss" \" -*- nroff -*- .ad l .nh .SH NAME fapi .SH SYNOPSIS .br .PP .SS "Modules" .in +1c .ti -1c .RI "\fBFapi_Initialize\fP" .br .ti -1c .RI "\fBFapi_Finalize\fP" .br .ti -1c .RI "\fBFapi_GetTcti\fP" .br .ti -1c .RI "\fBFapi_GetPollHandles\fP" .br .ti -1c .RI "\fBFapi_Free\fP" .br .ti -1c .RI "\fBFapi_GetInfo\fP" .br .ti -1c .RI "\fBFapi_Provision\fP" .br .ti -1c .RI "\fBFapi_GetPlatformCertificates\fP" .br .ti -1c .RI "\fBFapi_GetEsysBlobs\fP" .br .ti -1c .RI "\fBFapi_GetRandom\fP" .br .ti -1c .RI "\fBFapi_Import\fP" .br .ti -1c .RI "\fBFapi_List\fP" .br .ti -1c .RI "\fBFapi_Delete\fP" .br .ti -1c .RI "\fBFapi_ChangeAuth\fP" .br .ti -1c .RI "\fBFapi_SetDescription\fP" .br .ti -1c .RI "\fBFapi_GetDescription\fP" .br .ti -1c .RI "\fBFapi_SetAppData\fP" .br .ti -1c .RI "\fBFapi_GetAppData\fP" .br .ti -1c .RI "\fBFapi_GetTpmBlobs\fP" .br .ti -1c .RI "\fBFapi_CreateKey\fP" .br .ti -1c .RI "\fBFapi_Sign\fP" .br .ti -1c .RI "\fBFapi_VerifySignature\fP" .br .ti -1c .RI "\fBFapi_Encrypt\fP" .br .ti -1c .RI "\fBFapi_Decrypt\fP" .br .ti -1c .RI "\fBFapi_SetCertificate\fP" .br .ti -1c .RI "\fBFapi_GetCertificate\fP" .br .ti -1c .RI "\fBFapi_ExportKey\fP" .br .ti -1c .RI "\fBFapi_CreateSeal\fP" .br .ti -1c .RI "\fBFapi_Unseal\fP" .br .ti -1c .RI "\fBFapi_ExportPolicy\fP" .br .ti -1c .RI "\fBFapi_AuthorizePolicy\fP" .br .ti -1c .RI "\fBFapi_WriteAuthorizeNv\fP" .br .ti -1c .RI "\fBFapi_PcrRead\fP" .br .ti -1c .RI "\fBFapi_PcrExtend\fP" .br .ti -1c .RI "\fBFapi_Quote\fP" .br .ti -1c .RI "\fBFapi_VerifyQuote\fP" .br .ti -1c .RI "\fBFapi_CreateNv\fP" .br .ti -1c .RI "\fBFapi_NvRead\fP" .br .ti -1c .RI "\fBFapi_NvWrite\fP" .br .ti -1c .RI "\fBFapi_NvExtend\fP" .br .ti -1c .RI "\fBFapi_NvIncrement\fP" .br .ti -1c .RI "\fBFapi_NvSetBits\fP" .br .ti -1c .RI "\fBFapi_SetAuthCB\fP" .br .ti -1c .RI "\fBFapi_SetBranchCB\fP" .br .ti -1c .RI "\fBFapi_SetSignCB\fP" .br .ti -1c .RI "\fBInternals of Feature API\fP" .br .in -1c .SS "Typedefs" .in +1c .ti -1c .RI "typedef struct \fBFAPI_CONTEXT\fP \fBFAPI_CONTEXT\fP" .br .in -1c .SH "Detailed Description" .PP Feature API (FAPI) as described in the \fCTSS 2\&.0 Feature API (FAPI) Specification\fP\&. This API provides a very abstract view on TPM functionalities most suitable for 80 percent of applications\&. In mostly uses standard types in its parameter list\&. Policies are encoded in JSON, whereas most key material is encoded as PEM\&. Both the synchronous and asynchronous API are exposed through a single library: libtss2-fapi\&. In order to perform an asynchronous invocation of FAPI functions, the following code serves as a template: do { r = Fapi_GetPollHandles(fc, &ph, &nph); if (r == TSS2_RC_SUCCESS) { poll(ph, nph, -1); Fapi_Free(ph); } r = Fapi_*_Finish(fc, \&.\&.\&.); } while (r == TSS2_FAPI_RC_TRY_AGAIN); .SH "Typedef Documentation" .PP .SS "\fBFAPI_CONTEXT\fP" Reference to the \fBFAPI_CONTEXT\fP that holds data for the connection to the TPM as well as the metadata for TPM Resource as well as links to the key- and policy store or key material for encrypted sessions\&. .SH "Author" .PP Generated automatically by Doxygen for tpm2-tss from the source code\&.