tss2_fapi.h
/* SPDX-License-Identifier: BSD-2-Clause */
/*******************************************************************************
* Copyright 2017-2018, Fraunhofer SIT sponsored by Infineon Technologies AG
* All rights reserved.
*******************************************************************************/
#ifndef TSS2_FAPI_H
#define TSS2_FAPI_H
#include <stddef.h>
#include <stdint.h>
#include "tss2_tcti.h"
#ifdef __cplusplus
extern "C" {
#endif
/* Type definitions */
typedef struct FAPI_CONTEXT FAPI_CONTEXT;
/* Defines for blob type of Fapi_GetEsysBlob */
#define FAPI_ESYSBLOB_CONTEXTLOAD 1
#define FAPI_ESYSBLOB_DESERIALIZE 2
/* Context functions */
TSS2_RC Fapi_Initialize(
FAPI_CONTEXT **context,
char const *uri);
TSS2_RC Fapi_Initialize_Async(
FAPI_CONTEXT **context,
char const *uri);
TSS2_RC Fapi_Initialize_Finish(
FAPI_CONTEXT **context);
void Fapi_Finalize(
FAPI_CONTEXT **context);
TSS2_RC Fapi_GetTcti(
FAPI_CONTEXT *context,
TSS2_TCTI_CONTEXT **tcti);
void Fapi_Free(
void *ptr);
#if defined(__linux__) || defined(__unix__) || defined(__APPLE__) || defined (__QNXNTO__) || defined (__VXWORKS__)
#if defined (__VXWORKS__)
#include <sys/poll.h>
#else
#include <poll.h>
#endif
typedef struct pollfd FAPI_POLL_HANDLE;
#elif defined(_WIN32)
#include <windows.h>
typedef HANDLE FAPI_POLL_HANDLE;
#else
typedef void FAPI_POLL_HANDLE;
#ifndef FAPI_SUPPRESS_POLL_WARNINGS
#pragma message "Info: Platform not supported for FAPI_POLL_HANDLES"
#endif
#endif
TSS2_RC Fapi_GetPollHandles(
FAPI_CONTEXT *context,
FAPI_POLL_HANDLE **handles,
size_t *num_handles);
TSS2_RC Fapi_GetInfo(
FAPI_CONTEXT *context,
char **info);
TSS2_RC Fapi_GetInfo_Async(
FAPI_CONTEXT *context);
TSS2_RC Fapi_GetInfo_Finish(
FAPI_CONTEXT *context,
char **info);
/* General functions */
TSS2_RC Fapi_Provision(
FAPI_CONTEXT *context,
char const *authValueEh,
char const *authValueSh,
char const *authValueLockout);
TSS2_RC Fapi_Provision_Async(
FAPI_CONTEXT *context,
char const *authValueEh,
char const *authValueSh,
char const *authValueLockout);
TSS2_RC Fapi_Provision_Finish(
FAPI_CONTEXT *context);
TSS2_RC Fapi_GetPlatformCertificates(
FAPI_CONTEXT *context,
uint8_t **certificates,
size_t *certificatesSize);
TSS2_RC Fapi_GetPlatformCertificates_Async(
FAPI_CONTEXT *context);
TSS2_RC Fapi_GetPlatformCertificates_Finish(
FAPI_CONTEXT *context,
uint8_t **certificates,
size_t *certificatesSize);
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);
TSS2_RC Fapi_Import(
FAPI_CONTEXT *context,
char const *path,
char const *importData);
TSS2_RC Fapi_Import_Async(
FAPI_CONTEXT *context,
char const *path,
char const *importData);
TSS2_RC Fapi_Import_Finish(
FAPI_CONTEXT *context);
TSS2_RC Fapi_List(
FAPI_CONTEXT *context,
char const *searchPath,
char **pathList);
TSS2_RC Fapi_List_Async(
FAPI_CONTEXT *context,
char const *searchPath);
TSS2_RC Fapi_List_Finish(
FAPI_CONTEXT *context,
char **pathList);
TSS2_RC Fapi_Delete(
FAPI_CONTEXT *context,
char const *path);
TSS2_RC Fapi_Delete_Async(
FAPI_CONTEXT *context,
char const *path);
TSS2_RC Fapi_Delete_Finish(
FAPI_CONTEXT *context);
TSS2_RC Fapi_GetEsysBlob(
FAPI_CONTEXT *context,
char const *path,
uint8_t *type,
uint8_t **data,
size_t *length);
TSS2_RC Fapi_GetEsysBlob_Async(
FAPI_CONTEXT *context,
char const *path);
TSS2_RC Fapi_GetEsysBlob_Finish(
FAPI_CONTEXT *context,
uint8_t *type,
uint8_t **data,
size_t *length);
TSS2_RC Fapi_ChangeAuth(
FAPI_CONTEXT *context,
char const *entityPath,
char const *authValue);
TSS2_RC Fapi_ChangeAuth_Async(
FAPI_CONTEXT *context,
char const *entityPath,
char const *authValue);
TSS2_RC Fapi_ChangeAuth_Finish(
FAPI_CONTEXT *context);
TSS2_RC Fapi_SetDescription(
FAPI_CONTEXT *context,
char const *path,
char const *description);
TSS2_RC Fapi_SetDescription_Async(
FAPI_CONTEXT *context,
char const *path,
char const *description);
TSS2_RC Fapi_SetDescription_Finish(
FAPI_CONTEXT *context);
TSS2_RC Fapi_GetDescription(
FAPI_CONTEXT *context,
char const *path,
char **description);
TSS2_RC Fapi_GetDescription_Async(
FAPI_CONTEXT *context,
char const *path);
TSS2_RC Fapi_GetDescription_Finish(
FAPI_CONTEXT *context,
char **description);
TSS2_RC Fapi_SetAppData(
FAPI_CONTEXT *context,
char const *path,
uint8_t const *appData,
size_t appDataSize);
TSS2_RC Fapi_SetAppData_Async(
FAPI_CONTEXT *context,
char const *path,
uint8_t const *appData,
size_t appDataSize);
TSS2_RC Fapi_SetAppData_Finish(
FAPI_CONTEXT *context);
TSS2_RC Fapi_GetAppData(
FAPI_CONTEXT *context,
char const *path,
uint8_t **appData,
size_t *appDataSize);
TSS2_RC Fapi_GetAppData_Async(
FAPI_CONTEXT *context,
char const *path);
TSS2_RC Fapi_GetAppData_Finish(
FAPI_CONTEXT *context,
uint8_t **appData,
size_t *appDataSize);
TSS2_RC Fapi_GetTpmBlobs(
FAPI_CONTEXT *context,
char const *path,
uint8_t **tpm2bPublic,
size_t *tpm2bPublicSize,
uint8_t **tpm2bPrivate,
size_t *tpm2bPrivateSize,
char **policy);
TSS2_RC Fapi_GetTpmBlobs_Async(
FAPI_CONTEXT *context,
char const *path);
TSS2_RC Fapi_GetTpmBlobs_Finish(
FAPI_CONTEXT *context,
uint8_t **tpm2bPublic,
size_t *tpm2bPublicSize,
uint8_t **tpm2bPrivate,
size_t *tpm2bPrivateSize,
char **policy);
/* Key functions */
TSS2_RC Fapi_CreateKey(
FAPI_CONTEXT *context,
char const *path,
char const *type,
char const *policyPath,
char const *authValue);
TSS2_RC Fapi_CreateKey_Async(
FAPI_CONTEXT *context,
char const *path,
char const *type,
char const *policyPath,
char const *authValue);
TSS2_RC Fapi_CreateKey_Finish(
FAPI_CONTEXT *context);
TSS2_RC Fapi_Sign(
FAPI_CONTEXT *context,
char const *keyPath,
char const *padding,
uint8_t const *digest,
size_t digestSize,
uint8_t **signature,
size_t *signatureSize,
char **publicKey,
char **certificate);
TSS2_RC Fapi_Sign_Async(
FAPI_CONTEXT *context,
char const *keyPath,
char const *padding,
uint8_t const *digest,
size_t digestSize);
TSS2_RC Fapi_Sign_Finish(
FAPI_CONTEXT *context,
uint8_t **signature,
size_t *signatureSize,
char **publicKey,
char **certificate);
TSS2_RC Fapi_VerifySignature(
FAPI_CONTEXT *context,
char const *keyPath,
uint8_t const *digest,
size_t digestSize,
uint8_t const *signature,
size_t signatureSize);
TSS2_RC Fapi_VerifySignature_Async(
FAPI_CONTEXT *context,
char const *keyPath,
uint8_t const *digest,
size_t digestSize,
uint8_t const *signature,
size_t signatureSize);
TSS2_RC Fapi_VerifySignature_Finish(
FAPI_CONTEXT *context);
TSS2_RC Fapi_Encrypt(
FAPI_CONTEXT *context,
char const *keyPath,
uint8_t const *plainText,
size_t plainTextSize,
uint8_t **cipherText,
size_t *cipherTextSize);
TSS2_RC Fapi_Encrypt_Async(
FAPI_CONTEXT *context,
char const *keyPath,
uint8_t const *plainText,
size_t plainTextSize);
TSS2_RC Fapi_Encrypt_Finish(
FAPI_CONTEXT *context,
uint8_t **cipherText,
size_t *cipherTextSize );
TSS2_RC Fapi_Decrypt(
FAPI_CONTEXT *context,
char const *keyPath,
uint8_t const *cipherText,
size_t cipherTextSize,
uint8_t **plainText,
size_t *plainTextSize);
TSS2_RC Fapi_Decrypt_Async(
FAPI_CONTEXT *context,
char const *keyPath,
uint8_t const *cipherText,
size_t cipherTextSize);
TSS2_RC Fapi_Decrypt_Finish(
FAPI_CONTEXT *context,
uint8_t **plainText,
size_t *plainTextSize);
TSS2_RC Fapi_SetCertificate(
FAPI_CONTEXT *context,
char const *path,
char const *x509certData);
TSS2_RC Fapi_SetCertificate_Async(
FAPI_CONTEXT *context,
char const *path,
char const *x509certData);
TSS2_RC Fapi_SetCertificate_Finish(
FAPI_CONTEXT *context);
TSS2_RC Fapi_GetCertificate(
FAPI_CONTEXT *context,
char const *path,
char **x509certData);
TSS2_RC Fapi_GetCertificate_Async(
FAPI_CONTEXT *context,
char const *path);
TSS2_RC Fapi_GetCertificate_Finish(
FAPI_CONTEXT *context,
char **x509certData);
TSS2_RC Fapi_ExportKey(
FAPI_CONTEXT *context,
char const *pathOfKeyToDuplicate,
char const *pathToPublicKeyOfNewParent,
char **exportedData);
TSS2_RC Fapi_ExportKey_Async(
FAPI_CONTEXT *context,
char const *pathOfKeyToDuplicate,
char const *pathToPublicKeyOfNewParent);
TSS2_RC Fapi_ExportKey_Finish(
FAPI_CONTEXT *context,
char **exportedData);
/* Seal functions */
TSS2_RC Fapi_CreateSeal(
FAPI_CONTEXT *context,
char const *path,
char const *type,
size_t size,
char const *policyPath,
char const *authValue,
uint8_t const *data);
TSS2_RC Fapi_CreateSeal_Async(
FAPI_CONTEXT *context,
char const *path,
char const *type,
size_t size,
char const *policyPath,
char const *authValue,
uint8_t const *data);
TSS2_RC Fapi_CreateSeal_Finish(
FAPI_CONTEXT *context);
TSS2_RC Fapi_Unseal(
FAPI_CONTEXT *context,
char const *path,
uint8_t **data,
size_t *size);
TSS2_RC Fapi_Unseal_Async(
FAPI_CONTEXT *context,
char const *path);
TSS2_RC Fapi_Unseal_Finish(
FAPI_CONTEXT *context,
uint8_t **data,
size_t *size);
/* Policy functions */
TSS2_RC Fapi_ExportPolicy(
FAPI_CONTEXT *context,
char const *path,
char **jsonPolicy);
TSS2_RC Fapi_ExportPolicy_Async(
FAPI_CONTEXT *context,
char const *path);
TSS2_RC Fapi_ExportPolicy_Finish(
FAPI_CONTEXT *context,
char **jsonPolicy);
TSS2_RC Fapi_AuthorizePolicy(
FAPI_CONTEXT *context,
char const *policyPath,
char const *keyPath,
uint8_t const *policyRef,
size_t policyRefSize);
TSS2_RC Fapi_AuthorizePolicy_Async(
FAPI_CONTEXT *context,
char const *policyPath,
char const *keyPath,
uint8_t const *policyRef,
size_t policyRefSize);
TSS2_RC Fapi_AuthorizePolicy_Finish(
FAPI_CONTEXT *context);
TSS2_RC Fapi_WriteAuthorizeNv(
FAPI_CONTEXT *context,
char const *nvPath,
char const *policyPath);
TSS2_RC Fapi_WriteAuthorizeNv_Async(
FAPI_CONTEXT *context,
char const *nvPath,
char const *policyPath);
TSS2_RC Fapi_WriteAuthorizeNv_Finish(
FAPI_CONTEXT *context);
/* Attestation functions */
TSS2_RC Fapi_PcrRead(
FAPI_CONTEXT *context,
uint32_t pcrIndex,
uint8_t **pcrValue,
size_t *pcrValueSize,
char **pcrLog);
TSS2_RC Fapi_PcrRead_Async(
FAPI_CONTEXT *context,
uint32_t pcrIndex);
TSS2_RC Fapi_PcrRead_Finish(
FAPI_CONTEXT *context,
uint8_t **pcrValue,
size_t *pcrValueSize,
char **pcrLog);
TSS2_RC Fapi_PcrExtend(
FAPI_CONTEXT *context,
uint32_t pcr,
uint8_t const *data,
size_t dataSize,
char const *logData);
TSS2_RC Fapi_PcrExtend_Async(
FAPI_CONTEXT *context,
uint32_t pcr,
uint8_t const *data,
size_t dataSize,
char const *logData);
TSS2_RC Fapi_PcrExtend_Finish(
FAPI_CONTEXT *context);
TSS2_RC Fapi_Quote(
FAPI_CONTEXT *context,
uint32_t *pcrList,
size_t pcrListSize,
char const *keyPath,
char const *quoteType,
uint8_t const *qualifyingData,
size_t qualifyingDataSize,
char **quoteInfo,
uint8_t **signature,
size_t *signatureSize,
char **pcrLog,
char **certificate);
TSS2_RC Fapi_Quote_Async(
FAPI_CONTEXT *context,
uint32_t *pcrList,
size_t pcrListSize,
char const *keyPath,
char const *quoteType,
uint8_t const *qualifyingData,
size_t qualifyingDataSize);
TSS2_RC Fapi_Quote_Finish(
FAPI_CONTEXT *context,
char **quoteInfo,
uint8_t **signature,
size_t *signatureSize,
char **pcrLog,
char **certificate);
TSS2_RC Fapi_VerifyQuote(
FAPI_CONTEXT *context,
char const *publicKeyPath,
uint8_t const *qualifyingData,
size_t qualifyingDataSize,
char const *quoteInfo,
uint8_t const *signature,
size_t signatureSize,
char const *pcrLog);
TSS2_RC Fapi_VerifyQuote_Async(
FAPI_CONTEXT *context,
char const *publicKeyPath,
uint8_t const *qualifyingData,
size_t qualifyingDataSize,
char const *quoteInfo,
uint8_t const *signature,
size_t signatureSize,
char const *pcrLog);
TSS2_RC Fapi_VerifyQuote_Finish(
FAPI_CONTEXT *context);
/* NV functions */
TSS2_RC Fapi_CreateNv(
FAPI_CONTEXT *context,
char const *path,
char const *type,
size_t size,
char const *policyPath,
char const *authValue);
TSS2_RC Fapi_CreateNv_Async(
FAPI_CONTEXT *context,
char const *path,
char const *type,
size_t size,
char const *policyPath,
char const *authValue);
TSS2_RC Fapi_CreateNv_Finish(
FAPI_CONTEXT *context);
TSS2_RC Fapi_NvRead(
FAPI_CONTEXT *context,
char const *path,
uint8_t **data,
size_t *size,
char **logData);
TSS2_RC Fapi_NvRead_Async(
FAPI_CONTEXT *context,
char const *path);
TSS2_RC Fapi_NvRead_Finish(
FAPI_CONTEXT *context,
uint8_t **data,
size_t *size,
char **logData);
TSS2_RC Fapi_NvWrite(
FAPI_CONTEXT *context,
char const *path,
uint8_t const *data,
size_t size);
TSS2_RC Fapi_NvWrite_Async(
FAPI_CONTEXT *context,
char const *path,
uint8_t const *data,
size_t size);
TSS2_RC Fapi_NvWrite_Finish(
FAPI_CONTEXT *context);
TSS2_RC Fapi_NvExtend(
FAPI_CONTEXT *context,
char const *path,
uint8_t const *data,
size_t size,
char const *logData);
TSS2_RC Fapi_NvExtend_Async(
FAPI_CONTEXT *context,
char const *path,
uint8_t const *data,
size_t size,
char const *logData);
TSS2_RC Fapi_NvExtend_Finish(
FAPI_CONTEXT *context);
TSS2_RC Fapi_NvIncrement(
FAPI_CONTEXT *context,
char const *path);
TSS2_RC Fapi_NvIncrement_Async(
FAPI_CONTEXT *context,
char const *path);
TSS2_RC Fapi_NvIncrement_Finish(
FAPI_CONTEXT *context);
TSS2_RC Fapi_NvSetBits(
FAPI_CONTEXT *context,
char const *path,
uint64_t bitmap);
TSS2_RC Fapi_NvSetBits_Async(
FAPI_CONTEXT *context,
char const *path,
uint64_t bitmap);
TSS2_RC Fapi_NvSetBits_Finish(
FAPI_CONTEXT *context);
typedef TSS2_RC (*Fapi_CB_Auth)(
char const *objectPath,
char const *description,
char const **auth,
void *userData);
TSS2_RC Fapi_SetAuthCB(
FAPI_CONTEXT *context,
Fapi_CB_Auth callback,
void *userData);
typedef TSS2_RC (*Fapi_CB_Branch)(
char const *objectPath,
char const *description,
char const **branchNames,
size_t numBranches,
size_t *selectedBranch,
void *userData);
TSS2_RC Fapi_SetBranchCB(
FAPI_CONTEXT *context,
Fapi_CB_Branch callback,
void *userData);
typedef TSS2_RC (*Fapi_CB_Sign)(
char const *objectPath,
char const *description,
char const *publicKey,
char const *publicKeyHint,
uint32_t hashAlg,
uint8_t const *dataToSign,
size_t dataToSignSize,
uint8_t const **signature,
size_t *signatureSize,
void *userData);
TSS2_RC Fapi_SetSignCB(
FAPI_CONTEXT *context,
Fapi_CB_Sign callback,
void *userData);
typedef TSS2_RC (*Fapi_CB_PolicyAction)(
char const *objectPath,
char const *action,
void *userData);
TSS2_RC Fapi_SetPolicyActionCB(
FAPI_CONTEXT *context,
Fapi_CB_PolicyAction callback,
void *userData);
#ifdef __cplusplus
}
#endif
#endif /* TSS2_FAPI_H */
Fapi_AuthorizePolicy_Finish
TSS2_RC Fapi_AuthorizePolicy_Finish(FAPI_CONTEXT *context)
Definition Fapi_AuthorizePolicy.c:244
Fapi_AuthorizePolicy_Async
TSS2_RC Fapi_AuthorizePolicy_Async(FAPI_CONTEXT *context, char const *policyPath, char const *keyPath, uint8_t const *policyRef, size_t policyRefSize)
Definition Fapi_AuthorizePolicy.c:152
Fapi_AuthorizePolicy
TSS2_RC Fapi_AuthorizePolicy(FAPI_CONTEXT *context, char const *policyPath, char const *keyPath, uint8_t const *policyRef, size_t policyRefSize)
Definition Fapi_AuthorizePolicy.c:65
Fapi_ChangeAuth_Finish
TSS2_RC Fapi_ChangeAuth_Finish(FAPI_CONTEXT *context)
Definition Fapi_ChangeAuth.c:258
Fapi_ChangeAuth
TSS2_RC Fapi_ChangeAuth(FAPI_CONTEXT *context, char const *entityPath, char const *authValue)
Definition Fapi_ChangeAuth.c:66
Fapi_ChangeAuth_Async
TSS2_RC Fapi_ChangeAuth_Async(FAPI_CONTEXT *context, char const *entityPath, char const *authValue)
Definition Fapi_ChangeAuth.c:150
Fapi_CreateKey
TSS2_RC Fapi_CreateKey(FAPI_CONTEXT *context, char const *path, char const *type, char const *policyPath, char const *authValue)
Definition Fapi_CreateKey.c:69
Fapi_CreateKey_Async
TSS2_RC Fapi_CreateKey_Async(FAPI_CONTEXT *context, char const *path, char const *type, char const *policyPath, char const *authValue)
Definition Fapi_CreateKey.c:156
Fapi_CreateKey_Finish
TSS2_RC Fapi_CreateKey_Finish(FAPI_CONTEXT *context)
Definition Fapi_CreateKey.c:268
Fapi_CreateNv_Finish
TSS2_RC Fapi_CreateNv_Finish(FAPI_CONTEXT *context)
Definition Fapi_CreateNv.c:273
Fapi_CreateNv_Async
TSS2_RC Fapi_CreateNv_Async(FAPI_CONTEXT *context, char const *path, char const *type, size_t size, char const *policyPath, char const *authValue)
Definition Fapi_CreateNv.c:162
Fapi_CreateNv
TSS2_RC Fapi_CreateNv(FAPI_CONTEXT *context, char const *path, char const *type, size_t size, char const *policyPath, char const *authValue)
Definition Fapi_CreateNv.c:72
Fapi_CreateSeal
TSS2_RC Fapi_CreateSeal(FAPI_CONTEXT *context, char const *path, char const *type, size_t size, char const *policyPath, char const *authValue, uint8_t const *data)
Definition Fapi_CreateSeal.c:73
Fapi_CreateSeal_Async
TSS2_RC Fapi_CreateSeal_Async(FAPI_CONTEXT *context, char const *path, char const *type, size_t size, char const *policyPath, char const *authValue, uint8_t const *data)
Definition Fapi_CreateSeal.c:168
Fapi_CreateSeal_Finish
TSS2_RC Fapi_CreateSeal_Finish(FAPI_CONTEXT *context)
Definition Fapi_CreateSeal.c:251
Fapi_Decrypt
TSS2_RC Fapi_Decrypt(FAPI_CONTEXT *context, char const *keyPath, uint8_t const *cipherText, size_t cipherTextSize, uint8_t **plainText, size_t *plainTextSize)
Definition Fapi_Decrypt.c:72
Fapi_Decrypt_Async
TSS2_RC Fapi_Decrypt_Async(FAPI_CONTEXT *context, char const *keyPath, uint8_t const *cipherText, size_t cipherTextSize)
Definition Fapi_Decrypt.c:155
Fapi_Decrypt_Finish
TSS2_RC Fapi_Decrypt_Finish(FAPI_CONTEXT *context, uint8_t **plainText, size_t *plainTextSize)
Definition Fapi_Decrypt.c:243
Fapi_Delete_Async
TSS2_RC Fapi_Delete_Async(FAPI_CONTEXT *context, char const *path)
Definition Fapi_Delete.c:363
Fapi_Delete_Finish
TSS2_RC Fapi_Delete_Finish(FAPI_CONTEXT *context)
Definition Fapi_Delete.c:506
Fapi_Delete
TSS2_RC Fapi_Delete(FAPI_CONTEXT *context, char const *path)
Definition Fapi_Delete.c:300
Fapi_Encrypt
TSS2_RC Fapi_Encrypt(FAPI_CONTEXT *context, char const *keyPath, uint8_t const *plainText, size_t plainTextSize, uint8_t **cipherText, size_t *cipherTextSize)
Definition Fapi_Encrypt.c:76
Fapi_Encrypt_Finish
TSS2_RC Fapi_Encrypt_Finish(FAPI_CONTEXT *context, uint8_t **cipherText, size_t *cipherTextSize)
Definition Fapi_Encrypt.c:255
Fapi_Encrypt_Async
TSS2_RC Fapi_Encrypt_Async(FAPI_CONTEXT *context, char const *keyPath, uint8_t const *plainText, size_t plainTextSize)
Definition Fapi_Encrypt.c:161
Fapi_ExportKey_Finish
TSS2_RC Fapi_ExportKey_Finish(FAPI_CONTEXT *context, char **exportedData)
Definition Fapi_ExportKey.c:267
Fapi_ExportKey
TSS2_RC Fapi_ExportKey(FAPI_CONTEXT *context, char const *pathOfKeyToDuplicate, char const *pathToPublicKeyOfNewParent, char **exportedData)
Definition Fapi_ExportKey.c:77
Fapi_ExportKey_Async
TSS2_RC Fapi_ExportKey_Async(FAPI_CONTEXT *context, char const *pathOfKeyToDuplicate, char const *pathToPublicKeyOfNewParent)
Definition Fapi_ExportKey.c:170
Fapi_ExportPolicy
TSS2_RC Fapi_ExportPolicy(FAPI_CONTEXT *context, char const *path, char **jsonPolicy)
Definition Fapi_ExportPolicy.c:52
Fapi_ExportPolicy_Finish
TSS2_RC Fapi_ExportPolicy_Finish(FAPI_CONTEXT *context, char **jsonPolicy)
Definition Fapi_ExportPolicy.c:198
Fapi_ExportPolicy_Async
TSS2_RC Fapi_ExportPolicy_Async(FAPI_CONTEXT *context, char const *path)
Definition Fapi_ExportPolicy.c:126
Fapi_Finalize
void Fapi_Finalize(FAPI_CONTEXT **context)
Definition Fapi_Finalize.c:35
Fapi_Free
void Fapi_Free(void *ptr)
Definition Fapi_Free.c:23
Fapi_GetAppData_Finish
TSS2_RC Fapi_GetAppData_Finish(FAPI_CONTEXT *context, uint8_t **appData, size_t *appDataSize)
Definition Fapi_GetAppData.c:171
Fapi_GetAppData_Async
TSS2_RC Fapi_GetAppData_Async(FAPI_CONTEXT *context, char const *path)
Definition Fapi_GetAppData.c:120
Fapi_GetAppData
TSS2_RC Fapi_GetAppData(FAPI_CONTEXT *context, char const *path, uint8_t **appData, size_t *appDataSize)
Definition Fapi_GetAppData.c:57
Fapi_GetCertificate_Async
TSS2_RC Fapi_GetCertificate_Async(FAPI_CONTEXT *context, char const *path)
Definition Fapi_GetCertificate.c:124
Fapi_GetCertificate_Finish
TSS2_RC Fapi_GetCertificate_Finish(FAPI_CONTEXT *context, char **x509certData)
Definition Fapi_GetCertificate.c:178
Fapi_GetCertificate
TSS2_RC Fapi_GetCertificate(FAPI_CONTEXT *context, char const *path, char **x509certData)
Definition Fapi_GetCertificate.c:60
Fapi_GetDescription_Async
TSS2_RC Fapi_GetDescription_Async(FAPI_CONTEXT *context, char const *path)
Definition Fapi_GetDescription.c:113
Fapi_GetDescription
TSS2_RC Fapi_GetDescription(FAPI_CONTEXT *context, char const *path, char **description)
Definition Fapi_GetDescription.c:53
Fapi_GetDescription_Finish
TSS2_RC Fapi_GetDescription_Finish(FAPI_CONTEXT *context, char **description)
Definition Fapi_GetDescription.c:163
Fapi_GetEsysBlob_Finish
TSS2_RC Fapi_GetEsysBlob_Finish(FAPI_CONTEXT *context, uint8_t *type, uint8_t **data, size_t *length)
Definition Fapi_GetEsysBlob.c:231
Fapi_GetEsysBlob_Async
TSS2_RC Fapi_GetEsysBlob_Async(FAPI_CONTEXT *context, char const *path)
Definition Fapi_GetEsysBlob.c:135
Fapi_GetInfo_Finish
TSS2_RC Fapi_GetInfo_Finish(FAPI_CONTEXT *context, char **info)
Definition Fapi_GetInfo.c:205
Fapi_GetInfo
TSS2_RC Fapi_GetInfo(FAPI_CONTEXT *context, char **info)
Definition Fapi_GetInfo.c:79
Fapi_GetInfo_Async
TSS2_RC Fapi_GetInfo_Async(FAPI_CONTEXT *context)
Definition Fapi_GetInfo.c:150
Fapi_GetPlatformCertificates
TSS2_RC Fapi_GetPlatformCertificates(FAPI_CONTEXT *context, uint8_t **certificates, size_t *certificatesSize)
Definition Fapi_GetPlatformCertificates.c:67
Fapi_GetPlatformCertificates_Async
TSS2_RC Fapi_GetPlatformCertificates_Async(FAPI_CONTEXT *context)
Definition Fapi_GetPlatformCertificates.c:143
Fapi_GetPlatformCertificates_Finish
TSS2_RC Fapi_GetPlatformCertificates_Finish(FAPI_CONTEXT *context, uint8_t **certificates, size_t *certificatesSize)
Definition Fapi_GetPlatformCertificates.c:203
Fapi_GetPollHandles
TSS2_RC Fapi_GetPollHandles(FAPI_CONTEXT *context, FAPI_POLL_HANDLE **handles, size_t *num_handles)
Definition Fapi_GetPollHandles.c:46
Fapi_GetRandom
TSS2_RC Fapi_GetRandom(FAPI_CONTEXT *context, size_t numBytes, uint8_t **data)
Definition Fapi_GetRandom.c:59
Fapi_GetRandom_Async
TSS2_RC Fapi_GetRandom_Async(FAPI_CONTEXT *context, size_t numBytes)
Definition Fapi_GetRandom.c:139
Fapi_GetRandom_Finish
TSS2_RC Fapi_GetRandom_Finish(FAPI_CONTEXT *context, uint8_t **data)
Definition Fapi_GetRandom.c:212
Fapi_GetTcti
TSS2_RC Fapi_GetTcti(FAPI_CONTEXT *context, TSS2_TCTI_CONTEXT **tcti)
Definition Fapi_GetTcti.c:38
Fapi_GetTpmBlobs_Async
TSS2_RC Fapi_GetTpmBlobs_Async(FAPI_CONTEXT *context, char const *path)
Definition Fapi_GetTpmBlobs.c:127
Fapi_GetTpmBlobs_Finish
TSS2_RC Fapi_GetTpmBlobs_Finish(FAPI_CONTEXT *context, uint8_t **tpm2bPublic, size_t *tpm2bPublicSize, uint8_t **tpm2bPrivate, size_t *tpm2bPrivateSize, char **policy)
Definition Fapi_GetTpmBlobs.c:184
Fapi_GetTpmBlobs
TSS2_RC Fapi_GetTpmBlobs(FAPI_CONTEXT *context, char const *path, uint8_t **tpm2bPublic, size_t *tpm2bPublicSize, uint8_t **tpm2bPrivate, size_t *tpm2bPrivateSize, char **policy)
Definition Fapi_GetTpmBlobs.c:62
Fapi_Import_Finish
TSS2_RC Fapi_Import_Finish(FAPI_CONTEXT *context)
Definition Fapi_Import.c:412
Fapi_Import_Async
TSS2_RC Fapi_Import_Async(FAPI_CONTEXT *context, char const *path, char const *importData)
Definition Fapi_Import.c:138
Fapi_Import
TSS2_RC Fapi_Import(FAPI_CONTEXT *context, char const *path, char const *importData)
Definition Fapi_Import.c:70
Fapi_Initialize_Finish
TSS2_RC Fapi_Initialize_Finish(FAPI_CONTEXT **context)
Definition Fapi_Initialize.c:173
Fapi_Initialize_Async
TSS2_RC Fapi_Initialize_Async(FAPI_CONTEXT **context, char const *uri)
Definition Fapi_Initialize.c:107
Fapi_Initialize
TSS2_RC Fapi_Initialize(FAPI_CONTEXT **context, char const *uri)
Definition Fapi_Initialize.c:55
Fapi_List_Async
TSS2_RC Fapi_List_Async(FAPI_CONTEXT *context, char const *searchPath)
Definition Fapi_List.c:110
Fapi_List_Finish
TSS2_RC Fapi_List_Finish(FAPI_CONTEXT *context, char **pathList)
Definition Fapi_List.c:167
Fapi_List
TSS2_RC Fapi_List(FAPI_CONTEXT *context, char const *searchPath, char **pathList)
Definition Fapi_List.c:53
Fapi_NvExtend_Finish
TSS2_RC Fapi_NvExtend_Finish(FAPI_CONTEXT *context)
Definition Fapi_NvExtend.c:255
Fapi_NvExtend
TSS2_RC Fapi_NvExtend(FAPI_CONTEXT *context, char const *path, uint8_t const *data, size_t size, char const *logData)
Definition Fapi_NvExtend.c:66
Fapi_NvExtend_Async
TSS2_RC Fapi_NvExtend_Async(FAPI_CONTEXT *context, char const *path, uint8_t const *data, size_t size, char const *logData)
Definition Fapi_NvExtend.c:154
Fapi_NvIncrement_Finish
TSS2_RC Fapi_NvIncrement_Finish(FAPI_CONTEXT *context)
Definition Fapi_NvIncrement.c:217
Fapi_NvIncrement_Async
TSS2_RC Fapi_NvIncrement_Async(FAPI_CONTEXT *context, char const *path)
Definition Fapi_NvIncrement.c:143
Fapi_NvIncrement
TSS2_RC Fapi_NvIncrement(FAPI_CONTEXT *context, char const *path)
Definition Fapi_NvIncrement.c:61
Fapi_NvRead_Async
TSS2_RC Fapi_NvRead_Async(FAPI_CONTEXT *context, char const *path)
Definition Fapi_NvRead.c:152
Fapi_NvRead_Finish
TSS2_RC Fapi_NvRead_Finish(FAPI_CONTEXT *context, uint8_t **data, size_t *size, char **logData)
Definition Fapi_NvRead.c:232
Fapi_NvRead
TSS2_RC Fapi_NvRead(FAPI_CONTEXT *context, char const *path, uint8_t **data, size_t *size, char **logData)
Definition Fapi_NvRead.c:65
Fapi_NvSetBits_Async
TSS2_RC Fapi_NvSetBits_Async(FAPI_CONTEXT *context, char const *path, uint64_t bitmap)
Definition Fapi_NvSetBits.c:148
Fapi_NvSetBits
TSS2_RC Fapi_NvSetBits(FAPI_CONTEXT *context, char const *path, uint64_t bitmap)
Definition Fapi_NvSetBits.c:63
Fapi_NvSetBits_Finish
TSS2_RC Fapi_NvSetBits_Finish(FAPI_CONTEXT *context)
Definition Fapi_NvSetBits.c:225
Fapi_NvWrite_Finish
TSS2_RC Fapi_NvWrite_Finish(FAPI_CONTEXT *context)
Definition Fapi_NvWrite.c:239
Fapi_NvWrite_Async
TSS2_RC Fapi_NvWrite_Async(FAPI_CONTEXT *context, char const *path, uint8_t const *data, size_t size)
Definition Fapi_NvWrite.c:147
Fapi_NvWrite
TSS2_RC Fapi_NvWrite(FAPI_CONTEXT *context, char const *path, uint8_t const *data, size_t size)
Definition Fapi_NvWrite.c:65
Fapi_PcrExtend
TSS2_RC Fapi_PcrExtend(FAPI_CONTEXT *context, uint32_t pcr, uint8_t const *data, size_t dataSize, char const *logData)
Definition Fapi_PcrExtend.c:62
Fapi_PcrExtend_Async
TSS2_RC Fapi_PcrExtend_Async(FAPI_CONTEXT *context, uint32_t pcr, uint8_t const *data, size_t dataSize, char const *logData)
Definition Fapi_PcrExtend.c:144
Fapi_PcrExtend_Finish
TSS2_RC Fapi_PcrExtend_Finish(FAPI_CONTEXT *context)
Definition Fapi_PcrExtend.c:237
Fapi_PcrRead_Async
TSS2_RC Fapi_PcrRead_Async(FAPI_CONTEXT *context, uint32_t pcrIndex)
Definition Fapi_PcrRead.c:134
Fapi_PcrRead_Finish
TSS2_RC Fapi_PcrRead_Finish(FAPI_CONTEXT *context, uint8_t **pcrValue, size_t *pcrValueSize, char **pcrLog)
Definition Fapi_PcrRead.c:205
Fapi_PcrRead
TSS2_RC Fapi_PcrRead(FAPI_CONTEXT *context, uint32_t pcrIndex, uint8_t **pcrValue, size_t *pcrValueSize, char **pcrLog)
Definition Fapi_PcrRead.c:59
Fapi_Provision_Async
TSS2_RC Fapi_Provision_Async(FAPI_CONTEXT *context, char const *authValueEh, char const *authValueSh, char const *authValueLockout)
Definition Fapi_Provision.c:216
Fapi_Provision
TSS2_RC Fapi_Provision(FAPI_CONTEXT *context, char const *authValueEh, char const *authValueSh, char const *authValueLockout)
Definition Fapi_Provision.c:132
Fapi_Provision_Finish
TSS2_RC Fapi_Provision_Finish(FAPI_CONTEXT *context)
Definition Fapi_Provision.c:335
Fapi_Quote_Async
TSS2_RC Fapi_Quote_Async(FAPI_CONTEXT *context, uint32_t *pcrList, size_t pcrListSize, char const *keyPath, char const *quoteType, uint8_t const *qualifyingData, size_t qualifyingDataSize)
Definition Fapi_Quote.c:174
Fapi_Quote
TSS2_RC Fapi_Quote(FAPI_CONTEXT *context, uint32_t *pcrList, size_t pcrListSize, char const *keyPath, char const *quoteType, uint8_t const *qualifyingData, size_t qualifyingDataSize, char **quoteInfo, uint8_t **signature, size_t *signatureSize, char **pcrLog, char **certificate)
Definition Fapi_Quote.c:75
Fapi_Quote_Finish
TSS2_RC Fapi_Quote_Finish(FAPI_CONTEXT *context, char **quoteInfo, uint8_t **signature, size_t *signatureSize, char **pcrLog, char **certificate)
Definition Fapi_Quote.c:301
Fapi_SetAppData
TSS2_RC Fapi_SetAppData(FAPI_CONTEXT *context, char const *path, uint8_t const *appData, size_t appDataSize)
Definition Fapi_SetAppData.c:58
Fapi_SetAppData_Finish
TSS2_RC Fapi_SetAppData_Finish(FAPI_CONTEXT *context)
Definition Fapi_SetAppData.c:219
Fapi_SetAppData_Async
TSS2_RC Fapi_SetAppData_Async(FAPI_CONTEXT *context, char const *path, uint8_t const *appData, size_t appDataSize)
Definition Fapi_SetAppData.c:122
Fapi_SetAuthCB
TSS2_RC Fapi_SetAuthCB(FAPI_CONTEXT *context, Fapi_CB_Auth callback, void *userData)
Definition fapi_callback.c:84
Fapi_SetBranchCB
TSS2_RC Fapi_SetBranchCB(FAPI_CONTEXT *context, Fapi_CB_Branch callback, void *userData)
Definition fapi_callback.c:45
Fapi_SetCertificate_Finish
TSS2_RC Fapi_SetCertificate_Finish(FAPI_CONTEXT *context)
Definition Fapi_SetCertificate.c:204
Fapi_SetCertificate_Async
TSS2_RC Fapi_SetCertificate_Async(FAPI_CONTEXT *context, char const *path, char const *x509certData)
Definition Fapi_SetCertificate.c:126
Fapi_SetCertificate
TSS2_RC Fapi_SetCertificate(FAPI_CONTEXT *context, char const *path, char const *x509certData)
Definition Fapi_SetCertificate.c:61
Fapi_SetDescription_Finish
TSS2_RC Fapi_SetDescription_Finish(FAPI_CONTEXT *context)
Definition Fapi_SetDescription.c:196
Fapi_SetDescription
TSS2_RC Fapi_SetDescription(FAPI_CONTEXT *context, char const *path, char const *description)
Definition Fapi_SetDescription.c:54
Fapi_SetDescription_Async
TSS2_RC Fapi_SetDescription_Async(FAPI_CONTEXT *context, char const *path, char const *description)
Definition Fapi_SetDescription.c:115
Fapi_SetSignCB
TSS2_RC Fapi_SetSignCB(FAPI_CONTEXT *context, Fapi_CB_Sign callback, void *userData)
Definition fapi_callback.c:123
Fapi_SetPolicyActionCB
TSS2_RC Fapi_SetPolicyActionCB(FAPI_CONTEXT *context, Fapi_CB_PolicyAction callback, void *userData)
Definition fapi_callback.c:163
Fapi_Sign
TSS2_RC Fapi_Sign(FAPI_CONTEXT *context, char const *keyPath, char const *padding, uint8_t const *digest, size_t digestSize, uint8_t **signature, size_t *signatureSize, char **publicKey, char **certificate)
Definition Fapi_Sign.c:76
Fapi_Sign_Async
TSS2_RC Fapi_Sign_Async(FAPI_CONTEXT *context, char const *keyPath, char const *padding, uint8_t const *digest, size_t digestSize)
Definition Fapi_Sign.c:167
Fapi_Sign_Finish
TSS2_RC Fapi_Sign_Finish(FAPI_CONTEXT *context, uint8_t **signature, size_t *signatureSize, char **publicKey, char **certificate)
Definition Fapi_Sign.c:266
Fapi_Unseal
TSS2_RC Fapi_Unseal(FAPI_CONTEXT *context, char const *path, uint8_t **data, size_t *size)
Definition Fapi_Unseal.c:65
Fapi_Unseal_Finish
TSS2_RC Fapi_Unseal_Finish(FAPI_CONTEXT *context, uint8_t **data, size_t *size)
Definition Fapi_Unseal.c:215
Fapi_Unseal_Async
TSS2_RC Fapi_Unseal_Async(FAPI_CONTEXT *context, char const *path)
Definition Fapi_Unseal.c:143
Fapi_VerifyQuote_Async
TSS2_RC Fapi_VerifyQuote_Async(FAPI_CONTEXT *context, char const *publicKeyPath, uint8_t const *qualifyingData, size_t qualifyingDataSize, char const *quoteInfo, uint8_t const *signature, size_t signatureSize, char const *pcrLog)
Definition Fapi_VerifyQuote.c:145
Fapi_VerifyQuote
TSS2_RC Fapi_VerifyQuote(FAPI_CONTEXT *context, char const *publicKeyPath, uint8_t const *qualifyingData, size_t qualifyingDataSize, char const *quoteInfo, uint8_t const *signature, size_t signatureSize, char const *pcrLog)
Definition Fapi_VerifyQuote.c:66
Fapi_VerifyQuote_Finish
TSS2_RC Fapi_VerifyQuote_Finish(FAPI_CONTEXT *context)
Definition Fapi_VerifyQuote.c:264
Fapi_VerifySignature_Finish
TSS2_RC Fapi_VerifySignature_Finish(FAPI_CONTEXT *context)
Definition Fapi_VerifySignature.c:231
Fapi_VerifySignature
TSS2_RC Fapi_VerifySignature(FAPI_CONTEXT *context, char const *keyPath, uint8_t const *digest, size_t digestSize, uint8_t const *signature, size_t signatureSize)
Definition Fapi_VerifySignature.c:63
Fapi_VerifySignature_Async
TSS2_RC Fapi_VerifySignature_Async(FAPI_CONTEXT *context, char const *keyPath, uint8_t const *digest, size_t digestSize, uint8_t const *signature, size_t signatureSize)
Definition Fapi_VerifySignature.c:138
Fapi_WriteAuthorizeNv_Async
TSS2_RC Fapi_WriteAuthorizeNv_Async(FAPI_CONTEXT *context, char const *nvPath, char const *policyPath)
Definition Fapi_WriteAuthorizeNV.c:143
Fapi_WriteAuthorizeNv_Finish
TSS2_RC Fapi_WriteAuthorizeNv_Finish(FAPI_CONTEXT *context)
Definition Fapi_WriteAuthorizeNV.c:223
Fapi_WriteAuthorizeNv
TSS2_RC Fapi_WriteAuthorizeNv(FAPI_CONTEXT *context, char const *nvPath, char const *policyPath)
Definition Fapi_WriteAuthorizeNV.c:60
FAPI_CONTEXT
Definition fapi_int.h:1164