tpm2-tss 4.1.3
TPM Software stack 2.0 TCG spec compliant implementation
Feature API

Topics

 Fapi_Initialize
 Fapi_Finalize
 Fapi_GetTcti
 Fapi_GetPollHandles
 Fapi_Free
 Fapi_GetInfo
 Fapi_Provision
 Fapi_GetPlatformCertificates
 Fapi_GetEsysBlobs
 Fapi_GetRandom
 Fapi_Import
 Fapi_List
 Fapi_Delete
 Fapi_ChangeAuth
 Fapi_SetDescription
 Fapi_GetDescription
 Fapi_SetAppData
 Fapi_GetAppData
 Fapi_GetTpmBlobs
 Fapi_CreateKey
 Fapi_Sign
 Fapi_VerifySignature
 Fapi_Encrypt
 Fapi_Decrypt
 Fapi_SetCertificate
 Fapi_GetCertificate
 Fapi_ExportKey
 Fapi_CreateSeal
 Fapi_Unseal
 Fapi_ExportPolicy
 Fapi_AuthorizePolicy
 Fapi_WriteAuthorizeNv
 Fapi_PcrRead
 Fapi_PcrExtend
 Fapi_Quote
 Fapi_VerifyQuote
 Fapi_CreateNv
 Fapi_NvRead
 Fapi_NvWrite
 Fapi_NvExtend
 Fapi_NvIncrement
 Fapi_NvSetBits
 Fapi_SetAuthCB
 Fapi_SetBranchCB
 Fapi_SetSignCB
 Internals of Feature API

Typedefs

typedef struct FAPI_CONTEXT FAPI_CONTEXT

Detailed Description

Feature API (FAPI) as described in the TSS 2.0 Feature API (FAPI) Specification. 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);

Typedef Documentation

◆ FAPI_CONTEXT

typedef struct FAPI_CONTEXT FAPI_CONTEXT

Reference to the FAPI_CONTEXT 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.