16typedef uint32_t ESYS_TR;
18#define ESYS_TR_NONE 0xfffU
19#define ESYS_TR_PASSWORD 0x0ffU
20#define ESYS_TR_PCR0 0U
21#define ESYS_TR_PCR1 1U
22#define ESYS_TR_PCR2 2U
23#define ESYS_TR_PCR3 3U
24#define ESYS_TR_PCR4 4U
25#define ESYS_TR_PCR5 5U
26#define ESYS_TR_PCR6 6U
27#define ESYS_TR_PCR7 7U
28#define ESYS_TR_PCR8 8U
29#define ESYS_TR_PCR9 9U
30#define ESYS_TR_PCR10 10U
31#define ESYS_TR_PCR11 11U
32#define ESYS_TR_PCR12 12U
33#define ESYS_TR_PCR13 13U
34#define ESYS_TR_PCR14 14U
35#define ESYS_TR_PCR15 15U
36#define ESYS_TR_PCR16 16U
37#define ESYS_TR_PCR17 17U
38#define ESYS_TR_PCR18 18U
39#define ESYS_TR_PCR19 19U
40#define ESYS_TR_PCR20 20U
41#define ESYS_TR_PCR21 21U
42#define ESYS_TR_PCR22 22U
43#define ESYS_TR_PCR23 23U
44#define ESYS_TR_PCR24 24U
45#define ESYS_TR_PCR25 25U
46#define ESYS_TR_PCR26 26U
47#define ESYS_TR_PCR27 27U
48#define ESYS_TR_PCR28 28U
49#define ESYS_TR_PCR29 29U
50#define ESYS_TR_PCR30 30U
51#define ESYS_TR_PCR31 31U
54#define ESYS_TR_RH_OWNER 0x101U
55#define ESYS_TR_RH_NULL 0x107U
56#define ESYS_TR_RH_LOCKOUT 0x10AU
57#define ESYS_TR_RH_ENDORSEMENT 0x10BU
58#define ESYS_TR_RH_PLATFORM 0x10CU
59#define ESYS_TR_RH_PLATFORM_NV 0x10DU
61#define ESYS_TR_RH_AUTH_FIRST 0x110U
62#define ESYS_TR_RH_AUTH(x) (ESYS_TR_RH_AUTH_FIRST + (ESYS_TR)(x))
63#define ESYS_TR_RH_ACT_FIRST 0x120U
64#define ESYS_TR_RH_ACT(x) (ESYS_TR_RH_ACT_FIRST + (ESYS_TR)(x))
65#define ESYS_TR_RH_ACT_0 ESYS_TR_RH_ACT_FIRST
66#define ESYS_TR_RH_ACT_1 0x121U
67#define ESYS_TR_RH_ACT_2 0x122U
68#define ESYS_TR_RH_ACT_3 0x123U
69#define ESYS_TR_RH_ACT_4 0x124U
70#define ESYS_TR_RH_ACT_5 0x125U
71#define ESYS_TR_RH_ACT_6 0x126U
72#define ESYS_TR_RH_ACT_7 0x127U
73#define ESYS_TR_RH_ACT_8 0x128U
74#define ESYS_TR_RH_ACT_9 0x129U
75#define ESYS_TR_RH_ACT_A 0x12AU
76#define ESYS_TR_RH_ACT_B 0x12BU
77#define ESYS_TR_RH_ACT_C 0x12CU
78#define ESYS_TR_RH_ACT_D 0x12DU
79#define ESYS_TR_RH_ACT_E 0x12EU
80#define ESYS_TR_RH_ACT_F 0x12FU
81#define ESYS_TR_RH_ACT_LAST ESYS_TR_RH_ACT_F
82#define ESYS_TR_RH_AC_FIRST 0x140U
83#define ESYS_TR_RH_AC(x) (ESYS_TR_RH_AC_FIRST + (ESYS_TR)(x))
84#define ESYS_TR_RH_AC_LAST (ESYS_TR_RH_AC_FIRST + 0xFFFFU)
104 (*ESYS_CRYPTO_HASH_START_FNP)(
121 (*ESYS_CRYPTO_HASH_UPDATE_FNP)(
123 const uint8_t *buffer,
139 (*ESYS_CRYPTO_HASH_FINISH_FNP)(
152 (*ESYS_CRYPTO_HASH_ABORT_FNP)(
169 (*ESYS_CRYPTO_HMAC_START_FNP)(
188 (*ESYS_CRYPTO_HMAC_UPDATE_FNP)(
190 const uint8_t *buffer,
206 (*ESYS_CRYPTO_HMAC_FINISH_FNP)(
219 (*ESYS_CRYPTO_HMAC_ABORT_FNP)(
234 (*ESYS_CRYPTO_GET_RANDOM2B_FNP)(
257 (*ESYS_CRYPTO_GET_ECDH_POINT_FNP)(
260 TPM2B_ECC_PARAMETER *Z,
282 (*ESYS_CRYPTO_AES_ENCRYPT_FNP)(
284 TPM2_ALG_ID tpm_sym_alg,
285 TPMI_AES_KEY_BITS key_bits,
286 TPM2_ALG_ID tpm_mode,
308 (*ESYS_CRYPTO_AES_DECRYPT_FNP)(
310 TPM2_ALG_ID tpm_sym_alg,
311 TPMI_AES_KEY_BITS key_bits,
312 TPM2_ALG_ID tpm_mode,
334 (*ESYS_CRYPTO_PK_RSA_ENCRYPT_FNP)(
335 TPM2B_PUBLIC * pub_tpm_key,
353typedef TSS2_RC (*ESYS_CRYPTO_INIT_FNP)(
void *userdata);
357 ESYS_CRYPTO_PK_RSA_ENCRYPT_FNP rsa_pk_encrypt;
358 ESYS_CRYPTO_HASH_START_FNP hash_start;
359 ESYS_CRYPTO_HASH_UPDATE_FNP hash_update;
360 ESYS_CRYPTO_HASH_FINISH_FNP hash_finish;
361 ESYS_CRYPTO_HASH_ABORT_FNP hash_abort;
362 ESYS_CRYPTO_HMAC_START_FNP hmac_start;
363 ESYS_CRYPTO_HMAC_UPDATE_FNP hmac_update;
364 ESYS_CRYPTO_HMAC_FINISH_FNP hmac_finish;
365 ESYS_CRYPTO_HMAC_ABORT_FNP hmac_abort;
366 ESYS_CRYPTO_GET_RANDOM2B_FNP get_random2b;
367 ESYS_CRYPTO_GET_ECDH_POINT_FNP get_ecdh_point;
368 ESYS_CRYPTO_AES_ENCRYPT_FNP aes_encrypt;
369 ESYS_CRYPTO_AES_DECRYPT_FNP aes_decrypt;
370 ESYS_CRYPTO_INIT_FNP init;
381 TSS2_TCTI_CONTEXT *tcti,
382 TSS2_ABI_VERSION *abiVersion);
391 TSS2_TCTI_CONTEXT **tcti);
396 TSS2_TCTI_POLL_HANDLE **handles,
409 size_t *buffer_size);
414 uint8_t
const *buffer,
416 ESYS_TR *esys_handle);
419Esys_TR_FromTPMPublic_Async(
421 TPM2_HANDLE tpm_handle,
422 ESYS_TR optionalSession1,
423 ESYS_TR optionalSession2,
424 ESYS_TR optionalSession3);
427Esys_TR_FromTPMPublic_Finish(
432Esys_TR_FromTPMPublic(
434 TPM2_HANDLE tpm_handle,
435 ESYS_TR optionalSession1,
436 ESYS_TR optionalSession2,
437 ESYS_TR optionalSession3,
443 ESYS_TR *rsrc_handle);
449 TPM2B_AUTH
const *authValue);
458Esys_TRSess_GetAttributes(
461 TPMA_SESSION *flags);
464Esys_TRSess_SetAttributes(
471Esys_TRSess_GetNonceTPM(
474 TPM2B_NONCE **nonceTPM);
480 TPM2_HANDLE *tpm_handle);
483Esys_TRSess_GetAuthRequired(
486 TPMI_YES_NO *auth_needed);
493 TPM2_SU startupType);
498 TPM2_SU startupType);
512 TPM2_SU shutdownType);
520 TPM2_SU shutdownType);
534 TPMI_YES_NO fullTest);
542 TPMI_YES_NO fullTest);
551Esys_IncrementalSelfTest(
556 const TPML_ALG *toTest,
557 TPML_ALG **toDoList);
560Esys_IncrementalSelfTest_Async(
565 const TPML_ALG *toTest);
568Esys_IncrementalSelfTest_Finish(
570 TPML_ALG **toDoList);
580 TPM2B_MAX_BUFFER **outData,
581 TPM2_RC *testResult);
584Esys_GetTestResult_Async(
591Esys_GetTestResult_Finish(
593 TPM2B_MAX_BUFFER **outData,
594 TPM2_RC *testResult);
599Esys_StartAuthSession(
606 const TPM2B_NONCE *nonceCaller,
608 const TPMT_SYM_DEF *symmetric,
609 TPMI_ALG_HASH authHash,
610 ESYS_TR *sessionHandle);
613Esys_StartAuthSession_Async(
620 const TPM2B_NONCE *nonceCaller,
622 const TPMT_SYM_DEF *symmetric,
623 TPMI_ALG_HASH authHash);
626Esys_StartAuthSession_Finish(
628 ESYS_TR *sessionHandle);
635 ESYS_TR sessionHandle,
641Esys_PolicyRestart_Async(
643 ESYS_TR sessionHandle,
649Esys_PolicyRestart_Finish(
657 ESYS_TR parentHandle,
661 const TPM2B_SENSITIVE_CREATE *inSensitive,
662 const TPM2B_PUBLIC *inPublic,
663 const TPM2B_DATA *outsideInfo,
664 const TPML_PCR_SELECTION *creationPCR,
665 TPM2B_PRIVATE **outPrivate,
666 TPM2B_PUBLIC **outPublic,
667 TPM2B_CREATION_DATA **creationData,
668 TPM2B_DIGEST **creationHash,
669 TPMT_TK_CREATION **creationTicket);
674 ESYS_TR parentHandle,
678 const TPM2B_SENSITIVE_CREATE *inSensitive,
679 const TPM2B_PUBLIC *inPublic,
680 const TPM2B_DATA *outsideInfo,
681 const TPML_PCR_SELECTION *creationPCR);
686 TPM2B_PRIVATE **outPrivate,
687 TPM2B_PUBLIC **outPublic,
688 TPM2B_CREATION_DATA **creationData,
689 TPM2B_DIGEST **creationHash,
690 TPMT_TK_CREATION **creationTicket);
697 ESYS_TR parentHandle,
701 const TPM2B_PRIVATE *inPrivate,
702 const TPM2B_PUBLIC *inPublic,
703 ESYS_TR *objectHandle);
708 ESYS_TR parentHandle,
712 const TPM2B_PRIVATE *inPrivate,
713 const TPM2B_PUBLIC *inPublic);
718 ESYS_TR *objectHandle);
728 const TPM2B_SENSITIVE *inPrivate,
729 const TPM2B_PUBLIC *inPublic,
731 ESYS_TR *objectHandle);
734Esys_LoadExternal_Async(
739 const TPM2B_SENSITIVE *inPrivate,
740 const TPM2B_PUBLIC *inPublic,
744Esys_LoadExternal_Finish(
746 ESYS_TR *objectHandle);
753 ESYS_TR objectHandle,
757 TPM2B_PUBLIC **outPublic,
759 TPM2B_NAME **qualifiedName);
762Esys_ReadPublic_Async(
764 ESYS_TR objectHandle,
770Esys_ReadPublic_Finish(
772 TPM2B_PUBLIC **outPublic,
774 TPM2B_NAME **qualifiedName);
779Esys_ActivateCredential(
781 ESYS_TR activateHandle,
786 const TPM2B_ID_OBJECT *credentialBlob,
787 const TPM2B_ENCRYPTED_SECRET *secret,
788 TPM2B_DIGEST **certInfo);
791Esys_ActivateCredential_Async(
793 ESYS_TR activateHandle,
798 const TPM2B_ID_OBJECT *credentialBlob,
799 const TPM2B_ENCRYPTED_SECRET *secret);
802Esys_ActivateCredential_Finish(
804 TPM2B_DIGEST **certInfo);
813 UINT32 startTimeout);
816Esys_ACT_SetTimeout_Async(
822 UINT32 startTimeout);
825Esys_ACT_SetTimeout_Finish(
829Esys_AC_GetCapability_Async(
831 ESYS_TR optionalSession1,
832 ESYS_TR optionalSession2,
833 ESYS_TR optionalSession3,
839Esys_AC_GetCapability_Finish(
841 TPMI_YES_NO *moreData,
842 TPML_AC_CAPABILITIES **capabilityData);
845Esys_AC_GetCapability(
847 ESYS_TR optionalSession1,
848 ESYS_TR optionalSession2,
849 ESYS_TR optionalSession3,
853 TPMI_YES_NO *moreData,
854 TPML_AC_CAPABILITIES **capabilityData);
860 ESYS_TR nvAuthHandle,
861 ESYS_TR optionalSession1,
862 ESYS_TR optionalSession2,
863 ESYS_TR optionalSession3,
865 TPM2B_MAX_BUFFER *acDataIn);
870 TPMS_AC_OUTPUT **acDataOut);
876 ESYS_TR nvAuthHandle,
877 ESYS_TR optionalSession1,
878 ESYS_TR optionalSession2,
879 ESYS_TR optionalSession3,
881 TPM2B_MAX_BUFFER *acDataIn,
882 TPMS_AC_OUTPUT **acDataOut);
885Esys_Policy_AC_SendSelect_Async(
887 ESYS_TR policySession1,
888 ESYS_TR optionalSession2,
889 ESYS_TR optionalSession3,
890 TPM2B_NAME *objectName,
891 TPM2B_NAME *authHandleName,
893 const TPMI_YES_NO includeObject);
896Esys_Policy_AC_SendSelect_Finish(
900Esys_Policy_AC_SendSelect(
902 ESYS_TR policySession1,
903 ESYS_TR optionalSession2,
904 ESYS_TR optionalSession3,
905 TPM2B_NAME *objectName,
906 TPM2B_NAME *authHandleName,
908 TPMI_YES_NO includeObject);
919 const TPM2B_DIGEST *credential,
920 const TPM2B_NAME *objectName,
921 TPM2B_ID_OBJECT **credentialBlob,
922 TPM2B_ENCRYPTED_SECRET **secret);
925Esys_MakeCredential_Async(
931 const TPM2B_DIGEST *credential,
932 const TPM2B_NAME *objectName);
935Esys_MakeCredential_Finish(
937 TPM2B_ID_OBJECT **credentialBlob,
938 TPM2B_ENCRYPTED_SECRET **secret);
949 TPM2B_SENSITIVE_DATA **outData);
962 TPM2B_SENSITIVE_DATA **outData);
967Esys_ObjectChangeAuth(
969 ESYS_TR objectHandle,
970 ESYS_TR parentHandle,
974 const TPM2B_AUTH *newAuth,
975 TPM2B_PRIVATE **outPrivate);
978Esys_ObjectChangeAuth_Async(
980 ESYS_TR objectHandle,
981 ESYS_TR parentHandle,
985 const TPM2B_AUTH *newAuth);
988Esys_ObjectChangeAuth_Finish(
990 TPM2B_PRIVATE **outPrivate);
997 ESYS_TR parentHandle,
1001 const TPM2B_SENSITIVE_CREATE *inSensitive,
1002 const TPM2B_TEMPLATE *inPublic,
1003 ESYS_TR *objectHandle,
1004 TPM2B_PRIVATE **outPrivate,
1005 TPM2B_PUBLIC **outPublic);
1008Esys_CreateLoaded_Async(
1010 ESYS_TR parentHandle,
1014 const TPM2B_SENSITIVE_CREATE *inSensitive,
1015 const TPM2B_TEMPLATE *inPublic);
1018Esys_CreateLoaded_Finish(
1020 ESYS_TR *objectHandle,
1021 TPM2B_PRIVATE **outPrivate,
1022 TPM2B_PUBLIC **outPublic);
1029 ESYS_TR objectHandle,
1030 ESYS_TR newParentHandle,
1034 const TPM2B_DATA *encryptionKeyIn,
1035 const TPMT_SYM_DEF_OBJECT *symmetricAlg,
1036 TPM2B_DATA **encryptionKeyOut,
1037 TPM2B_PRIVATE **duplicate,
1038 TPM2B_ENCRYPTED_SECRET **outSymSeed);
1041Esys_Duplicate_Async(
1043 ESYS_TR objectHandle,
1044 ESYS_TR newParentHandle,
1048 const TPM2B_DATA *encryptionKeyIn,
1049 const TPMT_SYM_DEF_OBJECT *symmetricAlg);
1052Esys_Duplicate_Finish(
1054 TPM2B_DATA **encryptionKeyOut,
1055 TPM2B_PRIVATE **duplicate,
1056 TPM2B_ENCRYPTED_SECRET **outSymSeed);
1068 const TPM2B_PRIVATE *inDuplicate,
1069 const TPM2B_NAME *name,
1070 const TPM2B_ENCRYPTED_SECRET *inSymSeed,
1071 TPM2B_PRIVATE **outDuplicate,
1072 TPM2B_ENCRYPTED_SECRET **outSymSeed);
1082 const TPM2B_PRIVATE *inDuplicate,
1083 const TPM2B_NAME *name,
1084 const TPM2B_ENCRYPTED_SECRET *inSymSeed);
1089 TPM2B_PRIVATE **outDuplicate,
1090 TPM2B_ENCRYPTED_SECRET **outSymSeed);
1097 ESYS_TR parentHandle,
1101 const TPM2B_DATA *encryptionKey,
1102 const TPM2B_PUBLIC *objectPublic,
1103 const TPM2B_PRIVATE *duplicate,
1104 const TPM2B_ENCRYPTED_SECRET *inSymSeed,
1105 const TPMT_SYM_DEF_OBJECT *symmetricAlg,
1106 TPM2B_PRIVATE **outPrivate);
1111 ESYS_TR parentHandle,
1115 const TPM2B_DATA *encryptionKey,
1116 const TPM2B_PUBLIC *objectPublic,
1117 const TPM2B_PRIVATE *duplicate,
1118 const TPM2B_ENCRYPTED_SECRET *inSymSeed,
1119 const TPMT_SYM_DEF_OBJECT *symmetricAlg);
1124 TPM2B_PRIVATE **outPrivate);
1135 const TPM2B_PUBLIC_KEY_RSA *message,
1136 const TPMT_RSA_DECRYPT *inScheme,
1137 const TPM2B_DATA *label,
1138 TPM2B_PUBLIC_KEY_RSA **outData);
1141Esys_RSA_Encrypt_Async(
1147 const TPM2B_PUBLIC_KEY_RSA *message,
1148 const TPMT_RSA_DECRYPT *inScheme,
1149 const TPM2B_DATA *label);
1152Esys_RSA_Encrypt_Finish(
1154 TPM2B_PUBLIC_KEY_RSA **outData);
1165 const TPM2B_PUBLIC_KEY_RSA *cipherText,
1166 const TPMT_RSA_DECRYPT *inScheme,
1167 const TPM2B_DATA *label,
1168 TPM2B_PUBLIC_KEY_RSA **message);
1171Esys_RSA_Decrypt_Async(
1177 const TPM2B_PUBLIC_KEY_RSA *cipherText,
1178 const TPMT_RSA_DECRYPT *inScheme,
1179 const TPM2B_DATA *label);
1182Esys_RSA_Decrypt_Finish(
1184 TPM2B_PUBLIC_KEY_RSA **message);
1195 TPM2B_ECC_POINT **zPoint,
1196 TPM2B_ECC_POINT **pubPoint);
1199Esys_ECDH_KeyGen_Async(
1207Esys_ECDH_KeyGen_Finish(
1209 TPM2B_ECC_POINT **zPoint,
1210 TPM2B_ECC_POINT **pubPoint);
1221 const TPM2B_ECC_POINT *inPoint,
1222 TPM2B_ECC_POINT **outPoint);
1225Esys_ECDH_ZGen_Async(
1231 const TPM2B_ECC_POINT *inPoint);
1234Esys_ECDH_ZGen_Finish(
1236 TPM2B_ECC_POINT **outPoint);
1246 TPMI_ECC_CURVE curveID,
1247 TPMS_ALGORITHM_DETAIL_ECC **parameters);
1250Esys_ECC_Parameters_Async(
1255 TPMI_ECC_CURVE curveID);
1258Esys_ECC_Parameters_Finish(
1260 TPMS_ALGORITHM_DETAIL_ECC **parameters);
1271 const TPM2B_ECC_POINT *inQsB,
1272 const TPM2B_ECC_POINT *inQeB,
1273 TPMI_ECC_KEY_EXCHANGE inScheme,
1275 TPM2B_ECC_POINT **outZ1,
1276 TPM2B_ECC_POINT **outZ2);
1279Esys_ZGen_2Phase_Async(
1285 const TPM2B_ECC_POINT *inQsB,
1286 const TPM2B_ECC_POINT *inQeB,
1287 TPMI_ECC_KEY_EXCHANGE inScheme,
1291Esys_ZGen_2Phase_Finish(
1293 TPM2B_ECC_POINT **outZ1,
1294 TPM2B_ECC_POINT **outZ2);
1305 TPMI_YES_NO decrypt,
1306 TPMI_ALG_CIPHER_MODE mode,
1307 const TPM2B_IV *ivIn,
1308 const TPM2B_MAX_BUFFER *inData,
1309 TPM2B_MAX_BUFFER **outData,
1313Esys_EncryptDecrypt_Async(
1319 TPMI_YES_NO decrypt,
1320 TPMI_ALG_CIPHER_MODE mode,
1321 const TPM2B_IV *ivIn,
1322 const TPM2B_MAX_BUFFER *inData);
1325Esys_EncryptDecrypt_Finish(
1327 TPM2B_MAX_BUFFER **outData,
1333Esys_EncryptDecrypt2(
1339 const TPM2B_MAX_BUFFER *inData,
1340 TPMI_YES_NO decrypt,
1341 TPMI_ALG_CIPHER_MODE mode,
1342 const TPM2B_IV *ivIn,
1343 TPM2B_MAX_BUFFER **outData,
1347Esys_EncryptDecrypt2_Async(
1353 const TPM2B_MAX_BUFFER *inData,
1354 TPMI_YES_NO decrypt,
1355 TPMI_ALG_CIPHER_MODE mode,
1356 const TPM2B_IV *ivIn);
1359Esys_EncryptDecrypt2_Finish(
1361 TPM2B_MAX_BUFFER **outData,
1372 const TPM2B_MAX_BUFFER *data,
1373 TPMI_ALG_HASH hashAlg,
1375 TPM2B_DIGEST **outHash,
1376 TPMT_TK_HASHCHECK **validation);
1384 const TPM2B_MAX_BUFFER *data,
1385 TPMI_ALG_HASH hashAlg,
1391 TPM2B_DIGEST **outHash,
1392 TPMT_TK_HASHCHECK **validation);
1403 const TPM2B_MAX_BUFFER *buffer,
1404 TPMI_ALG_HASH hashAlg,
1405 TPM2B_DIGEST **outHMAC);
1414 const TPM2B_MAX_BUFFER *buffer,
1415 TPMI_ALG_HASH hashAlg);
1420 TPM2B_DIGEST **outHMAC);
1426 ESYS_TR handleSession1,
1427 ESYS_TR optionalSession2,
1428 ESYS_TR optionalSession3,
1429 const TPM2B_MAX_BUFFER *buffer,
1430 TPMI_ALG_MAC_SCHEME inScheme);
1435 TPM2B_DIGEST **outMAC);
1441 ESYS_TR handleSession1,
1442 ESYS_TR optionalSession2,
1443 ESYS_TR optionalSession3,
1444 const TPM2B_MAX_BUFFER *buffer,
1445 TPMI_ALG_MAC_SCHEME inScheme,
1446 TPM2B_DIGEST **outMAC);
1456 UINT16 bytesRequested,
1457 TPM2B_DIGEST **randomBytes);
1460Esys_GetRandom_Async(
1465 UINT16 bytesRequested);
1468Esys_GetRandom_Finish(
1470 TPM2B_DIGEST **randomBytes);
1480 const TPM2B_SENSITIVE_DATA *inData);
1483Esys_StirRandom_Async(
1488 const TPM2B_SENSITIVE_DATA *inData);
1491Esys_StirRandom_Finish(
1503 const TPM2B_AUTH *auth,
1504 TPMI_ALG_HASH hashAlg,
1505 ESYS_TR *sequenceHandle);
1508Esys_HMAC_Start_Async(
1514 const TPM2B_AUTH *auth,
1515 TPMI_ALG_HASH hashAlg);
1518Esys_HMAC_Start_Finish(
1520 ESYS_TR *sequenceHandle);
1526 ESYS_TR handleSession1,
1527 ESYS_TR optionalSession2,
1528 ESYS_TR optionalSession3,
1529 const TPM2B_AUTH *auth,
1530 TPMI_ALG_MAC_SCHEME inScheme,
1531 ESYS_TR *sequenceHandle);
1534Esys_MAC_Start_Async(
1537 ESYS_TR handleSession1,
1538 ESYS_TR optionalSession2,
1539 ESYS_TR optionalSession3,
1540 const TPM2B_AUTH *auth,
1541 TPMI_ALG_MAC_SCHEME inScheme);
1544Esys_MAC_Start_Finish(
1546 ESYS_TR *sequenceHandle);
1551Esys_HashSequenceStart(
1556 const TPM2B_AUTH *auth,
1557 TPMI_ALG_HASH hashAlg,
1558 ESYS_TR *sequenceHandle);
1561Esys_HashSequenceStart_Async(
1566 const TPM2B_AUTH *auth,
1567 TPMI_ALG_HASH hashAlg);
1570Esys_HashSequenceStart_Finish(
1572 ESYS_TR *sequenceHandle);
1579 ESYS_TR sequenceHandle,
1583 const TPM2B_MAX_BUFFER *buffer);
1586Esys_SequenceUpdate_Async(
1588 ESYS_TR sequenceHandle,
1592 const TPM2B_MAX_BUFFER *buffer);
1595Esys_SequenceUpdate_Finish(
1601Esys_SequenceComplete(
1603 ESYS_TR sequenceHandle,
1607 const TPM2B_MAX_BUFFER *buffer,
1609 TPM2B_DIGEST **result,
1610 TPMT_TK_HASHCHECK **validation);
1613Esys_SequenceComplete_Async(
1615 ESYS_TR sequenceHandle,
1619 const TPM2B_MAX_BUFFER *buffer,
1623Esys_SequenceComplete_Finish(
1625 TPM2B_DIGEST **result,
1626 TPMT_TK_HASHCHECK **validation);
1631Esys_EventSequenceComplete(
1634 ESYS_TR sequenceHandle,
1638 const TPM2B_MAX_BUFFER *buffer,
1639 TPML_DIGEST_VALUES **results);
1642Esys_EventSequenceComplete_Async(
1645 ESYS_TR sequenceHandle,
1649 const TPM2B_MAX_BUFFER *buffer);
1652Esys_EventSequenceComplete_Finish(
1654 TPML_DIGEST_VALUES **results);
1661 ESYS_TR objectHandle,
1666 const TPM2B_DATA *qualifyingData,
1667 const TPMT_SIG_SCHEME *inScheme,
1668 TPM2B_ATTEST **certifyInfo,
1669 TPMT_SIGNATURE **signature);
1674 ESYS_TR objectHandle,
1679 const TPM2B_DATA *qualifyingData,
1680 const TPMT_SIG_SCHEME *inScheme);
1685 TPM2B_ATTEST **certifyInfo,
1686 TPMT_SIGNATURE **signature);
1691Esys_CertifyCreation(
1694 ESYS_TR objectHandle,
1698 const TPM2B_DATA *qualifyingData,
1699 const TPM2B_DIGEST *creationHash,
1700 const TPMT_SIG_SCHEME *inScheme,
1701 const TPMT_TK_CREATION *creationTicket,
1702 TPM2B_ATTEST **certifyInfo,
1703 TPMT_SIGNATURE **signature);
1706Esys_CertifyCreation_Async(
1709 ESYS_TR objectHandle,
1713 const TPM2B_DATA *qualifyingData,
1714 const TPM2B_DIGEST *creationHash,
1715 const TPMT_SIG_SCHEME *inScheme,
1716 const TPMT_TK_CREATION *creationTicket);
1719Esys_CertifyCreation_Finish(
1721 TPM2B_ATTEST **certifyInfo,
1722 TPMT_SIGNATURE **signature);
1727 ESYS_TR objectHandle,
1732 const TPM2B_DATA *reserved,
1733 const TPMT_SIG_SCHEME *inScheme,
1734 const TPM2B_MAX_BUFFER *partialCertificate,
1735 TPM2B_MAX_BUFFER **addedToCertificate,
1736 TPM2B_DIGEST **tbsDigest,
1737 TPMT_SIGNATURE **signature);
1740Esys_CertifyX509_Async(
1742 ESYS_TR objectHandle,
1747 const TPM2B_DATA *reserved,
1748 const TPMT_SIG_SCHEME *inScheme,
1749 const TPM2B_MAX_BUFFER *partialCertificate);
1752Esys_CertifyX509_Finish(
1754 TPM2B_MAX_BUFFER **addedToCertificate,
1755 TPM2B_DIGEST **tbsDigest,
1756 TPMT_SIGNATURE **signature);
1767 const TPM2B_DATA *qualifyingData,
1768 const TPMT_SIG_SCHEME *inScheme,
1769 const TPML_PCR_SELECTION *PCRselect,
1770 TPM2B_ATTEST **quoted,
1771 TPMT_SIGNATURE **signature);
1780 const TPM2B_DATA *qualifyingData,
1781 const TPMT_SIG_SCHEME *inScheme,
1782 const TPML_PCR_SELECTION *PCRselect);
1787 TPM2B_ATTEST **quoted,
1788 TPMT_SIGNATURE **signature);
1793Esys_GetSessionAuditDigest(
1795 ESYS_TR privacyAdminHandle,
1797 ESYS_TR sessionHandle,
1801 const TPM2B_DATA *qualifyingData,
1802 const TPMT_SIG_SCHEME *inScheme,
1803 TPM2B_ATTEST **auditInfo,
1804 TPMT_SIGNATURE **signature);
1807Esys_GetSessionAuditDigest_Async(
1809 ESYS_TR privacyAdminHandle,
1811 ESYS_TR sessionHandle,
1815 const TPM2B_DATA *qualifyingData,
1816 const TPMT_SIG_SCHEME *inScheme);
1819Esys_GetSessionAuditDigest_Finish(
1821 TPM2B_ATTEST **auditInfo,
1822 TPMT_SIGNATURE **signature);
1827Esys_GetCommandAuditDigest(
1829 ESYS_TR privacyHandle,
1834 const TPM2B_DATA *qualifyingData,
1835 const TPMT_SIG_SCHEME *inScheme,
1836 TPM2B_ATTEST **auditInfo,
1837 TPMT_SIGNATURE **signature);
1840Esys_GetCommandAuditDigest_Async(
1842 ESYS_TR privacyHandle,
1847 const TPM2B_DATA *qualifyingData,
1848 const TPMT_SIG_SCHEME *inScheme);
1851Esys_GetCommandAuditDigest_Finish(
1853 TPM2B_ATTEST **auditInfo,
1854 TPMT_SIGNATURE **signature);
1861 ESYS_TR privacyAdminHandle,
1866 const TPM2B_DATA *qualifyingData,
1867 const TPMT_SIG_SCHEME *inScheme,
1868 TPM2B_ATTEST **timeInfo,
1869 TPMT_SIGNATURE **signature);
1874 ESYS_TR privacyAdminHandle,
1879 const TPM2B_DATA *qualifyingData,
1880 const TPMT_SIG_SCHEME *inScheme);
1885 TPM2B_ATTEST **timeInfo,
1886 TPMT_SIGNATURE **signature);
1897 const TPM2B_ECC_POINT *P1,
1898 const TPM2B_SENSITIVE_DATA *s2,
1899 const TPM2B_ECC_PARAMETER *y2,
1900 TPM2B_ECC_POINT **K,
1901 TPM2B_ECC_POINT **L,
1902 TPM2B_ECC_POINT **E,
1912 const TPM2B_ECC_POINT *P1,
1913 const TPM2B_SENSITIVE_DATA *s2,
1914 const TPM2B_ECC_PARAMETER *y2);
1919 TPM2B_ECC_POINT **K,
1920 TPM2B_ECC_POINT **L,
1921 TPM2B_ECC_POINT **E,
1932 TPMI_ECC_CURVE curveID,
1933 TPM2B_ECC_POINT **Q,
1937Esys_EC_Ephemeral_Async(
1942 TPMI_ECC_CURVE curveID);
1945Esys_EC_Ephemeral_Finish(
1947 TPM2B_ECC_POINT **Q,
1953Esys_VerifySignature(
1959 const TPM2B_DIGEST *digest,
1960 const TPMT_SIGNATURE *signature,
1961 TPMT_TK_VERIFIED **validation);
1964Esys_VerifySignature_Async(
1970 const TPM2B_DIGEST *digest,
1971 const TPMT_SIGNATURE *signature);
1974Esys_VerifySignature_Finish(
1976 TPMT_TK_VERIFIED **validation);
1987 const TPM2B_DIGEST *digest,
1988 const TPMT_SIG_SCHEME *inScheme,
1989 const TPMT_TK_HASHCHECK *validation,
1990 TPMT_SIGNATURE **signature);
1999 const TPM2B_DIGEST *digest,
2000 const TPMT_SIG_SCHEME *inScheme,
2001 const TPMT_TK_HASHCHECK *validation);
2006 TPMT_SIGNATURE **signature);
2011Esys_SetCommandCodeAuditStatus(
2017 TPMI_ALG_HASH auditAlg,
2018 const TPML_CC *setList,
2019 const TPML_CC *clearList);
2022Esys_SetCommandCodeAuditStatus_Async(
2028 TPMI_ALG_HASH auditAlg,
2029 const TPML_CC *setList,
2030 const TPML_CC *clearList);
2033Esys_SetCommandCodeAuditStatus_Finish(
2045 const TPML_DIGEST_VALUES *digests);
2048Esys_PCR_Extend_Async(
2054 const TPML_DIGEST_VALUES *digests);
2057Esys_PCR_Extend_Finish(
2069 const TPM2B_EVENT *eventData,
2070 TPML_DIGEST_VALUES **digests);
2073Esys_PCR_Event_Async(
2079 const TPM2B_EVENT *eventData);
2082Esys_PCR_Event_Finish(
2084 TPML_DIGEST_VALUES **digests);
2094 const TPML_PCR_SELECTION *pcrSelectionIn,
2095 UINT32 *pcrUpdateCounter,
2096 TPML_PCR_SELECTION **pcrSelectionOut,
2097 TPML_DIGEST **pcrValues);
2105 const TPML_PCR_SELECTION *pcrSelectionIn);
2108Esys_PCR_Read_Finish(
2110 UINT32 *pcrUpdateCounter,
2111 TPML_PCR_SELECTION **pcrSelectionOut,
2112 TPML_DIGEST **pcrValues);
2123 const TPML_PCR_SELECTION *pcrAllocation,
2124 TPMI_YES_NO *allocationSuccess,
2127 UINT32 *sizeAvailable);
2130Esys_PCR_Allocate_Async(
2136 const TPML_PCR_SELECTION *pcrAllocation);
2139Esys_PCR_Allocate_Finish(
2141 TPMI_YES_NO *allocationSuccess,
2144 UINT32 *sizeAvailable);
2149Esys_PCR_SetAuthPolicy(
2155 const TPM2B_DIGEST *authPolicy,
2156 TPMI_ALG_HASH hashAlg,
2157 TPMI_DH_PCR pcrNum);
2160Esys_PCR_SetAuthPolicy_Async(
2166 const TPM2B_DIGEST *authPolicy,
2167 TPMI_ALG_HASH hashAlg,
2168 TPMI_DH_PCR pcrNum);
2171Esys_PCR_SetAuthPolicy_Finish(
2177Esys_PCR_SetAuthValue(
2183 const TPM2B_DIGEST *auth);
2186Esys_PCR_SetAuthValue_Async(
2192 const TPM2B_DIGEST *auth);
2195Esys_PCR_SetAuthValue_Finish(
2209Esys_PCR_Reset_Async(
2217Esys_PCR_Reset_Finish(
2226 ESYS_TR policySession,
2230 const TPM2B_NONCE *nonceTPM,
2231 const TPM2B_DIGEST *cpHashA,
2232 const TPM2B_NONCE *policyRef,
2234 const TPMT_SIGNATURE *auth,
2235 TPM2B_TIMEOUT **timeout,
2236 TPMT_TK_AUTH **policyTicket);
2239Esys_PolicySigned_Async(
2242 ESYS_TR policySession,
2246 const TPM2B_NONCE *nonceTPM,
2247 const TPM2B_DIGEST *cpHashA,
2248 const TPM2B_NONCE *policyRef,
2250 const TPMT_SIGNATURE *auth);
2253Esys_PolicySigned_Finish(
2255 TPM2B_TIMEOUT **timeout,
2256 TPMT_TK_AUTH **policyTicket);
2264 ESYS_TR policySession,
2268 const TPM2B_NONCE *nonceTPM,
2269 const TPM2B_DIGEST *cpHashA,
2270 const TPM2B_NONCE *policyRef,
2272 TPM2B_TIMEOUT **timeout,
2273 TPMT_TK_AUTH **policyTicket);
2276Esys_PolicySecret_Async(
2279 ESYS_TR policySession,
2283 const TPM2B_NONCE *nonceTPM,
2284 const TPM2B_DIGEST *cpHashA,
2285 const TPM2B_NONCE *policyRef,
2289Esys_PolicySecret_Finish(
2291 TPM2B_TIMEOUT **timeout,
2292 TPMT_TK_AUTH **policyTicket);
2299 ESYS_TR policySession,
2303 const TPM2B_TIMEOUT *timeout,
2304 const TPM2B_DIGEST *cpHashA,
2305 const TPM2B_NONCE *policyRef,
2306 const TPM2B_NAME *authName,
2307 const TPMT_TK_AUTH *ticket);
2310Esys_PolicyTicket_Async(
2312 ESYS_TR policySession,
2316 const TPM2B_TIMEOUT *timeout,
2317 const TPM2B_DIGEST *cpHashA,
2318 const TPM2B_NONCE *policyRef,
2319 const TPM2B_NAME *authName,
2320 const TPMT_TK_AUTH *ticket);
2323Esys_PolicyTicket_Finish(
2331 ESYS_TR policySession,
2335 const TPML_DIGEST *pHashList);
2340 ESYS_TR policySession,
2344 const TPML_DIGEST *pHashList);
2347Esys_PolicyOR_Finish(
2355 ESYS_TR policySession,
2359 const TPM2B_DIGEST *pcrDigest,
2360 const TPML_PCR_SELECTION *pcrs);
2363Esys_PolicyPCR_Async(
2365 ESYS_TR policySession,
2369 const TPM2B_DIGEST *pcrDigest,
2370 const TPML_PCR_SELECTION *pcrs);
2373Esys_PolicyPCR_Finish(
2381 ESYS_TR policySession,
2385 TPMA_LOCALITY locality);
2388Esys_PolicyLocality_Async(
2390 ESYS_TR policySession,
2394 TPMA_LOCALITY locality);
2397Esys_PolicyLocality_Finish(
2407 ESYS_TR policySession,
2411 const TPM2B_OPERAND *operandB,
2420 ESYS_TR policySession,
2424 const TPM2B_OPERAND *operandB,
2429Esys_PolicyNV_Finish(
2435Esys_PolicyCounterTimer(
2437 ESYS_TR policySession,
2441 const TPM2B_OPERAND *operandB,
2446Esys_PolicyCounterTimer_Async(
2448 ESYS_TR policySession,
2452 const TPM2B_OPERAND *operandB,
2457Esys_PolicyCounterTimer_Finish(
2463Esys_PolicyCommandCode(
2465 ESYS_TR policySession,
2472Esys_PolicyCommandCode_Async(
2474 ESYS_TR policySession,
2481Esys_PolicyCommandCode_Finish(
2487Esys_PolicyPhysicalPresence(
2489 ESYS_TR policySession,
2495Esys_PolicyPhysicalPresence_Async(
2497 ESYS_TR policySession,
2503Esys_PolicyPhysicalPresence_Finish(
2511 ESYS_TR policySession,
2515 const TPM2B_DIGEST *cpHashA);
2518Esys_PolicyCpHash_Async(
2520 ESYS_TR policySession,
2524 const TPM2B_DIGEST *cpHashA);
2527Esys_PolicyCpHash_Finish(
2535 ESYS_TR policySession,
2539 const TPM2B_DIGEST *nameHash);
2542Esys_PolicyNameHash_Async(
2544 ESYS_TR policySession,
2548 const TPM2B_DIGEST *nameHash);
2551Esys_PolicyNameHash_Finish(
2557Esys_PolicyDuplicationSelect(
2559 ESYS_TR policySession,
2563 const TPM2B_NAME *objectName,
2564 const TPM2B_NAME *newParentName,
2565 TPMI_YES_NO includeObject);
2568Esys_PolicyDuplicationSelect_Async(
2570 ESYS_TR policySession,
2574 const TPM2B_NAME *objectName,
2575 const TPM2B_NAME *newParentName,
2576 TPMI_YES_NO includeObject);
2579Esys_PolicyDuplicationSelect_Finish(
2585Esys_PolicyAuthorize(
2587 ESYS_TR policySession,
2591 const TPM2B_DIGEST *approvedPolicy,
2592 const TPM2B_NONCE *policyRef,
2593 const TPM2B_NAME *keySign,
2594 const TPMT_TK_VERIFIED *checkTicket);
2597Esys_PolicyAuthorize_Async(
2599 ESYS_TR policySession,
2603 const TPM2B_DIGEST *approvedPolicy,
2604 const TPM2B_NONCE *policyRef,
2605 const TPM2B_NAME *keySign,
2606 const TPMT_TK_VERIFIED *checkTicket);
2609Esys_PolicyAuthorize_Finish(
2615Esys_PolicyAuthValue(
2617 ESYS_TR policySession,
2623Esys_PolicyAuthValue_Async(
2625 ESYS_TR policySession,
2631Esys_PolicyAuthValue_Finish(
2639 ESYS_TR policySession,
2645Esys_PolicyPassword_Async(
2647 ESYS_TR policySession,
2653Esys_PolicyPassword_Finish(
2659Esys_PolicyGetDigest(
2661 ESYS_TR policySession,
2665 TPM2B_DIGEST **policyDigest);
2668Esys_PolicyGetDigest_Async(
2670 ESYS_TR policySession,
2676Esys_PolicyGetDigest_Finish(
2678 TPM2B_DIGEST **policyDigest);
2683Esys_PolicyNvWritten(
2685 ESYS_TR policySession,
2689 TPMI_YES_NO writtenSet);
2692Esys_PolicyNvWritten_Async(
2694 ESYS_TR policySession,
2698 TPMI_YES_NO writtenSet);
2701Esys_PolicyNvWritten_Finish(
2709 ESYS_TR policySession,
2713 const TPM2B_DIGEST *templateHash);
2716Esys_PolicyTemplate_Async(
2718 ESYS_TR policySession,
2722 const TPM2B_DIGEST *templateHash);
2725Esys_PolicyTemplate_Finish(
2731Esys_PolicyAuthorizeNV(
2735 ESYS_TR policySession,
2741Esys_PolicyAuthorizeNV_Async(
2745 ESYS_TR policySession,
2751Esys_PolicyAuthorizeNV_Finish(
2759 ESYS_TR primaryHandle,
2763 const TPM2B_SENSITIVE_CREATE *inSensitive,
2764 const TPM2B_PUBLIC *inPublic,
2765 const TPM2B_DATA *outsideInfo,
2766 const TPML_PCR_SELECTION *creationPCR,
2767 ESYS_TR *objectHandle,
2768 TPM2B_PUBLIC **outPublic,
2769 TPM2B_CREATION_DATA **creationData,
2770 TPM2B_DIGEST **creationHash,
2771 TPMT_TK_CREATION **creationTicket);
2774Esys_CreatePrimary_Async(
2776 ESYS_TR primaryHandle,
2780 const TPM2B_SENSITIVE_CREATE *inSensitive,
2781 const TPM2B_PUBLIC *inPublic,
2782 const TPM2B_DATA *outsideInfo,
2783 const TPML_PCR_SELECTION *creationPCR);
2786Esys_CreatePrimary_Finish(
2788 ESYS_TR *objectHandle,
2789 TPM2B_PUBLIC **outPublic,
2790 TPM2B_CREATION_DATA **creationData,
2791 TPM2B_DIGEST **creationHash,
2792 TPMT_TK_CREATION **creationTicket);
2797Esys_HierarchyControl(
2807Esys_HierarchyControl_Async(
2817Esys_HierarchyControl_Finish(
2823Esys_SetPrimaryPolicy(
2829 const TPM2B_DIGEST *authPolicy,
2830 TPMI_ALG_HASH hashAlg);
2833Esys_SetPrimaryPolicy_Async(
2839 const TPM2B_DIGEST *authPolicy,
2840 TPMI_ALG_HASH hashAlg);
2843Esys_SetPrimaryPolicy_Finish(
2857Esys_ChangePPS_Async(
2865Esys_ChangePPS_Finish(
2879Esys_ChangeEPS_Async(
2887Esys_ChangeEPS_Finish(
2921 TPMI_YES_NO disable);
2924Esys_ClearControl_Async(
2930 TPMI_YES_NO disable);
2933Esys_ClearControl_Finish(
2939Esys_HierarchyChangeAuth(
2945 const TPM2B_AUTH *newAuth);
2948Esys_HierarchyChangeAuth_Async(
2954 const TPM2B_AUTH *newAuth);
2957Esys_HierarchyChangeAuth_Finish(
2963Esys_DictionaryAttackLockReset(
2971Esys_DictionaryAttackLockReset_Async(
2979Esys_DictionaryAttackLockReset_Finish(
2985Esys_DictionaryAttackParameters(
2992 UINT32 newRecoveryTime,
2993 UINT32 lockoutRecovery);
2996Esys_DictionaryAttackParameters_Async(
3003 UINT32 newRecoveryTime,
3004 UINT32 lockoutRecovery);
3007Esys_DictionaryAttackParameters_Finish(
3019 const TPML_CC *setList,
3020 const TPML_CC *clearList);
3023Esys_PP_Commands_Async(
3029 const TPML_CC *setList,
3030 const TPML_CC *clearList);
3033Esys_PP_Commands_Finish(
3039Esys_SetAlgorithmSet(
3045 UINT32 algorithmSet);
3048Esys_SetAlgorithmSet_Async(
3054 UINT32 algorithmSet);
3057Esys_SetAlgorithmSet_Finish(
3063Esys_FieldUpgradeStart(
3065 ESYS_TR authorization,
3070 const TPM2B_DIGEST *fuDigest,
3071 const TPMT_SIGNATURE *manifestSignature);
3074Esys_FieldUpgradeStart_Async(
3076 ESYS_TR authorization,
3081 const TPM2B_DIGEST *fuDigest,
3082 const TPMT_SIGNATURE *manifestSignature);
3085Esys_FieldUpgradeStart_Finish(
3091Esys_FieldUpgradeData(
3096 const TPM2B_MAX_BUFFER *fuData,
3097 TPMT_HA **nextDigest,
3098 TPMT_HA **firstDigest);
3101Esys_FieldUpgradeData_Async(
3106 const TPM2B_MAX_BUFFER *fuData);
3109Esys_FieldUpgradeData_Finish(
3111 TPMT_HA **nextDigest,
3112 TPMT_HA **firstDigest);
3122 UINT32 sequenceNumber,
3123 TPM2B_MAX_BUFFER **fuData);
3126Esys_FirmwareRead_Async(
3131 UINT32 sequenceNumber);
3134Esys_FirmwareRead_Finish(
3136 TPM2B_MAX_BUFFER **fuData);
3144 TPMS_CONTEXT **context);
3147Esys_ContextSave_Async(
3149 ESYS_TR saveHandle);
3152Esys_ContextSave_Finish(
3154 TPMS_CONTEXT **context);
3161 const TPMS_CONTEXT *context,
3162 ESYS_TR *loadedHandle);
3165Esys_ContextLoad_Async(
3167 const TPMS_CONTEXT *context);
3170Esys_ContextLoad_Finish(
3172 ESYS_TR *loadedHandle);
3179 ESYS_TR flushHandle);
3182Esys_FlushContext_Async(
3184 ESYS_TR flushHandle);
3187Esys_FlushContext_Finish(
3196 ESYS_TR objectHandle,
3200 TPMI_DH_PERSISTENT persistentHandle,
3201 ESYS_TR *newObjectHandle);
3204Esys_EvictControl_Async(
3207 ESYS_TR objectHandle,
3211 TPMI_DH_PERSISTENT persistentHandle);
3214Esys_EvictControl_Finish(
3216 ESYS_TR *newObjectHandle);
3226 TPMS_TIME_INFO **currentTime);
3229Esys_ReadClock_Async(
3236Esys_ReadClock_Finish(
3238 TPMS_TIME_INFO **currentTime);
3261Esys_ClockSet_Finish(
3267Esys_ClockRateAdjust(
3273 TPM2_CLOCK_ADJUST rateAdjust);
3276Esys_ClockRateAdjust_Async(
3282 TPM2_CLOCK_ADJUST rateAdjust);
3285Esys_ClockRateAdjust_Finish(
3296 TPM2_CAP capability,
3298 UINT32 propertyCount,
3299 TPMI_YES_NO *moreData,
3300 TPMS_CAPABILITY_DATA **capabilityData);
3303Esys_GetCapability_Async(
3308 TPM2_CAP capability,
3310 UINT32 propertyCount);
3313Esys_GetCapability_Finish(
3315 TPMI_YES_NO *moreData,
3316 TPMS_CAPABILITY_DATA **capabilityData);
3326 const TPMT_PUBLIC_PARMS *parameters);
3329Esys_TestParms_Async(
3334 const TPMT_PUBLIC_PARMS *parameters);
3337Esys_TestParms_Finish(
3349 const TPM2B_AUTH *auth,
3350 const TPM2B_NV_PUBLIC *publicInfo,
3354Esys_NV_DefineSpace_Async(
3360 const TPM2B_AUTH *auth,
3361 const TPM2B_NV_PUBLIC *publicInfo);
3364Esys_NV_DefineSpace_Finish(
3371Esys_NV_UndefineSpace(
3380Esys_NV_UndefineSpace_Async(
3389Esys_NV_UndefineSpace_Finish(
3395Esys_NV_UndefineSpaceSpecial(
3404Esys_NV_UndefineSpaceSpecial_Async(
3413Esys_NV_UndefineSpaceSpecial_Finish(
3425 TPM2B_NV_PUBLIC **nvPublic,
3426 TPM2B_NAME **nvName);
3429Esys_NV_ReadPublic_Async(
3437Esys_NV_ReadPublic_Finish(
3439 TPM2B_NV_PUBLIC **nvPublic,
3440 TPM2B_NAME **nvName);
3452 const TPM2B_MAX_NV_BUFFER *data,
3463 const TPM2B_MAX_NV_BUFFER *data,
3467Esys_NV_Write_Finish(
3482Esys_NV_Increment_Async(
3491Esys_NV_Increment_Finish(
3504 const TPM2B_MAX_NV_BUFFER *data);
3507Esys_NV_Extend_Async(
3514 const TPM2B_MAX_NV_BUFFER *data);
3517Esys_NV_Extend_Finish(
3533Esys_NV_SetBits_Async(
3543Esys_NV_SetBits_Finish(
3558Esys_NV_WriteLock_Async(
3567Esys_NV_WriteLock_Finish(
3573Esys_NV_GlobalWriteLock(
3581Esys_NV_GlobalWriteLock_Async(
3589Esys_NV_GlobalWriteLock_Finish(
3604 TPM2B_MAX_NV_BUFFER **data);
3620 TPM2B_MAX_NV_BUFFER **data);
3634Esys_NV_ReadLock_Async(
3643Esys_NV_ReadLock_Finish(
3655 const TPM2B_AUTH *newAuth);
3658Esys_NV_ChangeAuth_Async(
3664 const TPM2B_AUTH *newAuth);
3667Esys_NV_ChangeAuth_Finish(
3681 const TPM2B_DATA *qualifyingData,
3682 const TPMT_SIG_SCHEME *inScheme,
3685 TPM2B_ATTEST **certifyInfo,
3686 TPMT_SIGNATURE **signature);
3689Esys_NV_Certify_Async(
3697 const TPM2B_DATA *qualifyingData,
3698 const TPMT_SIG_SCHEME *inScheme,
3703Esys_NV_Certify_Finish(
3705 TPM2B_ATTEST **certifyInfo,
3706 TPMT_SIGNATURE **signature);
3711Esys_Vendor_TCG_Test(
3716 const TPM2B_DATA *inputData,
3717 TPM2B_DATA **outputData);
3720Esys_Vendor_TCG_Test_Async(
3725 const TPM2B_DATA *inputData);
3728Esys_Vendor_TCG_Test_Finish(
3730 TPM2B_DATA **outputData);
3742 TSS2_SYS_CONTEXT **sys_context);
3745Esys_SetCryptoCallbacks(
Definition esys_int.h:161
Definition tss2_esys.h:356
Definition esys_crypto_mbed.c:34