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

Modules

 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

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.