tpm2-tss 4.2.0
TPM Software stack 2.0 TCG spec compliant implementation
tss2_esys.h
1/* SPDX-License-Identifier: BSD-2-Clause */
2/*******************************************************************************
3 * Copyright 2017-2018, Fraunhofer SIT sponsored by Infineon Technologies AG
4 * All rights reserved.
5 *******************************************************************************/
6#ifndef TSS2_ESYS_H
7#define TSS2_ESYS_H
8
9#include "tss2_sys.h"
10#include "tss2_tcti.h"
11
12#ifdef __cplusplus
13extern "C" {
14#endif
15
16typedef uint32_t ESYS_TR;
17
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
52
53/* From TPM_RH_CONSTANTS */
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
60#define ESYS_TR_RH_FW_OWNER 0x10EU
61#define ESYS_TR_RH_FW_ENDORSEMENT 0x10FU
62#define ESYS_TR_RH_FW_PLATFORM 0x110U
63#define ESYS_TR_RH_FW_NULL 0x111U
64#define ESYS_TR_RH_SVN_OWNER_BASE 0x1010000U
65#define ESYS_TR_RH_SVN_ENDORSEMENT_BASE 0x1020000U
66#define ESYS_TR_RH_SVN_PLATFORM_BASE 0x1030000U
67#define ESYS_TR_RH_SVN_NULL_BASE 0x1040000U
68
69#define ESYS_TR_RH_AUTH_FIRST 0x110U
70#define ESYS_TR_RH_AUTH(x) (ESYS_TR_RH_AUTH_FIRST + (ESYS_TR)(x))
71#define ESYS_TR_RH_ACT_FIRST 0x120U
72#define ESYS_TR_RH_ACT(x) (ESYS_TR_RH_ACT_FIRST + (ESYS_TR)(x))
73#define ESYS_TR_RH_ACT_0 ESYS_TR_RH_ACT_FIRST
74#define ESYS_TR_RH_ACT_1 0x121U
75#define ESYS_TR_RH_ACT_2 0x122U
76#define ESYS_TR_RH_ACT_3 0x123U
77#define ESYS_TR_RH_ACT_4 0x124U
78#define ESYS_TR_RH_ACT_5 0x125U
79#define ESYS_TR_RH_ACT_6 0x126U
80#define ESYS_TR_RH_ACT_7 0x127U
81#define ESYS_TR_RH_ACT_8 0x128U
82#define ESYS_TR_RH_ACT_9 0x129U
83#define ESYS_TR_RH_ACT_A 0x12AU
84#define ESYS_TR_RH_ACT_B 0x12BU
85#define ESYS_TR_RH_ACT_C 0x12CU
86#define ESYS_TR_RH_ACT_D 0x12DU
87#define ESYS_TR_RH_ACT_E 0x12EU
88#define ESYS_TR_RH_ACT_F 0x12FU
89#define ESYS_TR_RH_ACT_LAST ESYS_TR_RH_ACT_F
90#define ESYS_TR_RH_AC_FIRST 0x140U
91#define ESYS_TR_RH_AC(x) (ESYS_TR_RH_AC_FIRST + (ESYS_TR)(x))
92#define ESYS_TR_RH_AC_LAST (ESYS_TR_RH_AC_FIRST + 0xFFFFU)
93
95
97
98/*
99 * Crypto Backend Support
100 */
101
111typedef TSS2_RC (*ESYS_CRYPTO_HASH_START_FNP)(ESYS_CRYPTO_CONTEXT_BLOB **context,
112 TPM2_ALG_ID hashAlg,
113 void *userdata);
114
126typedef TSS2_RC (*ESYS_CRYPTO_HASH_UPDATE_FNP)(ESYS_CRYPTO_CONTEXT_BLOB *context,
127 const uint8_t *buffer,
128 size_t size,
129 void *userdata);
130
142typedef TSS2_RC (*ESYS_CRYPTO_HASH_FINISH_FNP)(ESYS_CRYPTO_CONTEXT_BLOB **context,
143 uint8_t *buffer,
144 size_t *size,
145 void *userdata);
146
153typedef void (*ESYS_CRYPTO_HASH_ABORT_FNP)(ESYS_CRYPTO_CONTEXT_BLOB **context, void *userdata);
154
167typedef TSS2_RC (*ESYS_CRYPTO_HMAC_START_FNP)(ESYS_CRYPTO_CONTEXT_BLOB **context,
168 TPM2_ALG_ID hashAlg,
169 const uint8_t *key,
170 size_t size,
171 void *userdata);
172
184typedef TSS2_RC (*ESYS_CRYPTO_HMAC_UPDATE_FNP)(ESYS_CRYPTO_CONTEXT_BLOB *context,
185 const uint8_t *buffer,
186 size_t size,
187 void *userdata);
188
200typedef TSS2_RC (*ESYS_CRYPTO_HMAC_FINISH_FNP)(ESYS_CRYPTO_CONTEXT_BLOB **context,
201 uint8_t *buffer,
202 size_t *size,
203 void *userdata);
204
211typedef void (*ESYS_CRYPTO_HMAC_ABORT_FNP)(ESYS_CRYPTO_CONTEXT_BLOB **context, void *userdata);
212
223typedef TSS2_RC (*ESYS_CRYPTO_GET_RANDOM2B_FNP)(TPM2B_NONCE *nonce,
224 size_t num_bytes,
225 void *userdata);
226
244typedef TSS2_RC (*ESYS_CRYPTO_GET_ECDH_POINT_FNP)(TPM2B_PUBLIC *key,
245 size_t max_out_size,
246 TPM2B_ECC_PARAMETER *Z,
247 TPMS_ECC_POINT *Q,
248 BYTE *out_buffer,
249 size_t *out_size,
250 void *userdata);
251
267typedef TSS2_RC (*ESYS_CRYPTO_AES_ENCRYPT_FNP)(uint8_t *key,
268 TPM2_ALG_ID tpm_sym_alg,
269 TPMI_AES_KEY_BITS key_bits,
270 TPM2_ALG_ID tpm_mode,
271 uint8_t *buffer,
272 size_t buffer_size,
273 uint8_t *iv,
274 void *userdata);
275
291typedef TSS2_RC (*ESYS_CRYPTO_AES_DECRYPT_FNP)(uint8_t *key,
292 TPM2_ALG_ID tpm_sym_alg,
293 TPMI_AES_KEY_BITS key_bits,
294 TPM2_ALG_ID tpm_mode,
295 uint8_t *buffer,
296 size_t buffer_size,
297 uint8_t *iv,
298 void *userdata);
299
315typedef TSS2_RC (*ESYS_CRYPTO_SM4_ENCRYPT_FNP)(uint8_t *key,
316 TPM2_ALG_ID tpm_sym_alg,
317 TPMI_SM4_KEY_BITS key_bits,
318 TPM2_ALG_ID tpm_mode,
319 uint8_t *buffer,
320 size_t buffer_size,
321 uint8_t *iv,
322 void *userdata);
323
339typedef TSS2_RC (*ESYS_CRYPTO_SM4_DECRYPT_FNP)(uint8_t *key,
340 TPM2_ALG_ID tpm_sym_alg,
341 TPMI_SM4_KEY_BITS key_bits,
342 TPM2_ALG_ID tpm_mode,
343 uint8_t *buffer,
344 size_t buffer_size,
345 uint8_t *iv,
346 void *userdata);
347
363typedef TSS2_RC (*ESYS_CRYPTO_PK_RSA_ENCRYPT_FNP)(TPM2B_PUBLIC *pub_tpm_key,
364 size_t in_size,
365 BYTE *in_buffer,
366 size_t max_out_size,
367 BYTE *out_buffer,
368 size_t *out_size,
369 const char *label,
370 void *userdata);
371
381typedef TSS2_RC (*ESYS_CRYPTO_INIT_FNP)(void *userdata);
382
385 ESYS_CRYPTO_PK_RSA_ENCRYPT_FNP rsa_pk_encrypt;
386 ESYS_CRYPTO_HASH_START_FNP hash_start;
387 ESYS_CRYPTO_HASH_UPDATE_FNP hash_update;
388 ESYS_CRYPTO_HASH_FINISH_FNP hash_finish;
389 ESYS_CRYPTO_HASH_ABORT_FNP hash_abort;
390 ESYS_CRYPTO_HMAC_START_FNP hmac_start;
391 ESYS_CRYPTO_HMAC_UPDATE_FNP hmac_update;
392 ESYS_CRYPTO_HMAC_FINISH_FNP hmac_finish;
393 ESYS_CRYPTO_HMAC_ABORT_FNP hmac_abort;
394 ESYS_CRYPTO_GET_RANDOM2B_FNP get_random2b;
395 ESYS_CRYPTO_GET_ECDH_POINT_FNP get_ecdh_point;
396 ESYS_CRYPTO_AES_ENCRYPT_FNP aes_encrypt;
397 ESYS_CRYPTO_AES_DECRYPT_FNP aes_decrypt;
398 ESYS_CRYPTO_SM4_ENCRYPT_FNP sm4_encrypt;
399 ESYS_CRYPTO_SM4_DECRYPT_FNP sm4_decrypt;
400 ESYS_CRYPTO_INIT_FNP init;
401 void *userdata;
402};
403
404/*
405 * TPM 2.0 ESAPI Functions
406 */
407
408TSS2_RC
409Esys_Initialize(ESYS_CONTEXT **esys_context, TSS2_TCTI_CONTEXT *tcti, TSS2_ABI_VERSION *abiVersion);
410
411void Esys_Finalize(ESYS_CONTEXT **context);
412
413TSS2_RC
414Esys_GetTcti(ESYS_CONTEXT *esys_context, TSS2_TCTI_CONTEXT **tcti);
415
416TSS2_RC
417Esys_GetPollHandles(ESYS_CONTEXT *esys_context, TSS2_TCTI_POLL_HANDLE **handles, size_t *count);
418
419TSS2_RC
420Esys_SetTimeout(ESYS_CONTEXT *esys_context, int32_t timeout);
421
422TSS2_RC
423Esys_TR_Serialize(ESYS_CONTEXT *esys_context,
424 ESYS_TR object,
425 uint8_t **buffer,
426 size_t *buffer_size);
427
428TSS2_RC
430 uint8_t const *buffer,
431 size_t buffer_size,
432 ESYS_TR *esys_handle);
433
434TSS2_RC
436 TPM2_HANDLE tpm_handle,
437 ESYS_TR optionalSession1,
438 ESYS_TR optionalSession2,
439 ESYS_TR optionalSession3);
440
441TSS2_RC
443
444TSS2_RC
446 TPM2_HANDLE tpm_handle,
447 ESYS_TR optionalSession1,
448 ESYS_TR optionalSession2,
449 ESYS_TR optionalSession3,
450 ESYS_TR *object);
451
452TSS2_RC
453Esys_TR_Close(ESYS_CONTEXT *esys_context, ESYS_TR *rsrc_handle);
454
455TSS2_RC
456Esys_TR_SetAuth(ESYS_CONTEXT *esysContext, ESYS_TR handle, TPM2B_AUTH const *authValue);
457
458TSS2_RC
459Esys_TR_GetName(ESYS_CONTEXT *esysContext, ESYS_TR handle, TPM2B_NAME **name);
460
461TSS2_RC
462Esys_TRSess_GetAttributes(ESYS_CONTEXT *esysContext, ESYS_TR session, TPMA_SESSION *flags);
463
464TSS2_RC
466 ESYS_TR session,
467 TPMA_SESSION flags,
468 TPMA_SESSION mask);
469
470TSS2_RC
471Esys_TRSess_GetNonceTPM(ESYS_CONTEXT *esysContext, ESYS_TR session, TPM2B_NONCE **nonceTPM);
472
473TSS2_RC
474Esys_TR_GetTpmHandle(ESYS_CONTEXT *esys_context, ESYS_TR esys_handle, TPM2_HANDLE *tpm_handle);
475
476TSS2_RC
477Esys_TRSess_GetAuthRequired(ESYS_CONTEXT *esys_context,
478 ESYS_TR esys_handle,
479 TPMI_YES_NO *auth_needed);
480
481/* Table 5 - TPM2_Startup Command */
482
483TSS2_RC
484Esys_Startup(ESYS_CONTEXT *esysContext, TPM2_SU startupType);
485
486TSS2_RC
487Esys_Startup_Async(ESYS_CONTEXT *esysContext, TPM2_SU startupType);
488
489TSS2_RC
491
492/* Table 7 - TPM2_Shutdown Command */
493
494TSS2_RC
495Esys_Shutdown(ESYS_CONTEXT *esysContext,
496 ESYS_TR shandle1,
497 ESYS_TR shandle2,
498 ESYS_TR shandle3,
499 TPM2_SU shutdownType);
500
501TSS2_RC
503 ESYS_TR shandle1,
504 ESYS_TR shandle2,
505 ESYS_TR shandle3,
506 TPM2_SU shutdownType);
507
508TSS2_RC
510
511/* Table 9 - TPM2_SelfTest Command */
512
513TSS2_RC
514Esys_SelfTest(ESYS_CONTEXT *esysContext,
515 ESYS_TR shandle1,
516 ESYS_TR shandle2,
517 ESYS_TR shandle3,
518 TPMI_YES_NO fullTest);
519
520TSS2_RC
522 ESYS_TR shandle1,
523 ESYS_TR shandle2,
524 ESYS_TR shandle3,
525 TPMI_YES_NO fullTest);
526
527TSS2_RC
529
530/* Table 11 - TPM2_IncrementalSelfTest Command */
531
532TSS2_RC
534 ESYS_TR shandle1,
535 ESYS_TR shandle2,
536 ESYS_TR shandle3,
537 const TPML_ALG *toTest,
538 TPML_ALG **toDoList);
539
540TSS2_RC
542 ESYS_TR shandle1,
543 ESYS_TR shandle2,
544 ESYS_TR shandle3,
545 const TPML_ALG *toTest);
546
547TSS2_RC
548Esys_IncrementalSelfTest_Finish(ESYS_CONTEXT *esysContext, TPML_ALG **toDoList);
549
550/* Table 13 - TPM2_GetTestResult Command */
551
552TSS2_RC
554 ESYS_TR shandle1,
555 ESYS_TR shandle2,
556 ESYS_TR shandle3,
557 TPM2B_MAX_BUFFER **outData,
558 TPM2_RC *testResult);
559
560TSS2_RC
562 ESYS_TR shandle1,
563 ESYS_TR shandle2,
564 ESYS_TR shandle3);
565
566TSS2_RC
568 TPM2B_MAX_BUFFER **outData,
569 TPM2_RC *testResult);
570
571/* Table 15 - TPM2_StartAuthSession Command */
572
573TSS2_RC
575 ESYS_TR tpmKey,
576 ESYS_TR bind,
577 ESYS_TR shandle1,
578 ESYS_TR shandle2,
579 ESYS_TR shandle3,
580 const TPM2B_NONCE *nonceCaller,
581 TPM2_SE sessionType,
582 const TPMT_SYM_DEF *symmetric,
583 TPMI_ALG_HASH authHash,
584 ESYS_TR *sessionHandle);
585
586TSS2_RC
588 ESYS_TR tpmKey,
589 ESYS_TR bind,
590 ESYS_TR shandle1,
591 ESYS_TR shandle2,
592 ESYS_TR shandle3,
593 const TPM2B_NONCE *nonceCaller,
594 TPM2_SE sessionType,
595 const TPMT_SYM_DEF *symmetric,
596 TPMI_ALG_HASH authHash);
597
598TSS2_RC
599Esys_StartAuthSession_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *sessionHandle);
600
601/* Table 17 - TPM2_PolicyRestart Command */
602
603TSS2_RC
605 ESYS_TR sessionHandle,
606 ESYS_TR shandle1,
607 ESYS_TR shandle2,
608 ESYS_TR shandle3);
609
610TSS2_RC
612 ESYS_TR sessionHandle,
613 ESYS_TR shandle1,
614 ESYS_TR shandle2,
615 ESYS_TR shandle3);
616
617TSS2_RC
619
620/* Table 19 - TPM2_Create Command */
621
622TSS2_RC
623Esys_Create(ESYS_CONTEXT *esysContext,
624 ESYS_TR parentHandle,
625 ESYS_TR shandle1,
626 ESYS_TR shandle2,
627 ESYS_TR shandle3,
628 const TPM2B_SENSITIVE_CREATE *inSensitive,
629 const TPM2B_PUBLIC *inPublic,
630 const TPM2B_DATA *outsideInfo,
631 const TPML_PCR_SELECTION *creationPCR,
632 TPM2B_PRIVATE **outPrivate,
633 TPM2B_PUBLIC **outPublic,
634 TPM2B_CREATION_DATA **creationData,
635 TPM2B_DIGEST **creationHash,
636 TPMT_TK_CREATION **creationTicket);
637
638TSS2_RC
640 ESYS_TR parentHandle,
641 ESYS_TR shandle1,
642 ESYS_TR shandle2,
643 ESYS_TR shandle3,
644 const TPM2B_SENSITIVE_CREATE *inSensitive,
645 const TPM2B_PUBLIC *inPublic,
646 const TPM2B_DATA *outsideInfo,
647 const TPML_PCR_SELECTION *creationPCR);
648
649TSS2_RC
651 TPM2B_PRIVATE **outPrivate,
652 TPM2B_PUBLIC **outPublic,
653 TPM2B_CREATION_DATA **creationData,
654 TPM2B_DIGEST **creationHash,
655 TPMT_TK_CREATION **creationTicket);
656
657/* Table 21 - TPM2_Load Command */
658
659TSS2_RC
660Esys_Load(ESYS_CONTEXT *esysContext,
661 ESYS_TR parentHandle,
662 ESYS_TR shandle1,
663 ESYS_TR shandle2,
664 ESYS_TR shandle3,
665 const TPM2B_PRIVATE *inPrivate,
666 const TPM2B_PUBLIC *inPublic,
667 ESYS_TR *objectHandle);
668
669TSS2_RC
670Esys_Load_Async(ESYS_CONTEXT *esysContext,
671 ESYS_TR parentHandle,
672 ESYS_TR shandle1,
673 ESYS_TR shandle2,
674 ESYS_TR shandle3,
675 const TPM2B_PRIVATE *inPrivate,
676 const TPM2B_PUBLIC *inPublic);
677
678TSS2_RC
679Esys_Load_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *objectHandle);
680
681/* Table 23 - TPM2_LoadExternal Command */
682
683TSS2_RC
684Esys_LoadExternal(ESYS_CONTEXT *esysContext,
685 ESYS_TR shandle1,
686 ESYS_TR shandle2,
687 ESYS_TR shandle3,
688 const TPM2B_SENSITIVE *inPrivate,
689 const TPM2B_PUBLIC *inPublic,
690 ESYS_TR hierarchy,
691 ESYS_TR *objectHandle);
692
693TSS2_RC
694Esys_LoadExternal_Async(ESYS_CONTEXT *esysContext,
695 ESYS_TR shandle1,
696 ESYS_TR shandle2,
697 ESYS_TR shandle3,
698 const TPM2B_SENSITIVE *inPrivate,
699 const TPM2B_PUBLIC *inPublic,
700 ESYS_TR hierarchy);
701
702TSS2_RC
703Esys_LoadExternal_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *objectHandle);
704
705/* Table 25 - TPM2_ReadPublic Command */
706
707TSS2_RC
708Esys_ReadPublic(ESYS_CONTEXT *esysContext,
709 ESYS_TR objectHandle,
710 ESYS_TR shandle1,
711 ESYS_TR shandle2,
712 ESYS_TR shandle3,
713 TPM2B_PUBLIC **outPublic,
714 TPM2B_NAME **name,
715 TPM2B_NAME **qualifiedName);
716
717TSS2_RC
719 ESYS_TR objectHandle,
720 ESYS_TR shandle1,
721 ESYS_TR shandle2,
722 ESYS_TR shandle3);
723
724TSS2_RC
726 TPM2B_PUBLIC **outPublic,
727 TPM2B_NAME **name,
728 TPM2B_NAME **qualifiedName);
729
730/* Table 27 - TPM2_ActivateCredential Command */
731
732TSS2_RC
734 ESYS_TR activateHandle,
735 ESYS_TR keyHandle,
736 ESYS_TR shandle1,
737 ESYS_TR shandle2,
738 ESYS_TR shandle3,
739 const TPM2B_ID_OBJECT *credentialBlob,
740 const TPM2B_ENCRYPTED_SECRET *secret,
741 TPM2B_DIGEST **certInfo);
742
743TSS2_RC
745 ESYS_TR activateHandle,
746 ESYS_TR keyHandle,
747 ESYS_TR shandle1,
748 ESYS_TR shandle2,
749 ESYS_TR shandle3,
750 const TPM2B_ID_OBJECT *credentialBlob,
751 const TPM2B_ENCRYPTED_SECRET *secret);
752
753TSS2_RC
754Esys_ActivateCredential_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **certInfo);
755
756TSS2_RC
757Esys_ACT_SetTimeout(ESYS_CONTEXT *esysContext,
758 ESYS_TR actHandle,
759 ESYS_TR shandle1,
760 ESYS_TR shandle2,
761 ESYS_TR shandle3,
762 UINT32 startTimeout);
763
764TSS2_RC
765Esys_ACT_SetTimeout_Async(ESYS_CONTEXT *esysContext,
766 ESYS_TR actHandle,
767 ESYS_TR shandle1,
768 ESYS_TR shandle2,
769 ESYS_TR shandle3,
770 UINT32 startTimeout);
771
772TSS2_RC
773Esys_ACT_SetTimeout_Finish(ESYS_CONTEXT *esysContext);
774
775TSS2_RC
776Esys_AC_GetCapability_Async(ESYS_CONTEXT *esysContext,
777 ESYS_TR optionalSession1,
778 ESYS_TR optionalSession2,
779 ESYS_TR optionalSession3,
780 ESYS_TR ac,
781 TPM_AT capability,
782 UINT32 count);
783
784TSS2_RC
785Esys_AC_GetCapability_Finish(ESYS_CONTEXT *esysContext,
786 TPMI_YES_NO *moreData,
787 TPML_AC_CAPABILITIES **capabilityData);
788
789TSS2_RC
790Esys_AC_GetCapability(ESYS_CONTEXT *esysContext,
791 ESYS_TR optionalSession1,
792 ESYS_TR optionalSession2,
793 ESYS_TR optionalSession3,
794 ESYS_TR ac,
795 TPM_AT capability,
796 UINT32 count,
797 TPMI_YES_NO *moreData,
798 TPML_AC_CAPABILITIES **capabilityData);
799
800TSS2_RC
801Esys_AC_Send_Async(ESYS_CONTEXT *esysContext,
802 ESYS_TR sendObject,
803 ESYS_TR nvAuthHandle,
804 ESYS_TR ac,
805 ESYS_TR optionalSession1,
806 ESYS_TR optionalSession2,
807 ESYS_TR optionalSession3,
808 TPM2B_MAX_BUFFER *acDataIn);
809
810TSS2_RC
811Esys_AC_Send_Finish(ESYS_CONTEXT *esysContext, TPMS_AC_OUTPUT **acDataOut);
812
813TSS2_RC
814Esys_AC_Send(ESYS_CONTEXT *esysContext,
815 ESYS_TR sendObject,
816 ESYS_TR nvAuthHandle,
817 ESYS_TR optionalSession1,
818 ESYS_TR optionalSession2,
819 ESYS_TR optionalSession3,
820 ESYS_TR ac,
821 TPM2B_MAX_BUFFER *acDataIn,
822 TPMS_AC_OUTPUT **acDataOut);
823
824TSS2_RC
825Esys_Policy_AC_SendSelect_Async(ESYS_CONTEXT *esysContext,
826 ESYS_TR policySession1,
827 ESYS_TR optionalSession2,
828 ESYS_TR optionalSession3,
829 TPM2B_NAME *objectName,
830 TPM2B_NAME *authHandleName,
831 TPM2B_NAME *acName,
832 const TPMI_YES_NO includeObject);
833
834TSS2_RC
835Esys_Policy_AC_SendSelect_Finish(ESYS_CONTEXT *esysContext);
836
837TSS2_RC
838Esys_Policy_AC_SendSelect(ESYS_CONTEXT *esysContext,
839 ESYS_TR policySession1,
840 ESYS_TR optionalSession2,
841 ESYS_TR optionalSession3,
842 TPM2B_NAME *objectName,
843 TPM2B_NAME *authHandleName,
844 TPM2B_NAME *acName,
845 TPMI_YES_NO includeObject);
846
847/* Table 29 - TPM2_MakeCredential Command */
848
849TSS2_RC
851 ESYS_TR handle,
852 ESYS_TR shandle1,
853 ESYS_TR shandle2,
854 ESYS_TR shandle3,
855 const TPM2B_DIGEST *credential,
856 const TPM2B_NAME *objectName,
857 TPM2B_ID_OBJECT **credentialBlob,
858 TPM2B_ENCRYPTED_SECRET **secret);
859
860TSS2_RC
862 ESYS_TR handle,
863 ESYS_TR shandle1,
864 ESYS_TR shandle2,
865 ESYS_TR shandle3,
866 const TPM2B_DIGEST *credential,
867 const TPM2B_NAME *objectName);
868
869TSS2_RC
871 TPM2B_ID_OBJECT **credentialBlob,
872 TPM2B_ENCRYPTED_SECRET **secret);
873
874/* Table 31 - TPM2_Unseal Command */
875
876TSS2_RC
877Esys_Unseal(ESYS_CONTEXT *esysContext,
878 ESYS_TR itemHandle,
879 ESYS_TR shandle1,
880 ESYS_TR shandle2,
881 ESYS_TR shandle3,
882 TPM2B_SENSITIVE_DATA **outData);
883
884TSS2_RC
886 ESYS_TR itemHandle,
887 ESYS_TR shandle1,
888 ESYS_TR shandle2,
889 ESYS_TR shandle3);
890
891TSS2_RC
892Esys_Unseal_Finish(ESYS_CONTEXT *esysContext, TPM2B_SENSITIVE_DATA **outData);
893
894/* Table 33 - TPM2_ObjectChangeAuth Command */
895
896TSS2_RC
898 ESYS_TR objectHandle,
899 ESYS_TR parentHandle,
900 ESYS_TR shandle1,
901 ESYS_TR shandle2,
902 ESYS_TR shandle3,
903 const TPM2B_AUTH *newAuth,
904 TPM2B_PRIVATE **outPrivate);
905
906TSS2_RC
908 ESYS_TR objectHandle,
909 ESYS_TR parentHandle,
910 ESYS_TR shandle1,
911 ESYS_TR shandle2,
912 ESYS_TR shandle3,
913 const TPM2B_AUTH *newAuth);
914
915TSS2_RC
916Esys_ObjectChangeAuth_Finish(ESYS_CONTEXT *esysContext, TPM2B_PRIVATE **outPrivate);
917
918/* Table 35 - TPM2_CreateLoaded Command */
919
920TSS2_RC
921Esys_CreateLoaded(ESYS_CONTEXT *esysContext,
922 ESYS_TR parentHandle,
923 ESYS_TR shandle1,
924 ESYS_TR shandle2,
925 ESYS_TR shandle3,
926 const TPM2B_SENSITIVE_CREATE *inSensitive,
927 const TPM2B_TEMPLATE *inPublic,
928 ESYS_TR *objectHandle,
929 TPM2B_PRIVATE **outPrivate,
930 TPM2B_PUBLIC **outPublic);
931
932TSS2_RC
933Esys_CreateLoaded_Async(ESYS_CONTEXT *esysContext,
934 ESYS_TR parentHandle,
935 ESYS_TR shandle1,
936 ESYS_TR shandle2,
937 ESYS_TR shandle3,
938 const TPM2B_SENSITIVE_CREATE *inSensitive,
939 const TPM2B_TEMPLATE *inPublic);
940
941TSS2_RC
942Esys_CreateLoaded_Finish(ESYS_CONTEXT *esysContext,
943 ESYS_TR *objectHandle,
944 TPM2B_PRIVATE **outPrivate,
945 TPM2B_PUBLIC **outPublic);
946
947/* Table 37 - TPM2_Duplicate Command */
948
949TSS2_RC
950Esys_Duplicate(ESYS_CONTEXT *esysContext,
951 ESYS_TR objectHandle,
952 ESYS_TR newParentHandle,
953 ESYS_TR shandle1,
954 ESYS_TR shandle2,
955 ESYS_TR shandle3,
956 const TPM2B_DATA *encryptionKeyIn,
957 const TPMT_SYM_DEF_OBJECT *symmetricAlg,
958 TPM2B_DATA **encryptionKeyOut,
959 TPM2B_PRIVATE **duplicate,
960 TPM2B_ENCRYPTED_SECRET **outSymSeed);
961
962TSS2_RC
964 ESYS_TR objectHandle,
965 ESYS_TR newParentHandle,
966 ESYS_TR shandle1,
967 ESYS_TR shandle2,
968 ESYS_TR shandle3,
969 const TPM2B_DATA *encryptionKeyIn,
970 const TPMT_SYM_DEF_OBJECT *symmetricAlg);
971
972TSS2_RC
974 TPM2B_DATA **encryptionKeyOut,
975 TPM2B_PRIVATE **duplicate,
976 TPM2B_ENCRYPTED_SECRET **outSymSeed);
977
978/* Table 39 - TPM2_Rewrap Command */
979
980TSS2_RC
981Esys_Rewrap(ESYS_CONTEXT *esysContext,
982 ESYS_TR oldParent,
983 ESYS_TR newParent,
984 ESYS_TR shandle1,
985 ESYS_TR shandle2,
986 ESYS_TR shandle3,
987 const TPM2B_PRIVATE *inDuplicate,
988 const TPM2B_NAME *name,
989 const TPM2B_ENCRYPTED_SECRET *inSymSeed,
990 TPM2B_PRIVATE **outDuplicate,
991 TPM2B_ENCRYPTED_SECRET **outSymSeed);
992
993TSS2_RC
995 ESYS_TR oldParent,
996 ESYS_TR newParent,
997 ESYS_TR shandle1,
998 ESYS_TR shandle2,
999 ESYS_TR shandle3,
1000 const TPM2B_PRIVATE *inDuplicate,
1001 const TPM2B_NAME *name,
1002 const TPM2B_ENCRYPTED_SECRET *inSymSeed);
1003
1004TSS2_RC
1005Esys_Rewrap_Finish(ESYS_CONTEXT *esysContext,
1006 TPM2B_PRIVATE **outDuplicate,
1007 TPM2B_ENCRYPTED_SECRET **outSymSeed);
1008
1009/* Table 41 - TPM2_Import Command */
1010
1011TSS2_RC
1012Esys_Import(ESYS_CONTEXT *esysContext,
1013 ESYS_TR parentHandle,
1014 ESYS_TR shandle1,
1015 ESYS_TR shandle2,
1016 ESYS_TR shandle3,
1017 const TPM2B_DATA *encryptionKey,
1018 const TPM2B_PUBLIC *objectPublic,
1019 const TPM2B_PRIVATE *duplicate,
1020 const TPM2B_ENCRYPTED_SECRET *inSymSeed,
1021 const TPMT_SYM_DEF_OBJECT *symmetricAlg,
1022 TPM2B_PRIVATE **outPrivate);
1023
1024TSS2_RC
1025Esys_Import_Async(ESYS_CONTEXT *esysContext,
1026 ESYS_TR parentHandle,
1027 ESYS_TR shandle1,
1028 ESYS_TR shandle2,
1029 ESYS_TR shandle3,
1030 const TPM2B_DATA *encryptionKey,
1031 const TPM2B_PUBLIC *objectPublic,
1032 const TPM2B_PRIVATE *duplicate,
1033 const TPM2B_ENCRYPTED_SECRET *inSymSeed,
1034 const TPMT_SYM_DEF_OBJECT *symmetricAlg);
1035
1036TSS2_RC
1037Esys_Import_Finish(ESYS_CONTEXT *esysContext, TPM2B_PRIVATE **outPrivate);
1038
1039/* Table 45 - TPM2_RSA_Encrypt Command */
1040
1041TSS2_RC
1042Esys_RSA_Encrypt(ESYS_CONTEXT *esysContext,
1043 ESYS_TR keyHandle,
1044 ESYS_TR shandle1,
1045 ESYS_TR shandle2,
1046 ESYS_TR shandle3,
1047 const TPM2B_PUBLIC_KEY_RSA *message,
1048 const TPMT_RSA_DECRYPT *inScheme,
1049 const TPM2B_DATA *label,
1050 TPM2B_PUBLIC_KEY_RSA **outData);
1051
1052TSS2_RC
1054 ESYS_TR keyHandle,
1055 ESYS_TR shandle1,
1056 ESYS_TR shandle2,
1057 ESYS_TR shandle3,
1058 const TPM2B_PUBLIC_KEY_RSA *message,
1059 const TPMT_RSA_DECRYPT *inScheme,
1060 const TPM2B_DATA *label);
1061
1062TSS2_RC
1063Esys_RSA_Encrypt_Finish(ESYS_CONTEXT *esysContext, TPM2B_PUBLIC_KEY_RSA **outData);
1064
1065/* Table 47 - TPM2_RSA_Decrypt Command */
1066
1067TSS2_RC
1068Esys_RSA_Decrypt(ESYS_CONTEXT *esysContext,
1069 ESYS_TR keyHandle,
1070 ESYS_TR shandle1,
1071 ESYS_TR shandle2,
1072 ESYS_TR shandle3,
1073 const TPM2B_PUBLIC_KEY_RSA *cipherText,
1074 const TPMT_RSA_DECRYPT *inScheme,
1075 const TPM2B_DATA *label,
1076 TPM2B_PUBLIC_KEY_RSA **message);
1077
1078TSS2_RC
1080 ESYS_TR keyHandle,
1081 ESYS_TR shandle1,
1082 ESYS_TR shandle2,
1083 ESYS_TR shandle3,
1084 const TPM2B_PUBLIC_KEY_RSA *cipherText,
1085 const TPMT_RSA_DECRYPT *inScheme,
1086 const TPM2B_DATA *label);
1087
1088TSS2_RC
1089Esys_RSA_Decrypt_Finish(ESYS_CONTEXT *esysContext, TPM2B_PUBLIC_KEY_RSA **message);
1090
1091/* Table 49 - TPM2_ECDH_KeyGen Command */
1092
1093TSS2_RC
1094Esys_ECDH_KeyGen(ESYS_CONTEXT *esysContext,
1095 ESYS_TR keyHandle,
1096 ESYS_TR shandle1,
1097 ESYS_TR shandle2,
1098 ESYS_TR shandle3,
1099 TPM2B_ECC_POINT **zPoint,
1100 TPM2B_ECC_POINT **pubPoint);
1101
1102TSS2_RC
1104 ESYS_TR keyHandle,
1105 ESYS_TR shandle1,
1106 ESYS_TR shandle2,
1107 ESYS_TR shandle3);
1108
1109TSS2_RC
1111 TPM2B_ECC_POINT **zPoint,
1112 TPM2B_ECC_POINT **pubPoint);
1113
1114/* Table 51 - TPM2_ECDH_ZGen Command */
1115
1116TSS2_RC
1117Esys_ECDH_ZGen(ESYS_CONTEXT *esysContext,
1118 ESYS_TR keyHandle,
1119 ESYS_TR shandle1,
1120 ESYS_TR shandle2,
1121 ESYS_TR shandle3,
1122 const TPM2B_ECC_POINT *inPoint,
1123 TPM2B_ECC_POINT **outPoint);
1124
1125TSS2_RC
1127 ESYS_TR keyHandle,
1128 ESYS_TR shandle1,
1129 ESYS_TR shandle2,
1130 ESYS_TR shandle3,
1131 const TPM2B_ECC_POINT *inPoint);
1132
1133TSS2_RC
1134Esys_ECDH_ZGen_Finish(ESYS_CONTEXT *esysContext, TPM2B_ECC_POINT **outPoint);
1135
1136/* Table 53 - TPM2_ECC_Parameters Command */
1137
1138TSS2_RC
1140 ESYS_TR shandle1,
1141 ESYS_TR shandle2,
1142 ESYS_TR shandle3,
1143 TPMI_ECC_CURVE curveID,
1144 TPMS_ALGORITHM_DETAIL_ECC **parameters);
1145
1146TSS2_RC
1148 ESYS_TR shandle1,
1149 ESYS_TR shandle2,
1150 ESYS_TR shandle3,
1151 TPMI_ECC_CURVE curveID);
1152
1153TSS2_RC
1154Esys_ECC_Parameters_Finish(ESYS_CONTEXT *esysContext, TPMS_ALGORITHM_DETAIL_ECC **parameters);
1155
1156/* Table 55 - TPM2_ZGen_2Phase Command */
1157
1158TSS2_RC
1159Esys_ZGen_2Phase(ESYS_CONTEXT *esysContext,
1160 ESYS_TR keyA,
1161 ESYS_TR shandle1,
1162 ESYS_TR shandle2,
1163 ESYS_TR shandle3,
1164 const TPM2B_ECC_POINT *inQsB,
1165 const TPM2B_ECC_POINT *inQeB,
1166 TPMI_ECC_KEY_EXCHANGE inScheme,
1167 UINT16 counter,
1168 TPM2B_ECC_POINT **outZ1,
1169 TPM2B_ECC_POINT **outZ2);
1170
1171TSS2_RC
1173 ESYS_TR keyA,
1174 ESYS_TR shandle1,
1175 ESYS_TR shandle2,
1176 ESYS_TR shandle3,
1177 const TPM2B_ECC_POINT *inQsB,
1178 const TPM2B_ECC_POINT *inQeB,
1179 TPMI_ECC_KEY_EXCHANGE inScheme,
1180 UINT16 counter);
1181
1182TSS2_RC
1184 TPM2B_ECC_POINT **outZ1,
1185 TPM2B_ECC_POINT **outZ2);
1186
1187/* Table 58 - TPM2_EncryptDecrypt Command */
1188
1189TSS2_RC
1191 ESYS_TR keyHandle,
1192 ESYS_TR shandle1,
1193 ESYS_TR shandle2,
1194 ESYS_TR shandle3,
1195 TPMI_YES_NO decrypt,
1196 TPMI_ALG_CIPHER_MODE mode,
1197 const TPM2B_IV *ivIn,
1198 const TPM2B_MAX_BUFFER *inData,
1199 TPM2B_MAX_BUFFER **outData,
1200 TPM2B_IV **ivOut);
1201
1202TSS2_RC
1204 ESYS_TR keyHandle,
1205 ESYS_TR shandle1,
1206 ESYS_TR shandle2,
1207 ESYS_TR shandle3,
1208 TPMI_YES_NO decrypt,
1209 TPMI_ALG_CIPHER_MODE mode,
1210 const TPM2B_IV *ivIn,
1211 const TPM2B_MAX_BUFFER *inData);
1212
1213TSS2_RC
1214Esys_EncryptDecrypt_Finish(ESYS_CONTEXT *esysContext, TPM2B_MAX_BUFFER **outData, TPM2B_IV **ivOut);
1215
1216/* Table 60 - TPM2_EncryptDecrypt2 Command */
1217
1218TSS2_RC
1219Esys_EncryptDecrypt2(ESYS_CONTEXT *esysContext,
1220 ESYS_TR keyHandle,
1221 ESYS_TR shandle1,
1222 ESYS_TR shandle2,
1223 ESYS_TR shandle3,
1224 const TPM2B_MAX_BUFFER *inData,
1225 TPMI_YES_NO decrypt,
1226 TPMI_ALG_CIPHER_MODE mode,
1227 const TPM2B_IV *ivIn,
1228 TPM2B_MAX_BUFFER **outData,
1229 TPM2B_IV **ivOut);
1230
1231TSS2_RC
1232Esys_EncryptDecrypt2_Async(ESYS_CONTEXT *esysContext,
1233 ESYS_TR keyHandle,
1234 ESYS_TR shandle1,
1235 ESYS_TR shandle2,
1236 ESYS_TR shandle3,
1237 const TPM2B_MAX_BUFFER *inData,
1238 TPMI_YES_NO decrypt,
1239 TPMI_ALG_CIPHER_MODE mode,
1240 const TPM2B_IV *ivIn);
1241
1242TSS2_RC
1243Esys_EncryptDecrypt2_Finish(ESYS_CONTEXT *esysContext,
1244 TPM2B_MAX_BUFFER **outData,
1245 TPM2B_IV **ivOut);
1246
1247/* Table 62 - TPM2_Hash Command */
1248
1249TSS2_RC
1250Esys_Hash(ESYS_CONTEXT *esysContext,
1251 ESYS_TR shandle1,
1252 ESYS_TR shandle2,
1253 ESYS_TR shandle3,
1254 const TPM2B_MAX_BUFFER *data,
1255 TPMI_ALG_HASH hashAlg,
1256 ESYS_TR hierarchy,
1257 TPM2B_DIGEST **outHash,
1258 TPMT_TK_HASHCHECK **validation);
1259
1260TSS2_RC
1261Esys_Hash_Async(ESYS_CONTEXT *esysContext,
1262 ESYS_TR shandle1,
1263 ESYS_TR shandle2,
1264 ESYS_TR shandle3,
1265 const TPM2B_MAX_BUFFER *data,
1266 TPMI_ALG_HASH hashAlg,
1267 ESYS_TR hierarchy);
1268
1269TSS2_RC
1270Esys_Hash_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **outHash, TPMT_TK_HASHCHECK **validation);
1271
1272/* Table 64 - TPM2_HMAC Command */
1273
1274TSS2_RC
1275Esys_HMAC(ESYS_CONTEXT *esysContext,
1276 ESYS_TR handle,
1277 ESYS_TR shandle1,
1278 ESYS_TR shandle2,
1279 ESYS_TR shandle3,
1280 const TPM2B_MAX_BUFFER *buffer,
1281 TPMI_ALG_HASH hashAlg,
1282 TPM2B_DIGEST **outHMAC);
1283
1284TSS2_RC
1285Esys_HMAC_Async(ESYS_CONTEXT *esysContext,
1286 ESYS_TR handle,
1287 ESYS_TR shandle1,
1288 ESYS_TR shandle2,
1289 ESYS_TR shandle3,
1290 const TPM2B_MAX_BUFFER *buffer,
1291 TPMI_ALG_HASH hashAlg);
1292
1293TSS2_RC
1294Esys_HMAC_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **outHMAC);
1295
1296TSS2_RC
1297Esys_MAC_Async(ESYS_CONTEXT *esysContext,
1298 ESYS_TR handle,
1299 ESYS_TR handleSession1,
1300 ESYS_TR optionalSession2,
1301 ESYS_TR optionalSession3,
1302 const TPM2B_MAX_BUFFER *buffer,
1303 TPMI_ALG_MAC_SCHEME inScheme);
1304
1305TSS2_RC
1306Esys_MAC_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **outMAC);
1307
1308TSS2_RC
1309Esys_MAC(ESYS_CONTEXT *esysContext,
1310 ESYS_TR handle,
1311 ESYS_TR handleSession1,
1312 ESYS_TR optionalSession2,
1313 ESYS_TR optionalSession3,
1314 const TPM2B_MAX_BUFFER *buffer,
1315 TPMI_ALG_MAC_SCHEME inScheme,
1316 TPM2B_DIGEST **outMAC);
1317
1318/* Table 66 - TPM2_GetRandom Command */
1319
1320TSS2_RC
1321Esys_GetRandom(ESYS_CONTEXT *esysContext,
1322 ESYS_TR shandle1,
1323 ESYS_TR shandle2,
1324 ESYS_TR shandle3,
1325 UINT16 bytesRequested,
1326 TPM2B_DIGEST **randomBytes);
1327
1328TSS2_RC
1330 ESYS_TR shandle1,
1331 ESYS_TR shandle2,
1332 ESYS_TR shandle3,
1333 UINT16 bytesRequested);
1334
1335TSS2_RC
1336Esys_GetRandom_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **randomBytes);
1337
1338/* Table 68 - TPM2_StirRandom Command */
1339
1340TSS2_RC
1341Esys_StirRandom(ESYS_CONTEXT *esysContext,
1342 ESYS_TR shandle1,
1343 ESYS_TR shandle2,
1344 ESYS_TR shandle3,
1345 const TPM2B_SENSITIVE_DATA *inData);
1346
1347TSS2_RC
1349 ESYS_TR shandle1,
1350 ESYS_TR shandle2,
1351 ESYS_TR shandle3,
1352 const TPM2B_SENSITIVE_DATA *inData);
1353
1354TSS2_RC
1356
1357/* Table 71 - TPM2_HMAC_Start Command */
1358
1359TSS2_RC
1360Esys_HMAC_Start(ESYS_CONTEXT *esysContext,
1361 ESYS_TR handle,
1362 ESYS_TR shandle1,
1363 ESYS_TR shandle2,
1364 ESYS_TR shandle3,
1365 const TPM2B_AUTH *auth,
1366 TPMI_ALG_HASH hashAlg,
1367 ESYS_TR *sequenceHandle);
1368
1369TSS2_RC
1371 ESYS_TR handle,
1372 ESYS_TR shandle1,
1373 ESYS_TR shandle2,
1374 ESYS_TR shandle3,
1375 const TPM2B_AUTH *auth,
1376 TPMI_ALG_HASH hashAlg);
1377
1378TSS2_RC
1379Esys_HMAC_Start_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *sequenceHandle);
1380
1381TSS2_RC
1382Esys_MAC_Start(ESYS_CONTEXT *esysContext,
1383 ESYS_TR handle,
1384 ESYS_TR handleSession1,
1385 ESYS_TR optionalSession2,
1386 ESYS_TR optionalSession3,
1387 const TPM2B_AUTH *auth,
1388 TPMI_ALG_MAC_SCHEME inScheme,
1389 ESYS_TR *sequenceHandle);
1390
1391TSS2_RC
1392Esys_MAC_Start_Async(ESYS_CONTEXT *esysContext,
1393 ESYS_TR handle,
1394 ESYS_TR handleSession1,
1395 ESYS_TR optionalSession2,
1396 ESYS_TR optionalSession3,
1397 const TPM2B_AUTH *auth,
1398 TPMI_ALG_MAC_SCHEME inScheme);
1399
1400TSS2_RC
1401Esys_MAC_Start_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *sequenceHandle);
1402
1403/* Table 73 - TPM2_HashSequenceStart Command */
1404
1405TSS2_RC
1407 ESYS_TR shandle1,
1408 ESYS_TR shandle2,
1409 ESYS_TR shandle3,
1410 const TPM2B_AUTH *auth,
1411 TPMI_ALG_HASH hashAlg,
1412 ESYS_TR *sequenceHandle);
1413
1414TSS2_RC
1416 ESYS_TR shandle1,
1417 ESYS_TR shandle2,
1418 ESYS_TR shandle3,
1419 const TPM2B_AUTH *auth,
1420 TPMI_ALG_HASH hashAlg);
1421
1422TSS2_RC
1423Esys_HashSequenceStart_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *sequenceHandle);
1424
1425/* Table 75 - TPM2_SequenceUpdate Command */
1426
1427TSS2_RC
1429 ESYS_TR sequenceHandle,
1430 ESYS_TR shandle1,
1431 ESYS_TR shandle2,
1432 ESYS_TR shandle3,
1433 const TPM2B_MAX_BUFFER *buffer);
1434
1435TSS2_RC
1437 ESYS_TR sequenceHandle,
1438 ESYS_TR shandle1,
1439 ESYS_TR shandle2,
1440 ESYS_TR shandle3,
1441 const TPM2B_MAX_BUFFER *buffer);
1442
1443TSS2_RC
1445
1446/* Table 77 - TPM2_SequenceComplete Command */
1447
1448TSS2_RC
1449Esys_SequenceComplete(ESYS_CONTEXT *esysContext,
1450 ESYS_TR sequenceHandle,
1451 ESYS_TR shandle1,
1452 ESYS_TR shandle2,
1453 ESYS_TR shandle3,
1454 const TPM2B_MAX_BUFFER *buffer,
1455 ESYS_TR hierarchy,
1456 TPM2B_DIGEST **result,
1457 TPMT_TK_HASHCHECK **validation);
1458
1459TSS2_RC
1460Esys_SequenceComplete_Async(ESYS_CONTEXT *esysContext,
1461 ESYS_TR sequenceHandle,
1462 ESYS_TR shandle1,
1463 ESYS_TR shandle2,
1464 ESYS_TR shandle3,
1465 const TPM2B_MAX_BUFFER *buffer,
1466 ESYS_TR hierarchy);
1467
1468TSS2_RC
1470 TPM2B_DIGEST **result,
1471 TPMT_TK_HASHCHECK **validation);
1472
1473/* Table 79 - TPM2_EventSequenceComplete Command */
1474
1475TSS2_RC
1477 ESYS_TR pcrHandle,
1478 ESYS_TR sequenceHandle,
1479 ESYS_TR shandle1,
1480 ESYS_TR shandle2,
1481 ESYS_TR shandle3,
1482 const TPM2B_MAX_BUFFER *buffer,
1483 TPML_DIGEST_VALUES **results);
1484
1485TSS2_RC
1487 ESYS_TR pcrHandle,
1488 ESYS_TR sequenceHandle,
1489 ESYS_TR shandle1,
1490 ESYS_TR shandle2,
1491 ESYS_TR shandle3,
1492 const TPM2B_MAX_BUFFER *buffer);
1493
1494TSS2_RC
1495Esys_EventSequenceComplete_Finish(ESYS_CONTEXT *esysContext, TPML_DIGEST_VALUES **results);
1496
1497/* Table 81 - TPM2_Certify Command */
1498
1499TSS2_RC
1500Esys_Certify(ESYS_CONTEXT *esysContext,
1501 ESYS_TR objectHandle,
1502 ESYS_TR signHandle,
1503 ESYS_TR shandle1,
1504 ESYS_TR shandle2,
1505 ESYS_TR shandle3,
1506 const TPM2B_DATA *qualifyingData,
1507 const TPMT_SIG_SCHEME *inScheme,
1508 TPM2B_ATTEST **certifyInfo,
1509 TPMT_SIGNATURE **signature);
1510
1511TSS2_RC
1512Esys_Certify_Async(ESYS_CONTEXT *esysContext,
1513 ESYS_TR objectHandle,
1514 ESYS_TR signHandle,
1515 ESYS_TR shandle1,
1516 ESYS_TR shandle2,
1517 ESYS_TR shandle3,
1518 const TPM2B_DATA *qualifyingData,
1519 const TPMT_SIG_SCHEME *inScheme);
1520
1521TSS2_RC
1523 TPM2B_ATTEST **certifyInfo,
1524 TPMT_SIGNATURE **signature);
1525
1526/* Table 83 - TPM2_CertifyCreation Command */
1527
1528TSS2_RC
1530 ESYS_TR signHandle,
1531 ESYS_TR objectHandle,
1532 ESYS_TR shandle1,
1533 ESYS_TR shandle2,
1534 ESYS_TR shandle3,
1535 const TPM2B_DATA *qualifyingData,
1536 const TPM2B_DIGEST *creationHash,
1537 const TPMT_SIG_SCHEME *inScheme,
1538 const TPMT_TK_CREATION *creationTicket,
1539 TPM2B_ATTEST **certifyInfo,
1540 TPMT_SIGNATURE **signature);
1541
1542TSS2_RC
1544 ESYS_TR signHandle,
1545 ESYS_TR objectHandle,
1546 ESYS_TR shandle1,
1547 ESYS_TR shandle2,
1548 ESYS_TR shandle3,
1549 const TPM2B_DATA *qualifyingData,
1550 const TPM2B_DIGEST *creationHash,
1551 const TPMT_SIG_SCHEME *inScheme,
1552 const TPMT_TK_CREATION *creationTicket);
1553
1554TSS2_RC
1556 TPM2B_ATTEST **certifyInfo,
1557 TPMT_SIGNATURE **signature);
1558
1559TSS2_RC
1560Esys_CertifyX509(ESYS_CONTEXT *esysContext,
1561 ESYS_TR objectHandle,
1562 ESYS_TR signHandle,
1563 ESYS_TR shandle1,
1564 ESYS_TR shandle2,
1565 ESYS_TR shandle3,
1566 const TPM2B_DATA *reserved,
1567 const TPMT_SIG_SCHEME *inScheme,
1568 const TPM2B_MAX_BUFFER *partialCertificate,
1569 TPM2B_MAX_BUFFER **addedToCertificate,
1570 TPM2B_DIGEST **tbsDigest,
1571 TPMT_SIGNATURE **signature);
1572
1573TSS2_RC
1574Esys_CertifyX509_Async(ESYS_CONTEXT *esysContext,
1575 ESYS_TR objectHandle,
1576 ESYS_TR signHandle,
1577 ESYS_TR shandle1,
1578 ESYS_TR shandle2,
1579 ESYS_TR shandle3,
1580 const TPM2B_DATA *reserved,
1581 const TPMT_SIG_SCHEME *inScheme,
1582 const TPM2B_MAX_BUFFER *partialCertificate);
1583
1584TSS2_RC
1585Esys_CertifyX509_Finish(ESYS_CONTEXT *esysContext,
1586 TPM2B_MAX_BUFFER **addedToCertificate,
1587 TPM2B_DIGEST **tbsDigest,
1588 TPMT_SIGNATURE **signature);
1589
1590/* Table 85 - TPM2_Quote Command */
1591
1592TSS2_RC
1593Esys_Quote(ESYS_CONTEXT *esysContext,
1594 ESYS_TR signHandle,
1595 ESYS_TR shandle1,
1596 ESYS_TR shandle2,
1597 ESYS_TR shandle3,
1598 const TPM2B_DATA *qualifyingData,
1599 const TPMT_SIG_SCHEME *inScheme,
1600 const TPML_PCR_SELECTION *PCRselect,
1601 TPM2B_ATTEST **quoted,
1602 TPMT_SIGNATURE **signature);
1603
1604TSS2_RC
1605Esys_Quote_Async(ESYS_CONTEXT *esysContext,
1606 ESYS_TR signHandle,
1607 ESYS_TR shandle1,
1608 ESYS_TR shandle2,
1609 ESYS_TR shandle3,
1610 const TPM2B_DATA *qualifyingData,
1611 const TPMT_SIG_SCHEME *inScheme,
1612 const TPML_PCR_SELECTION *PCRselect);
1613
1614TSS2_RC
1615Esys_Quote_Finish(ESYS_CONTEXT *esysContext, TPM2B_ATTEST **quoted, TPMT_SIGNATURE **signature);
1616
1617/* Table 87 - TPM2_GetSessionAuditDigest Command */
1618
1619TSS2_RC
1621 ESYS_TR privacyAdminHandle,
1622 ESYS_TR signHandle,
1623 ESYS_TR sessionHandle,
1624 ESYS_TR shandle1,
1625 ESYS_TR shandle2,
1626 ESYS_TR shandle3,
1627 const TPM2B_DATA *qualifyingData,
1628 const TPMT_SIG_SCHEME *inScheme,
1629 TPM2B_ATTEST **auditInfo,
1630 TPMT_SIGNATURE **signature);
1631
1632TSS2_RC
1634 ESYS_TR privacyAdminHandle,
1635 ESYS_TR signHandle,
1636 ESYS_TR sessionHandle,
1637 ESYS_TR shandle1,
1638 ESYS_TR shandle2,
1639 ESYS_TR shandle3,
1640 const TPM2B_DATA *qualifyingData,
1641 const TPMT_SIG_SCHEME *inScheme);
1642
1643TSS2_RC
1645 TPM2B_ATTEST **auditInfo,
1646 TPMT_SIGNATURE **signature);
1647
1648/* Table 89 - TPM2_GetCommandAuditDigest Command */
1649
1650TSS2_RC
1652 ESYS_TR privacyHandle,
1653 ESYS_TR signHandle,
1654 ESYS_TR shandle1,
1655 ESYS_TR shandle2,
1656 ESYS_TR shandle3,
1657 const TPM2B_DATA *qualifyingData,
1658 const TPMT_SIG_SCHEME *inScheme,
1659 TPM2B_ATTEST **auditInfo,
1660 TPMT_SIGNATURE **signature);
1661
1662TSS2_RC
1664 ESYS_TR privacyHandle,
1665 ESYS_TR signHandle,
1666 ESYS_TR shandle1,
1667 ESYS_TR shandle2,
1668 ESYS_TR shandle3,
1669 const TPM2B_DATA *qualifyingData,
1670 const TPMT_SIG_SCHEME *inScheme);
1671
1672TSS2_RC
1674 TPM2B_ATTEST **auditInfo,
1675 TPMT_SIGNATURE **signature);
1676
1677/* Table 91 - TPM2_GetTime Command */
1678
1679TSS2_RC
1680Esys_GetTime(ESYS_CONTEXT *esysContext,
1681 ESYS_TR privacyAdminHandle,
1682 ESYS_TR signHandle,
1683 ESYS_TR shandle1,
1684 ESYS_TR shandle2,
1685 ESYS_TR shandle3,
1686 const TPM2B_DATA *qualifyingData,
1687 const TPMT_SIG_SCHEME *inScheme,
1688 TPM2B_ATTEST **timeInfo,
1689 TPMT_SIGNATURE **signature);
1690
1691TSS2_RC
1692Esys_GetTime_Async(ESYS_CONTEXT *esysContext,
1693 ESYS_TR privacyAdminHandle,
1694 ESYS_TR signHandle,
1695 ESYS_TR shandle1,
1696 ESYS_TR shandle2,
1697 ESYS_TR shandle3,
1698 const TPM2B_DATA *qualifyingData,
1699 const TPMT_SIG_SCHEME *inScheme);
1700
1701TSS2_RC
1702Esys_GetTime_Finish(ESYS_CONTEXT *esysContext, TPM2B_ATTEST **timeInfo, TPMT_SIGNATURE **signature);
1703
1704/* Table 93 - TPM2_Commit Command */
1705
1706TSS2_RC
1707Esys_Commit(ESYS_CONTEXT *esysContext,
1708 ESYS_TR signHandle,
1709 ESYS_TR shandle1,
1710 ESYS_TR shandle2,
1711 ESYS_TR shandle3,
1712 const TPM2B_ECC_POINT *P1,
1713 const TPM2B_SENSITIVE_DATA *s2,
1714 const TPM2B_ECC_PARAMETER *y2,
1715 TPM2B_ECC_POINT **K,
1716 TPM2B_ECC_POINT **L,
1717 TPM2B_ECC_POINT **E,
1718 UINT16 *counter);
1719
1720TSS2_RC
1721Esys_Commit_Async(ESYS_CONTEXT *esysContext,
1722 ESYS_TR signHandle,
1723 ESYS_TR shandle1,
1724 ESYS_TR shandle2,
1725 ESYS_TR shandle3,
1726 const TPM2B_ECC_POINT *P1,
1727 const TPM2B_SENSITIVE_DATA *s2,
1728 const TPM2B_ECC_PARAMETER *y2);
1729
1730TSS2_RC
1731Esys_Commit_Finish(ESYS_CONTEXT *esysContext,
1732 TPM2B_ECC_POINT **K,
1733 TPM2B_ECC_POINT **L,
1734 TPM2B_ECC_POINT **E,
1735 UINT16 *counter);
1736
1737/* Table 95 - TPM2_EC_Ephemeral Command */
1738
1739TSS2_RC
1740Esys_EC_Ephemeral(ESYS_CONTEXT *esysContext,
1741 ESYS_TR shandle1,
1742 ESYS_TR shandle2,
1743 ESYS_TR shandle3,
1744 TPMI_ECC_CURVE curveID,
1745 TPM2B_ECC_POINT **Q,
1746 UINT16 *counter);
1747
1748TSS2_RC
1750 ESYS_TR shandle1,
1751 ESYS_TR shandle2,
1752 ESYS_TR shandle3,
1753 TPMI_ECC_CURVE curveID);
1754
1755TSS2_RC
1756Esys_EC_Ephemeral_Finish(ESYS_CONTEXT *esysContext, TPM2B_ECC_POINT **Q, UINT16 *counter);
1757
1758/* Table 97 - TPM2_VerifySignature Command */
1759
1760TSS2_RC
1762 ESYS_TR keyHandle,
1763 ESYS_TR shandle1,
1764 ESYS_TR shandle2,
1765 ESYS_TR shandle3,
1766 const TPM2B_DIGEST *digest,
1767 const TPMT_SIGNATURE *signature,
1768 TPMT_TK_VERIFIED **validation);
1769
1770TSS2_RC
1772 ESYS_TR keyHandle,
1773 ESYS_TR shandle1,
1774 ESYS_TR shandle2,
1775 ESYS_TR shandle3,
1776 const TPM2B_DIGEST *digest,
1777 const TPMT_SIGNATURE *signature);
1778
1779TSS2_RC
1780Esys_VerifySignature_Finish(ESYS_CONTEXT *esysContext, TPMT_TK_VERIFIED **validation);
1781
1782/* Table 99 - TPM2_Sign Command */
1783
1784TSS2_RC
1785Esys_Sign(ESYS_CONTEXT *esysContext,
1786 ESYS_TR keyHandle,
1787 ESYS_TR shandle1,
1788 ESYS_TR shandle2,
1789 ESYS_TR shandle3,
1790 const TPM2B_DIGEST *digest,
1791 const TPMT_SIG_SCHEME *inScheme,
1792 const TPMT_TK_HASHCHECK *validation,
1793 TPMT_SIGNATURE **signature);
1794
1795TSS2_RC
1796Esys_Sign_Async(ESYS_CONTEXT *esysContext,
1797 ESYS_TR keyHandle,
1798 ESYS_TR shandle1,
1799 ESYS_TR shandle2,
1800 ESYS_TR shandle3,
1801 const TPM2B_DIGEST *digest,
1802 const TPMT_SIG_SCHEME *inScheme,
1803 const TPMT_TK_HASHCHECK *validation);
1804
1805TSS2_RC
1806Esys_Sign_Finish(ESYS_CONTEXT *esysContext, TPMT_SIGNATURE **signature);
1807
1808/* Table 101 - TPM2_SetCommandCodeAuditStatus Command */
1809
1810TSS2_RC
1812 ESYS_TR auth,
1813 ESYS_TR shandle1,
1814 ESYS_TR shandle2,
1815 ESYS_TR shandle3,
1816 TPMI_ALG_HASH auditAlg,
1817 const TPML_CC *setList,
1818 const TPML_CC *clearList);
1819
1820TSS2_RC
1822 ESYS_TR auth,
1823 ESYS_TR shandle1,
1824 ESYS_TR shandle2,
1825 ESYS_TR shandle3,
1826 TPMI_ALG_HASH auditAlg,
1827 const TPML_CC *setList,
1828 const TPML_CC *clearList);
1829
1830TSS2_RC
1832
1833/* Table 103 - TPM2_PCR_Extend Command */
1834
1835TSS2_RC
1836Esys_PCR_Extend(ESYS_CONTEXT *esysContext,
1837 ESYS_TR pcrHandle,
1838 ESYS_TR shandle1,
1839 ESYS_TR shandle2,
1840 ESYS_TR shandle3,
1841 const TPML_DIGEST_VALUES *digests);
1842
1843TSS2_RC
1845 ESYS_TR pcrHandle,
1846 ESYS_TR shandle1,
1847 ESYS_TR shandle2,
1848 ESYS_TR shandle3,
1849 const TPML_DIGEST_VALUES *digests);
1850
1851TSS2_RC
1853
1854/* Table 105 - TPM2_PCR_Event Command */
1855
1856TSS2_RC
1857Esys_PCR_Event(ESYS_CONTEXT *esysContext,
1858 ESYS_TR pcrHandle,
1859 ESYS_TR shandle1,
1860 ESYS_TR shandle2,
1861 ESYS_TR shandle3,
1862 const TPM2B_EVENT *eventData,
1863 TPML_DIGEST_VALUES **digests);
1864
1865TSS2_RC
1867 ESYS_TR pcrHandle,
1868 ESYS_TR shandle1,
1869 ESYS_TR shandle2,
1870 ESYS_TR shandle3,
1871 const TPM2B_EVENT *eventData);
1872
1873TSS2_RC
1874Esys_PCR_Event_Finish(ESYS_CONTEXT *esysContext, TPML_DIGEST_VALUES **digests);
1875
1876/* Table 107 - TPM2_PCR_Read Command */
1877
1878TSS2_RC
1879Esys_PCR_Read(ESYS_CONTEXT *esysContext,
1880 ESYS_TR shandle1,
1881 ESYS_TR shandle2,
1882 ESYS_TR shandle3,
1883 const TPML_PCR_SELECTION *pcrSelectionIn,
1884 UINT32 *pcrUpdateCounter,
1885 TPML_PCR_SELECTION **pcrSelectionOut,
1886 TPML_DIGEST **pcrValues);
1887
1888TSS2_RC
1890 ESYS_TR shandle1,
1891 ESYS_TR shandle2,
1892 ESYS_TR shandle3,
1893 const TPML_PCR_SELECTION *pcrSelectionIn);
1894
1895TSS2_RC
1897 UINT32 *pcrUpdateCounter,
1898 TPML_PCR_SELECTION **pcrSelectionOut,
1899 TPML_DIGEST **pcrValues);
1900
1901/* Table 109 - TPM2_PCR_Allocate Command */
1902
1903TSS2_RC
1904Esys_PCR_Allocate(ESYS_CONTEXT *esysContext,
1905 ESYS_TR authHandle,
1906 ESYS_TR shandle1,
1907 ESYS_TR shandle2,
1908 ESYS_TR shandle3,
1909 const TPML_PCR_SELECTION *pcrAllocation,
1910 TPMI_YES_NO *allocationSuccess,
1911 UINT32 *maxPCR,
1912 UINT32 *sizeNeeded,
1913 UINT32 *sizeAvailable);
1914
1915TSS2_RC
1917 ESYS_TR authHandle,
1918 ESYS_TR shandle1,
1919 ESYS_TR shandle2,
1920 ESYS_TR shandle3,
1921 const TPML_PCR_SELECTION *pcrAllocation);
1922
1923TSS2_RC
1925 TPMI_YES_NO *allocationSuccess,
1926 UINT32 *maxPCR,
1927 UINT32 *sizeNeeded,
1928 UINT32 *sizeAvailable);
1929
1930/* Table 111 - TPM2_PCR_SetAuthPolicy Command */
1931
1932TSS2_RC
1934 ESYS_TR authHandle,
1935 ESYS_TR shandle1,
1936 ESYS_TR shandle2,
1937 ESYS_TR shandle3,
1938 const TPM2B_DIGEST *authPolicy,
1939 TPMI_ALG_HASH hashAlg,
1940 TPMI_DH_PCR pcrNum);
1941
1942TSS2_RC
1944 ESYS_TR authHandle,
1945 ESYS_TR shandle1,
1946 ESYS_TR shandle2,
1947 ESYS_TR shandle3,
1948 const TPM2B_DIGEST *authPolicy,
1949 TPMI_ALG_HASH hashAlg,
1950 TPMI_DH_PCR pcrNum);
1951
1952TSS2_RC
1954
1955/* Table 113 - TPM2_PCR_SetAuthValue Command */
1956
1957TSS2_RC
1959 ESYS_TR pcrHandle,
1960 ESYS_TR shandle1,
1961 ESYS_TR shandle2,
1962 ESYS_TR shandle3,
1963 const TPM2B_DIGEST *auth);
1964
1965TSS2_RC
1967 ESYS_TR pcrHandle,
1968 ESYS_TR shandle1,
1969 ESYS_TR shandle2,
1970 ESYS_TR shandle3,
1971 const TPM2B_DIGEST *auth);
1972
1973TSS2_RC
1975
1976/* Table 115 - TPM2_PCR_Reset Command */
1977
1978TSS2_RC
1979Esys_PCR_Reset(ESYS_CONTEXT *esysContext,
1980 ESYS_TR pcrHandle,
1981 ESYS_TR shandle1,
1982 ESYS_TR shandle2,
1983 ESYS_TR shandle3);
1984
1985TSS2_RC
1987 ESYS_TR pcrHandle,
1988 ESYS_TR shandle1,
1989 ESYS_TR shandle2,
1990 ESYS_TR shandle3);
1991
1992TSS2_RC
1994
1995/* Table 117 - TPM2_PolicySigned Command */
1996
1997TSS2_RC
1998Esys_PolicySigned(ESYS_CONTEXT *esysContext,
1999 ESYS_TR authObject,
2000 ESYS_TR policySession,
2001 ESYS_TR shandle1,
2002 ESYS_TR shandle2,
2003 ESYS_TR shandle3,
2004 const TPM2B_NONCE *nonceTPM,
2005 const TPM2B_DIGEST *cpHashA,
2006 const TPM2B_NONCE *policyRef,
2007 INT32 expiration,
2008 const TPMT_SIGNATURE *auth,
2009 TPM2B_TIMEOUT **timeout,
2010 TPMT_TK_AUTH **policyTicket);
2011
2012TSS2_RC
2014 ESYS_TR authObject,
2015 ESYS_TR policySession,
2016 ESYS_TR shandle1,
2017 ESYS_TR shandle2,
2018 ESYS_TR shandle3,
2019 const TPM2B_NONCE *nonceTPM,
2020 const TPM2B_DIGEST *cpHashA,
2021 const TPM2B_NONCE *policyRef,
2022 INT32 expiration,
2023 const TPMT_SIGNATURE *auth);
2024
2025TSS2_RC
2027 TPM2B_TIMEOUT **timeout,
2028 TPMT_TK_AUTH **policyTicket);
2029
2030/* Table 119 - TPM2_PolicySecret Command */
2031
2032TSS2_RC
2033Esys_PolicySecret(ESYS_CONTEXT *esysContext,
2034 ESYS_TR authHandle,
2035 ESYS_TR policySession,
2036 ESYS_TR shandle1,
2037 ESYS_TR shandle2,
2038 ESYS_TR shandle3,
2039 const TPM2B_NONCE *nonceTPM,
2040 const TPM2B_DIGEST *cpHashA,
2041 const TPM2B_NONCE *policyRef,
2042 INT32 expiration,
2043 TPM2B_TIMEOUT **timeout,
2044 TPMT_TK_AUTH **policyTicket);
2045
2046TSS2_RC
2048 ESYS_TR authHandle,
2049 ESYS_TR policySession,
2050 ESYS_TR shandle1,
2051 ESYS_TR shandle2,
2052 ESYS_TR shandle3,
2053 const TPM2B_NONCE *nonceTPM,
2054 const TPM2B_DIGEST *cpHashA,
2055 const TPM2B_NONCE *policyRef,
2056 INT32 expiration);
2057
2058TSS2_RC
2060 TPM2B_TIMEOUT **timeout,
2061 TPMT_TK_AUTH **policyTicket);
2062
2063/* Table 121 - TPM2_PolicyTicket Command */
2064
2065TSS2_RC
2066Esys_PolicyTicket(ESYS_CONTEXT *esysContext,
2067 ESYS_TR policySession,
2068 ESYS_TR shandle1,
2069 ESYS_TR shandle2,
2070 ESYS_TR shandle3,
2071 const TPM2B_TIMEOUT *timeout,
2072 const TPM2B_DIGEST *cpHashA,
2073 const TPM2B_NONCE *policyRef,
2074 const TPM2B_NAME *authName,
2075 const TPMT_TK_AUTH *ticket);
2076
2077TSS2_RC
2079 ESYS_TR policySession,
2080 ESYS_TR shandle1,
2081 ESYS_TR shandle2,
2082 ESYS_TR shandle3,
2083 const TPM2B_TIMEOUT *timeout,
2084 const TPM2B_DIGEST *cpHashA,
2085 const TPM2B_NONCE *policyRef,
2086 const TPM2B_NAME *authName,
2087 const TPMT_TK_AUTH *ticket);
2088
2089TSS2_RC
2091
2092/* Table 123 - TPM2_PolicyOR Command */
2093
2094TSS2_RC
2095Esys_PolicyOR(ESYS_CONTEXT *esysContext,
2096 ESYS_TR policySession,
2097 ESYS_TR shandle1,
2098 ESYS_TR shandle2,
2099 ESYS_TR shandle3,
2100 const TPML_DIGEST *pHashList);
2101
2102TSS2_RC
2104 ESYS_TR policySession,
2105 ESYS_TR shandle1,
2106 ESYS_TR shandle2,
2107 ESYS_TR shandle3,
2108 const TPML_DIGEST *pHashList);
2109
2110TSS2_RC
2112
2113/* Table 125 - TPM2_PolicyPCR Command */
2114
2115TSS2_RC
2116Esys_PolicyPCR(ESYS_CONTEXT *esysContext,
2117 ESYS_TR policySession,
2118 ESYS_TR shandle1,
2119 ESYS_TR shandle2,
2120 ESYS_TR shandle3,
2121 const TPM2B_DIGEST *pcrDigest,
2122 const TPML_PCR_SELECTION *pcrs);
2123
2124TSS2_RC
2126 ESYS_TR policySession,
2127 ESYS_TR shandle1,
2128 ESYS_TR shandle2,
2129 ESYS_TR shandle3,
2130 const TPM2B_DIGEST *pcrDigest,
2131 const TPML_PCR_SELECTION *pcrs);
2132
2133TSS2_RC
2135
2136/* Table 127 - TPM2_PolicyLocality Command */
2137
2138TSS2_RC
2140 ESYS_TR policySession,
2141 ESYS_TR shandle1,
2142 ESYS_TR shandle2,
2143 ESYS_TR shandle3,
2144 TPMA_LOCALITY locality);
2145
2146TSS2_RC
2148 ESYS_TR policySession,
2149 ESYS_TR shandle1,
2150 ESYS_TR shandle2,
2151 ESYS_TR shandle3,
2152 TPMA_LOCALITY locality);
2153
2154TSS2_RC
2156
2157/* Table 129 - TPM2_PolicyNV Command */
2158
2159TSS2_RC
2160Esys_PolicyNV(ESYS_CONTEXT *esysContext,
2161 ESYS_TR authHandle,
2162 ESYS_TR nvIndex,
2163 ESYS_TR policySession,
2164 ESYS_TR shandle1,
2165 ESYS_TR shandle2,
2166 ESYS_TR shandle3,
2167 const TPM2B_OPERAND *operandB,
2168 UINT16 offset,
2169 TPM2_EO operation);
2170
2171TSS2_RC
2173 ESYS_TR authHandle,
2174 ESYS_TR nvIndex,
2175 ESYS_TR policySession,
2176 ESYS_TR shandle1,
2177 ESYS_TR shandle2,
2178 ESYS_TR shandle3,
2179 const TPM2B_OPERAND *operandB,
2180 UINT16 offset,
2181 TPM2_EO operation);
2182
2183TSS2_RC
2185
2186/* Table 131 - TPM2_PolicyCounterTimer Command */
2187
2188TSS2_RC
2190 ESYS_TR policySession,
2191 ESYS_TR shandle1,
2192 ESYS_TR shandle2,
2193 ESYS_TR shandle3,
2194 const TPM2B_OPERAND *operandB,
2195 UINT16 offset,
2196 TPM2_EO operation);
2197
2198TSS2_RC
2200 ESYS_TR policySession,
2201 ESYS_TR shandle1,
2202 ESYS_TR shandle2,
2203 ESYS_TR shandle3,
2204 const TPM2B_OPERAND *operandB,
2205 UINT16 offset,
2206 TPM2_EO operation);
2207
2208TSS2_RC
2210
2211/* Table 133 - TPM2_PolicyCommandCode Command */
2212
2213TSS2_RC
2215 ESYS_TR policySession,
2216 ESYS_TR shandle1,
2217 ESYS_TR shandle2,
2218 ESYS_TR shandle3,
2219 TPM2_CC code);
2220
2221TSS2_RC
2223 ESYS_TR policySession,
2224 ESYS_TR shandle1,
2225 ESYS_TR shandle2,
2226 ESYS_TR shandle3,
2227 TPM2_CC code);
2228
2229TSS2_RC
2231
2232/* Table 135 - TPM2_PolicyPhysicalPresence Command */
2233
2234TSS2_RC
2236 ESYS_TR policySession,
2237 ESYS_TR shandle1,
2238 ESYS_TR shandle2,
2239 ESYS_TR shandle3);
2240
2241TSS2_RC
2243 ESYS_TR policySession,
2244 ESYS_TR shandle1,
2245 ESYS_TR shandle2,
2246 ESYS_TR shandle3);
2247
2248TSS2_RC
2250
2251/* Table 137 - TPM2_PolicyCpHash Command */
2252
2253TSS2_RC
2254Esys_PolicyCpHash(ESYS_CONTEXT *esysContext,
2255 ESYS_TR policySession,
2256 ESYS_TR shandle1,
2257 ESYS_TR shandle2,
2258 ESYS_TR shandle3,
2259 const TPM2B_DIGEST *cpHashA);
2260
2261TSS2_RC
2263 ESYS_TR policySession,
2264 ESYS_TR shandle1,
2265 ESYS_TR shandle2,
2266 ESYS_TR shandle3,
2267 const TPM2B_DIGEST *cpHashA);
2268
2269TSS2_RC
2271
2272/* Table 139 - TPM2_PolicyNameHash Command */
2273
2274TSS2_RC
2276 ESYS_TR policySession,
2277 ESYS_TR shandle1,
2278 ESYS_TR shandle2,
2279 ESYS_TR shandle3,
2280 const TPM2B_DIGEST *nameHash);
2281
2282TSS2_RC
2284 ESYS_TR policySession,
2285 ESYS_TR shandle1,
2286 ESYS_TR shandle2,
2287 ESYS_TR shandle3,
2288 const TPM2B_DIGEST *nameHash);
2289
2290TSS2_RC
2292
2293/* Table 141 - TPM2_PolicyDuplicationSelect Command */
2294
2295TSS2_RC
2297 ESYS_TR policySession,
2298 ESYS_TR shandle1,
2299 ESYS_TR shandle2,
2300 ESYS_TR shandle3,
2301 const TPM2B_NAME *objectName,
2302 const TPM2B_NAME *newParentName,
2303 TPMI_YES_NO includeObject);
2304
2305TSS2_RC
2307 ESYS_TR policySession,
2308 ESYS_TR shandle1,
2309 ESYS_TR shandle2,
2310 ESYS_TR shandle3,
2311 const TPM2B_NAME *objectName,
2312 const TPM2B_NAME *newParentName,
2313 TPMI_YES_NO includeObject);
2314
2315TSS2_RC
2317
2318/* Table 143 - TPM2_PolicyAuthorize Command */
2319
2320TSS2_RC
2322 ESYS_TR policySession,
2323 ESYS_TR shandle1,
2324 ESYS_TR shandle2,
2325 ESYS_TR shandle3,
2326 const TPM2B_DIGEST *approvedPolicy,
2327 const TPM2B_NONCE *policyRef,
2328 const TPM2B_NAME *keySign,
2329 const TPMT_TK_VERIFIED *checkTicket);
2330
2331TSS2_RC
2333 ESYS_TR policySession,
2334 ESYS_TR shandle1,
2335 ESYS_TR shandle2,
2336 ESYS_TR shandle3,
2337 const TPM2B_DIGEST *approvedPolicy,
2338 const TPM2B_NONCE *policyRef,
2339 const TPM2B_NAME *keySign,
2340 const TPMT_TK_VERIFIED *checkTicket);
2341
2342TSS2_RC
2344
2345/* Table 145 - TPM2_PolicyAuthValue Command */
2346
2347TSS2_RC
2349 ESYS_TR policySession,
2350 ESYS_TR shandle1,
2351 ESYS_TR shandle2,
2352 ESYS_TR shandle3);
2353
2354TSS2_RC
2356 ESYS_TR policySession,
2357 ESYS_TR shandle1,
2358 ESYS_TR shandle2,
2359 ESYS_TR shandle3);
2360
2361TSS2_RC
2363
2364/* Table 147 - TPM2_PolicyPassword Command */
2365
2366TSS2_RC
2368 ESYS_TR policySession,
2369 ESYS_TR shandle1,
2370 ESYS_TR shandle2,
2371 ESYS_TR shandle3);
2372
2373TSS2_RC
2375 ESYS_TR policySession,
2376 ESYS_TR shandle1,
2377 ESYS_TR shandle2,
2378 ESYS_TR shandle3);
2379
2380TSS2_RC
2382
2383/* Table 149 - TPM2_PolicyGetDigest Command */
2384
2385TSS2_RC
2387 ESYS_TR policySession,
2388 ESYS_TR shandle1,
2389 ESYS_TR shandle2,
2390 ESYS_TR shandle3,
2391 TPM2B_DIGEST **policyDigest);
2392
2393TSS2_RC
2395 ESYS_TR policySession,
2396 ESYS_TR shandle1,
2397 ESYS_TR shandle2,
2398 ESYS_TR shandle3);
2399
2400TSS2_RC
2401Esys_PolicyGetDigest_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **policyDigest);
2402
2403/* Table 151 - TPM2_PolicyNvWritten Command */
2404
2405TSS2_RC
2407 ESYS_TR policySession,
2408 ESYS_TR shandle1,
2409 ESYS_TR shandle2,
2410 ESYS_TR shandle3,
2411 TPMI_YES_NO writtenSet);
2412
2413TSS2_RC
2415 ESYS_TR policySession,
2416 ESYS_TR shandle1,
2417 ESYS_TR shandle2,
2418 ESYS_TR shandle3,
2419 TPMI_YES_NO writtenSet);
2420
2421TSS2_RC
2423
2424/* Table 153 - TPM2_PolicyTemplate Command */
2425
2426TSS2_RC
2427Esys_PolicyTemplate(ESYS_CONTEXT *esysContext,
2428 ESYS_TR policySession,
2429 ESYS_TR shandle1,
2430 ESYS_TR shandle2,
2431 ESYS_TR shandle3,
2432 const TPM2B_DIGEST *templateHash);
2433
2434TSS2_RC
2435Esys_PolicyTemplate_Async(ESYS_CONTEXT *esysContext,
2436 ESYS_TR policySession,
2437 ESYS_TR shandle1,
2438 ESYS_TR shandle2,
2439 ESYS_TR shandle3,
2440 const TPM2B_DIGEST *templateHash);
2441
2442TSS2_RC
2443Esys_PolicyTemplate_Finish(ESYS_CONTEXT *esysContext);
2444
2445/* Table 155 - TPM2_PolicyAuthorizeNV Command */
2446
2447TSS2_RC
2448Esys_PolicyAuthorizeNV(ESYS_CONTEXT *esysContext,
2449 ESYS_TR authHandle,
2450 ESYS_TR nvIndex,
2451 ESYS_TR policySession,
2452 ESYS_TR shandle1,
2453 ESYS_TR shandle2,
2454 ESYS_TR shandle3);
2455
2456TSS2_RC
2457Esys_PolicyAuthorizeNV_Async(ESYS_CONTEXT *esysContext,
2458 ESYS_TR authHandle,
2459 ESYS_TR nvIndex,
2460 ESYS_TR policySession,
2461 ESYS_TR shandle1,
2462 ESYS_TR shandle2,
2463 ESYS_TR shandle3);
2464
2465TSS2_RC
2466Esys_PolicyAuthorizeNV_Finish(ESYS_CONTEXT *esysContext);
2467
2468/* Table 157 - TPM2_CreatePrimary Command */
2469
2470TSS2_RC
2471Esys_CreatePrimary(ESYS_CONTEXT *esysContext,
2472 ESYS_TR primaryHandle,
2473 ESYS_TR shandle1,
2474 ESYS_TR shandle2,
2475 ESYS_TR shandle3,
2476 const TPM2B_SENSITIVE_CREATE *inSensitive,
2477 const TPM2B_PUBLIC *inPublic,
2478 const TPM2B_DATA *outsideInfo,
2479 const TPML_PCR_SELECTION *creationPCR,
2480 ESYS_TR *objectHandle,
2481 TPM2B_PUBLIC **outPublic,
2482 TPM2B_CREATION_DATA **creationData,
2483 TPM2B_DIGEST **creationHash,
2484 TPMT_TK_CREATION **creationTicket);
2485
2486TSS2_RC
2488 ESYS_TR primaryHandle,
2489 ESYS_TR shandle1,
2490 ESYS_TR shandle2,
2491 ESYS_TR shandle3,
2492 const TPM2B_SENSITIVE_CREATE *inSensitive,
2493 const TPM2B_PUBLIC *inPublic,
2494 const TPM2B_DATA *outsideInfo,
2495 const TPML_PCR_SELECTION *creationPCR);
2496
2497TSS2_RC
2499 ESYS_TR *objectHandle,
2500 TPM2B_PUBLIC **outPublic,
2501 TPM2B_CREATION_DATA **creationData,
2502 TPM2B_DIGEST **creationHash,
2503 TPMT_TK_CREATION **creationTicket);
2504
2505/* Table 159 - TPM2_HierarchyControl Command */
2506
2507TSS2_RC
2508Esys_HierarchyControl(ESYS_CONTEXT *esysContext,
2509 ESYS_TR authHandle,
2510 ESYS_TR shandle1,
2511 ESYS_TR shandle2,
2512 ESYS_TR shandle3,
2513 ESYS_TR enable,
2514 TPMI_YES_NO state);
2515
2516TSS2_RC
2517Esys_HierarchyControl_Async(ESYS_CONTEXT *esysContext,
2518 ESYS_TR authHandle,
2519 ESYS_TR shandle1,
2520 ESYS_TR shandle2,
2521 ESYS_TR shandle3,
2522 ESYS_TR enable,
2523 TPMI_YES_NO state);
2524
2525TSS2_RC
2527
2528/* Table 161 - TPM2_SetPrimaryPolicy Command */
2529
2530TSS2_RC
2532 ESYS_TR authHandle,
2533 ESYS_TR shandle1,
2534 ESYS_TR shandle2,
2535 ESYS_TR shandle3,
2536 const TPM2B_DIGEST *authPolicy,
2537 TPMI_ALG_HASH hashAlg);
2538
2539TSS2_RC
2541 ESYS_TR authHandle,
2542 ESYS_TR shandle1,
2543 ESYS_TR shandle2,
2544 ESYS_TR shandle3,
2545 const TPM2B_DIGEST *authPolicy,
2546 TPMI_ALG_HASH hashAlg);
2547
2548TSS2_RC
2550
2551/* Table 163 - TPM2_ChangePPS Command */
2552
2553TSS2_RC
2554Esys_ChangePPS(ESYS_CONTEXT *esysContext,
2555 ESYS_TR authHandle,
2556 ESYS_TR shandle1,
2557 ESYS_TR shandle2,
2558 ESYS_TR shandle3);
2559
2560TSS2_RC
2562 ESYS_TR authHandle,
2563 ESYS_TR shandle1,
2564 ESYS_TR shandle2,
2565 ESYS_TR shandle3);
2566
2567TSS2_RC
2569
2570/* Table 165 - TPM2_ChangeEPS Command */
2571
2572TSS2_RC
2573Esys_ChangeEPS(ESYS_CONTEXT *esysContext,
2574 ESYS_TR authHandle,
2575 ESYS_TR shandle1,
2576 ESYS_TR shandle2,
2577 ESYS_TR shandle3);
2578
2579TSS2_RC
2581 ESYS_TR authHandle,
2582 ESYS_TR shandle1,
2583 ESYS_TR shandle2,
2584 ESYS_TR shandle3);
2585
2586TSS2_RC
2588
2589/* Table 167 - TPM2_Clear Command */
2590
2591TSS2_RC
2592Esys_Clear(ESYS_CONTEXT *esysContext,
2593 ESYS_TR authHandle,
2594 ESYS_TR shandle1,
2595 ESYS_TR shandle2,
2596 ESYS_TR shandle3);
2597
2598TSS2_RC
2599Esys_Clear_Async(ESYS_CONTEXT *esysContext,
2600 ESYS_TR authHandle,
2601 ESYS_TR shandle1,
2602 ESYS_TR shandle2,
2603 ESYS_TR shandle3);
2604
2605TSS2_RC
2606Esys_Clear_Finish(ESYS_CONTEXT *esysContext);
2607
2608/* Table 169 - TPM2_ClearControl Command */
2609
2610TSS2_RC
2611Esys_ClearControl(ESYS_CONTEXT *esysContext,
2612 ESYS_TR auth,
2613 ESYS_TR shandle1,
2614 ESYS_TR shandle2,
2615 ESYS_TR shandle3,
2616 TPMI_YES_NO disable);
2617
2618TSS2_RC
2620 ESYS_TR auth,
2621 ESYS_TR shandle1,
2622 ESYS_TR shandle2,
2623 ESYS_TR shandle3,
2624 TPMI_YES_NO disable);
2625
2626TSS2_RC
2628
2629/* Table 171 - TPM2_HierarchyChangeAuth Command */
2630
2631TSS2_RC
2633 ESYS_TR authHandle,
2634 ESYS_TR shandle1,
2635 ESYS_TR shandle2,
2636 ESYS_TR shandle3,
2637 const TPM2B_AUTH *newAuth);
2638
2639TSS2_RC
2641 ESYS_TR authHandle,
2642 ESYS_TR shandle1,
2643 ESYS_TR shandle2,
2644 ESYS_TR shandle3,
2645 const TPM2B_AUTH *newAuth);
2646
2647TSS2_RC
2649
2650/* Table 173 - TPM2_DictionaryAttackLockReset Command */
2651
2652TSS2_RC
2654 ESYS_TR lockHandle,
2655 ESYS_TR shandle1,
2656 ESYS_TR shandle2,
2657 ESYS_TR shandle3);
2658
2659TSS2_RC
2661 ESYS_TR lockHandle,
2662 ESYS_TR shandle1,
2663 ESYS_TR shandle2,
2664 ESYS_TR shandle3);
2665
2666TSS2_RC
2668
2669/* Table 175 - TPM2_DictionaryAttackParameters Command */
2670
2671TSS2_RC
2673 ESYS_TR lockHandle,
2674 ESYS_TR shandle1,
2675 ESYS_TR shandle2,
2676 ESYS_TR shandle3,
2677 UINT32 newMaxTries,
2678 UINT32 newRecoveryTime,
2679 UINT32 lockoutRecovery);
2680
2681TSS2_RC
2683 ESYS_TR lockHandle,
2684 ESYS_TR shandle1,
2685 ESYS_TR shandle2,
2686 ESYS_TR shandle3,
2687 UINT32 newMaxTries,
2688 UINT32 newRecoveryTime,
2689 UINT32 lockoutRecovery);
2690
2691TSS2_RC
2693
2694/* Table 177 - TPM2_PP_Commands Command */
2695
2696TSS2_RC
2697Esys_PP_Commands(ESYS_CONTEXT *esysContext,
2698 ESYS_TR auth,
2699 ESYS_TR shandle1,
2700 ESYS_TR shandle2,
2701 ESYS_TR shandle3,
2702 const TPML_CC *setList,
2703 const TPML_CC *clearList);
2704
2705TSS2_RC
2707 ESYS_TR auth,
2708 ESYS_TR shandle1,
2709 ESYS_TR shandle2,
2710 ESYS_TR shandle3,
2711 const TPML_CC *setList,
2712 const TPML_CC *clearList);
2713
2714TSS2_RC
2716
2717/* Table 179 - TPM2_SetAlgorithmSet Command */
2718
2719TSS2_RC
2721 ESYS_TR authHandle,
2722 ESYS_TR shandle1,
2723 ESYS_TR shandle2,
2724 ESYS_TR shandle3,
2725 UINT32 algorithmSet);
2726
2727TSS2_RC
2729 ESYS_TR authHandle,
2730 ESYS_TR shandle1,
2731 ESYS_TR shandle2,
2732 ESYS_TR shandle3,
2733 UINT32 algorithmSet);
2734
2735TSS2_RC
2737
2738/* Table 181 - TPM2_FieldUpgradeStart Command */
2739
2740TSS2_RC
2741Esys_FieldUpgradeStart(ESYS_CONTEXT *esysContext,
2742 ESYS_TR authorization,
2743 ESYS_TR keyHandle,
2744 ESYS_TR shandle1,
2745 ESYS_TR shandle2,
2746 ESYS_TR shandle3,
2747 const TPM2B_DIGEST *fuDigest,
2748 const TPMT_SIGNATURE *manifestSignature);
2749
2750TSS2_RC
2751Esys_FieldUpgradeStart_Async(ESYS_CONTEXT *esysContext,
2752 ESYS_TR authorization,
2753 ESYS_TR keyHandle,
2754 ESYS_TR shandle1,
2755 ESYS_TR shandle2,
2756 ESYS_TR shandle3,
2757 const TPM2B_DIGEST *fuDigest,
2758 const TPMT_SIGNATURE *manifestSignature);
2759
2760TSS2_RC
2761Esys_FieldUpgradeStart_Finish(ESYS_CONTEXT *esysContext);
2762
2763/* Table 183 - TPM2_FieldUpgradeData Command */
2764
2765TSS2_RC
2766Esys_FieldUpgradeData(ESYS_CONTEXT *esysContext,
2767 ESYS_TR shandle1,
2768 ESYS_TR shandle2,
2769 ESYS_TR shandle3,
2770 const TPM2B_MAX_BUFFER *fuData,
2771 TPMT_HA **nextDigest,
2772 TPMT_HA **firstDigest);
2773
2774TSS2_RC
2775Esys_FieldUpgradeData_Async(ESYS_CONTEXT *esysContext,
2776 ESYS_TR shandle1,
2777 ESYS_TR shandle2,
2778 ESYS_TR shandle3,
2779 const TPM2B_MAX_BUFFER *fuData);
2780
2781TSS2_RC
2782Esys_FieldUpgradeData_Finish(ESYS_CONTEXT *esysContext,
2783 TPMT_HA **nextDigest,
2784 TPMT_HA **firstDigest);
2785
2786/* Table 185 - TPM2_FirmwareRead Command */
2787
2788TSS2_RC
2789Esys_FirmwareRead(ESYS_CONTEXT *esysContext,
2790 ESYS_TR shandle1,
2791 ESYS_TR shandle2,
2792 ESYS_TR shandle3,
2793 UINT32 sequenceNumber,
2794 TPM2B_MAX_BUFFER **fuData);
2795
2796TSS2_RC
2797Esys_FirmwareRead_Async(ESYS_CONTEXT *esysContext,
2798 ESYS_TR shandle1,
2799 ESYS_TR shandle2,
2800 ESYS_TR shandle3,
2801 UINT32 sequenceNumber);
2802
2803TSS2_RC
2804Esys_FirmwareRead_Finish(ESYS_CONTEXT *esysContext, TPM2B_MAX_BUFFER **fuData);
2805
2806/* Table 187 - TPM2_ContextSave Command */
2807
2808TSS2_RC
2809Esys_ContextSave(ESYS_CONTEXT *esysContext, ESYS_TR saveHandle, TPMS_CONTEXT **context);
2810
2811TSS2_RC
2812Esys_ContextSave_Async(ESYS_CONTEXT *esysContext, ESYS_TR saveHandle);
2813
2814TSS2_RC
2815Esys_ContextSave_Finish(ESYS_CONTEXT *esysContext, TPMS_CONTEXT **context);
2816
2817/* Table 189 - TPM2_ContextLoad Command */
2818
2819TSS2_RC
2820Esys_ContextLoad(ESYS_CONTEXT *esysContext, const TPMS_CONTEXT *context, ESYS_TR *loadedHandle);
2821
2822TSS2_RC
2823Esys_ContextLoad_Async(ESYS_CONTEXT *esysContext, const TPMS_CONTEXT *context);
2824
2825TSS2_RC
2826Esys_ContextLoad_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *loadedHandle);
2827
2828/* Table 191 - TPM2_FlushContext Command */
2829
2830TSS2_RC
2831Esys_FlushContext(ESYS_CONTEXT *esysContext, ESYS_TR flushHandle);
2832
2833TSS2_RC
2834Esys_FlushContext_Async(ESYS_CONTEXT *esysContext, ESYS_TR flushHandle);
2835
2836TSS2_RC
2838
2839/* Table 193 - TPM2_EvictControl Command */
2840
2841TSS2_RC
2842Esys_EvictControl(ESYS_CONTEXT *esysContext,
2843 ESYS_TR auth,
2844 ESYS_TR objectHandle,
2845 ESYS_TR shandle1,
2846 ESYS_TR shandle2,
2847 ESYS_TR shandle3,
2848 TPMI_DH_PERSISTENT persistentHandle,
2849 ESYS_TR *newObjectHandle);
2850
2851TSS2_RC
2853 ESYS_TR auth,
2854 ESYS_TR objectHandle,
2855 ESYS_TR shandle1,
2856 ESYS_TR shandle2,
2857 ESYS_TR shandle3,
2858 TPMI_DH_PERSISTENT persistentHandle);
2859
2860TSS2_RC
2861Esys_EvictControl_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *newObjectHandle);
2862
2863/* Table 195 - TPM2_ReadClock Command */
2864
2865TSS2_RC
2866Esys_ReadClock(ESYS_CONTEXT *esysContext,
2867 ESYS_TR shandle1,
2868 ESYS_TR shandle2,
2869 ESYS_TR shandle3,
2870 TPMS_TIME_INFO **currentTime);
2871
2872TSS2_RC
2874 ESYS_TR shandle1,
2875 ESYS_TR shandle2,
2876 ESYS_TR shandle3);
2877
2878TSS2_RC
2879Esys_ReadClock_Finish(ESYS_CONTEXT *esysContext, TPMS_TIME_INFO **currentTime);
2880
2881/* Table 197 - TPM2_ClockSet Command */
2882
2883TSS2_RC
2884Esys_ClockSet(ESYS_CONTEXT *esysContext,
2885 ESYS_TR auth,
2886 ESYS_TR shandle1,
2887 ESYS_TR shandle2,
2888 ESYS_TR shandle3,
2889 UINT64 newTime);
2890
2891TSS2_RC
2893 ESYS_TR auth,
2894 ESYS_TR shandle1,
2895 ESYS_TR shandle2,
2896 ESYS_TR shandle3,
2897 UINT64 newTime);
2898
2899TSS2_RC
2901
2902/* Table 199 - TPM2_ClockRateAdjust Command */
2903
2904TSS2_RC
2906 ESYS_TR auth,
2907 ESYS_TR shandle1,
2908 ESYS_TR shandle2,
2909 ESYS_TR shandle3,
2910 TPM2_CLOCK_ADJUST rateAdjust);
2911
2912TSS2_RC
2914 ESYS_TR auth,
2915 ESYS_TR shandle1,
2916 ESYS_TR shandle2,
2917 ESYS_TR shandle3,
2918 TPM2_CLOCK_ADJUST rateAdjust);
2919
2920TSS2_RC
2922
2923/* Table 201 - TPM2_GetCapability Command */
2924
2925TSS2_RC
2926Esys_GetCapability(ESYS_CONTEXT *esysContext,
2927 ESYS_TR shandle1,
2928 ESYS_TR shandle2,
2929 ESYS_TR shandle3,
2930 TPM2_CAP capability,
2931 UINT32 property,
2932 UINT32 propertyCount,
2933 TPMI_YES_NO *moreData,
2934 TPMS_CAPABILITY_DATA **capabilityData);
2935
2936TSS2_RC
2938 ESYS_TR shandle1,
2939 ESYS_TR shandle2,
2940 ESYS_TR shandle3,
2941 TPM2_CAP capability,
2942 UINT32 property,
2943 UINT32 propertyCount);
2944
2945TSS2_RC
2947 TPMI_YES_NO *moreData,
2948 TPMS_CAPABILITY_DATA **capabilityData);
2949
2950/* Table 203 - TPM2_TestParms Command */
2951
2952TSS2_RC
2953Esys_TestParms(ESYS_CONTEXT *esysContext,
2954 ESYS_TR shandle1,
2955 ESYS_TR shandle2,
2956 ESYS_TR shandle3,
2957 const TPMT_PUBLIC_PARMS *parameters);
2958
2959TSS2_RC
2961 ESYS_TR shandle1,
2962 ESYS_TR shandle2,
2963 ESYS_TR shandle3,
2964 const TPMT_PUBLIC_PARMS *parameters);
2965
2966TSS2_RC
2968
2969/* Table 205 - TPM2_NV_DefineSpace Command */
2970
2971TSS2_RC
2973 ESYS_TR authHandle,
2974 ESYS_TR shandle1,
2975 ESYS_TR shandle2,
2976 ESYS_TR shandle3,
2977 const TPM2B_AUTH *auth,
2978 const TPM2B_NV_PUBLIC *publicInfo,
2979 ESYS_TR *nvHandle);
2980
2981TSS2_RC
2983 ESYS_TR authHandle,
2984 ESYS_TR shandle1,
2985 ESYS_TR shandle2,
2986 ESYS_TR shandle3,
2987 const TPM2B_AUTH *auth,
2988 const TPM2B_NV_PUBLIC *publicInfo);
2989
2990TSS2_RC
2991Esys_NV_DefineSpace_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *nvHandle);
2992
2993/* Table 207 - TPM2_NV_UndefineSpace Command */
2994
2995TSS2_RC
2997 ESYS_TR authHandle,
2998 ESYS_TR nvIndex,
2999 ESYS_TR shandle1,
3000 ESYS_TR shandle2,
3001 ESYS_TR shandle3);
3002
3003TSS2_RC
3005 ESYS_TR authHandle,
3006 ESYS_TR nvIndex,
3007 ESYS_TR shandle1,
3008 ESYS_TR shandle2,
3009 ESYS_TR shandle3);
3010
3011TSS2_RC
3013
3014/* Table 209 - TPM2_NV_UndefineSpaceSpecial Command */
3015
3016TSS2_RC
3018 ESYS_TR nvIndex,
3019 ESYS_TR platform,
3020 ESYS_TR shandle1,
3021 ESYS_TR shandle2,
3022 ESYS_TR shandle3);
3023
3024TSS2_RC
3026 ESYS_TR nvIndex,
3027 ESYS_TR platform,
3028 ESYS_TR shandle1,
3029 ESYS_TR shandle2,
3030 ESYS_TR shandle3);
3031
3032TSS2_RC
3034
3035/* Table 211 - TPM2_NV_ReadPublic Command */
3036
3037TSS2_RC
3038Esys_NV_ReadPublic(ESYS_CONTEXT *esysContext,
3039 ESYS_TR nvIndex,
3040 ESYS_TR shandle1,
3041 ESYS_TR shandle2,
3042 ESYS_TR shandle3,
3043 TPM2B_NV_PUBLIC **nvPublic,
3044 TPM2B_NAME **nvName);
3045
3046TSS2_RC
3048 ESYS_TR nvIndex,
3049 ESYS_TR shandle1,
3050 ESYS_TR shandle2,
3051 ESYS_TR shandle3);
3052
3053TSS2_RC
3055 TPM2B_NV_PUBLIC **nvPublic,
3056 TPM2B_NAME **nvName);
3057
3058/* Table 213 - TPM2_NV_Write Command */
3059
3060TSS2_RC
3061Esys_NV_Write(ESYS_CONTEXT *esysContext,
3062 ESYS_TR authHandle,
3063 ESYS_TR nvIndex,
3064 ESYS_TR shandle1,
3065 ESYS_TR shandle2,
3066 ESYS_TR shandle3,
3067 const TPM2B_MAX_NV_BUFFER *data,
3068 UINT16 offset);
3069
3070TSS2_RC
3072 ESYS_TR authHandle,
3073 ESYS_TR nvIndex,
3074 ESYS_TR shandle1,
3075 ESYS_TR shandle2,
3076 ESYS_TR shandle3,
3077 const TPM2B_MAX_NV_BUFFER *data,
3078 UINT16 offset);
3079
3080TSS2_RC
3082
3083/* Table 215 - TPM2_NV_Increment Command */
3084
3085TSS2_RC
3086Esys_NV_Increment(ESYS_CONTEXT *esysContext,
3087 ESYS_TR authHandle,
3088 ESYS_TR nvIndex,
3089 ESYS_TR shandle1,
3090 ESYS_TR shandle2,
3091 ESYS_TR shandle3);
3092
3093TSS2_RC
3095 ESYS_TR authHandle,
3096 ESYS_TR nvIndex,
3097 ESYS_TR shandle1,
3098 ESYS_TR shandle2,
3099 ESYS_TR shandle3);
3100
3101TSS2_RC
3103
3104/* Table 217 - TPM2_NV_Extend Command */
3105
3106TSS2_RC
3107Esys_NV_Extend(ESYS_CONTEXT *esysContext,
3108 ESYS_TR authHandle,
3109 ESYS_TR nvIndex,
3110 ESYS_TR shandle1,
3111 ESYS_TR shandle2,
3112 ESYS_TR shandle3,
3113 const TPM2B_MAX_NV_BUFFER *data);
3114
3115TSS2_RC
3117 ESYS_TR authHandle,
3118 ESYS_TR nvIndex,
3119 ESYS_TR shandle1,
3120 ESYS_TR shandle2,
3121 ESYS_TR shandle3,
3122 const TPM2B_MAX_NV_BUFFER *data);
3123
3124TSS2_RC
3126
3127/* Table 219 - TPM2_NV_SetBits Command */
3128
3129TSS2_RC
3130Esys_NV_SetBits(ESYS_CONTEXT *esysContext,
3131 ESYS_TR authHandle,
3132 ESYS_TR nvIndex,
3133 ESYS_TR shandle1,
3134 ESYS_TR shandle2,
3135 ESYS_TR shandle3,
3136 UINT64 bits);
3137
3138TSS2_RC
3140 ESYS_TR authHandle,
3141 ESYS_TR nvIndex,
3142 ESYS_TR shandle1,
3143 ESYS_TR shandle2,
3144 ESYS_TR shandle3,
3145 UINT64 bits);
3146
3147TSS2_RC
3149
3150/* Table 221 - TPM2_NV_WriteLock Command */
3151
3152TSS2_RC
3153Esys_NV_WriteLock(ESYS_CONTEXT *esysContext,
3154 ESYS_TR authHandle,
3155 ESYS_TR nvIndex,
3156 ESYS_TR shandle1,
3157 ESYS_TR shandle2,
3158 ESYS_TR shandle3);
3159
3160TSS2_RC
3162 ESYS_TR authHandle,
3163 ESYS_TR nvIndex,
3164 ESYS_TR shandle1,
3165 ESYS_TR shandle2,
3166 ESYS_TR shandle3);
3167
3168TSS2_RC
3170
3171/* Table 223 - TPM2_NV_GlobalWriteLock Command */
3172
3173TSS2_RC
3175 ESYS_TR authHandle,
3176 ESYS_TR shandle1,
3177 ESYS_TR shandle2,
3178 ESYS_TR shandle3);
3179
3180TSS2_RC
3182 ESYS_TR authHandle,
3183 ESYS_TR shandle1,
3184 ESYS_TR shandle2,
3185 ESYS_TR shandle3);
3186
3187TSS2_RC
3189
3190/* Table 225 - TPM2_NV_Read Command */
3191
3192TSS2_RC
3193Esys_NV_Read(ESYS_CONTEXT *esysContext,
3194 ESYS_TR authHandle,
3195 ESYS_TR nvIndex,
3196 ESYS_TR shandle1,
3197 ESYS_TR shandle2,
3198 ESYS_TR shandle3,
3199 UINT16 size,
3200 UINT16 offset,
3201 TPM2B_MAX_NV_BUFFER **data);
3202
3203TSS2_RC
3204Esys_NV_Read_Async(ESYS_CONTEXT *esysContext,
3205 ESYS_TR authHandle,
3206 ESYS_TR nvIndex,
3207 ESYS_TR shandle1,
3208 ESYS_TR shandle2,
3209 ESYS_TR shandle3,
3210 UINT16 size,
3211 UINT16 offset);
3212
3213TSS2_RC
3214Esys_NV_Read_Finish(ESYS_CONTEXT *esysContext, TPM2B_MAX_NV_BUFFER **data);
3215
3216/* Table 227 - TPM2_NV_ReadLock Command */
3217
3218TSS2_RC
3219Esys_NV_ReadLock(ESYS_CONTEXT *esysContext,
3220 ESYS_TR authHandle,
3221 ESYS_TR nvIndex,
3222 ESYS_TR shandle1,
3223 ESYS_TR shandle2,
3224 ESYS_TR shandle3);
3225
3226TSS2_RC
3228 ESYS_TR authHandle,
3229 ESYS_TR nvIndex,
3230 ESYS_TR shandle1,
3231 ESYS_TR shandle2,
3232 ESYS_TR shandle3);
3233
3234TSS2_RC
3236
3237/* Table 229 - TPM2_NV_ChangeAuth Command */
3238
3239TSS2_RC
3240Esys_NV_ChangeAuth(ESYS_CONTEXT *esysContext,
3241 ESYS_TR nvIndex,
3242 ESYS_TR shandle1,
3243 ESYS_TR shandle2,
3244 ESYS_TR shandle3,
3245 const TPM2B_AUTH *newAuth);
3246
3247TSS2_RC
3249 ESYS_TR nvIndex,
3250 ESYS_TR shandle1,
3251 ESYS_TR shandle2,
3252 ESYS_TR shandle3,
3253 const TPM2B_AUTH *newAuth);
3254
3255TSS2_RC
3257
3258/* Table 231 - TPM2_NV_Certify Command */
3259
3260TSS2_RC
3261Esys_NV_Certify(ESYS_CONTEXT *esysContext,
3262 ESYS_TR signHandle,
3263 ESYS_TR authHandle,
3264 ESYS_TR nvIndex,
3265 ESYS_TR shandle1,
3266 ESYS_TR shandle2,
3267 ESYS_TR shandle3,
3268 const TPM2B_DATA *qualifyingData,
3269 const TPMT_SIG_SCHEME *inScheme,
3270 UINT16 size,
3271 UINT16 offset,
3272 TPM2B_ATTEST **certifyInfo,
3273 TPMT_SIGNATURE **signature);
3274
3275TSS2_RC
3277 ESYS_TR signHandle,
3278 ESYS_TR authHandle,
3279 ESYS_TR nvIndex,
3280 ESYS_TR shandle1,
3281 ESYS_TR shandle2,
3282 ESYS_TR shandle3,
3283 const TPM2B_DATA *qualifyingData,
3284 const TPMT_SIG_SCHEME *inScheme,
3285 UINT16 size,
3286 UINT16 offset);
3287
3288TSS2_RC
3290 TPM2B_ATTEST **certifyInfo,
3291 TPMT_SIGNATURE **signature);
3292
3293/* Table 233 - TPM2_Vendor_TCG_Test Command */
3294
3295TSS2_RC
3297 ESYS_TR shandle1,
3298 ESYS_TR shandle2,
3299 ESYS_TR shandle3,
3300 const TPM2B_DATA *inputData,
3301 TPM2B_DATA **outputData);
3302
3303TSS2_RC
3305 ESYS_TR shandle1,
3306 ESYS_TR shandle2,
3307 ESYS_TR shandle3,
3308 const TPM2B_DATA *inputData);
3309
3310TSS2_RC
3311Esys_Vendor_TCG_Test_Finish(ESYS_CONTEXT *esysContext, TPM2B_DATA **outputData);
3312
3313/*
3314 * TPM 2.0 ESAPI Helper Functions
3315 */
3316void Esys_Free(void *ptr);
3317
3318TSS2_RC
3319Esys_GetSysContext(ESYS_CONTEXT *esys_context, TSS2_SYS_CONTEXT **sys_context);
3320
3321TSS2_RC
3323
3324TSS2_RC
3325Esys_GetCpHash(ESYS_CONTEXT *esysContext,
3326 TPMI_ALG_HASH hashAlg,
3327 uint8_t **cpHash,
3328 size_t *cpHash_size);
3329
3330TSS2_RC
3331Esys_GetRpHash(ESYS_CONTEXT *esysContext,
3332 TPMI_ALG_HASH hashAlg,
3333 uint8_t **cpHash,
3334 size_t *cpHash_size);
3335
3336/* TPM2_ECC_Encrypt Command */
3337
3338TSS2_RC
3339Esys_ECC_Encrypt(ESYS_CONTEXT *esysContext,
3340 ESYS_TR keyHandle,
3341 ESYS_TR shandle1,
3342 ESYS_TR shandle2,
3343 ESYS_TR shandle3,
3344 const TPM2B_MAX_BUFFER *plainText,
3345 const TPMT_KDF_SCHEME *inScheme,
3346 TPM2B_ECC_POINT **c1,
3347 TPM2B_MAX_BUFFER **c2,
3348 TPM2B_DIGEST **c3);
3349
3350TSS2_RC
3352 ESYS_TR keyHandle,
3353 ESYS_TR shandle1,
3354 ESYS_TR shandle2,
3355 ESYS_TR shandle3,
3356 const TPM2B_MAX_BUFFER *plainText,
3357 const TPMT_KDF_SCHEME *inScheme);
3358
3359TSS2_RC
3361 TPM2B_ECC_POINT **c1,
3362 TPM2B_MAX_BUFFER **c2,
3363 TPM2B_DIGEST **c3);
3364
3365/* TPM2_ECC_Decrypt Command */
3366
3367TSS2_RC
3368Esys_ECC_Decrypt(ESYS_CONTEXT *esysContext,
3369 ESYS_TR keyHandle,
3370 ESYS_TR shandle1,
3371 ESYS_TR shandle2,
3372 ESYS_TR shandle3,
3373 const TPM2B_ECC_POINT *c1,
3374 const TPM2B_MAX_BUFFER *c2,
3375 const TPM2B_DIGEST *c3,
3376 const TPMT_KDF_SCHEME *inScheme,
3377 TPM2B_MAX_BUFFER **plainText);
3378
3379TSS2_RC
3381 ESYS_TR keyHandle,
3382 ESYS_TR shandle1,
3383 ESYS_TR shandle2,
3384 ESYS_TR shandle3,
3385 const TPM2B_ECC_POINT *c1,
3386 const TPM2B_MAX_BUFFER *c2,
3387 const TPM2B_DIGEST *c3,
3388 const TPMT_KDF_SCHEME *inScheme);
3389
3390TSS2_RC
3391Esys_ECC_Decrypt_Finish(ESYS_CONTEXT *esysContext, TPM2B_MAX_BUFFER **plainText);
3392
3393TSS2_RC
3394Esys_Abort(ESYS_CONTEXT *esysContext);
3395
3396#ifdef __cplusplus
3397}
3398#endif
3399
3400#endif /* TSS2_ESYS_H */
TSS2_RC Esys_SetCryptoCallbacks(ESYS_CONTEXT *esysContext, ESYS_CRYPTO_CALLBACKS *callbacks)
Definition esys_context.c:265
TSS2_RC Esys_GetSysContext(ESYS_CONTEXT *esys_context, TSS2_SYS_CONTEXT **sys_context)
Definition esys_context.c:235
TSS2_RC Esys_GetPollHandles(ESYS_CONTEXT *esys_context, TSS2_TCTI_POLL_HANDLE **handles, size_t *count)
Definition esys_context.c:186
TSS2_RC Esys_Initialize(ESYS_CONTEXT **esys_context, TSS2_TCTI_CONTEXT *tcti, TSS2_ABI_VERSION *abiVersion)
Definition esys_context.c:48
TSS2_RC Esys_SetTimeout(ESYS_CONTEXT *esys_context, int32_t timeout)
Definition esys_context.c:220
TSS2_RC Esys_GetTcti(ESYS_CONTEXT *esys_context, TSS2_TCTI_CONTEXT **tcti)
Definition esys_context.c:166
uint32_t ESYS_TR
Definition tss2_esys.h:16
TSS2_RC Esys_TR_Deserialize(ESYS_CONTEXT *esys_context, uint8_t const *buffer, size_t buffer_size, ESYS_TR *esys_handle)
Definition esys_tr.c:88
TSS2_RC Esys_TR_Close(ESYS_CONTEXT *esys_context, ESYS_TR *rsrc_handle)
Definition esys_tr.c:421
TSS2_RC Esys_TRSess_GetAttributes(ESYS_CONTEXT *esysContext, ESYS_TR session, TPMA_SESSION *flags)
Definition esys_tr.c:574
TSS2_RC Esys_TR_FromTPMPublic_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *object)
Definition esys_tr.c:220
TSS2_RC Esys_TR_FromTPMPublic_Async(ESYS_CONTEXT *esysContext, TPM2_HANDLE tpm_handle, ESYS_TR optionalSession1, ESYS_TR optionalSession2, ESYS_TR optionalSession3)
Definition esys_tr.c:134
TSS2_RC Esys_TR_SetAuth(ESYS_CONTEXT *esysContext, ESYS_TR handle, TPM2B_AUTH const *authValue)
Definition esys_tr.c:461
TSS2_RC Esys_TR_Serialize(ESYS_CONTEXT *esys_context, ESYS_TR object, uint8_t **buffer, size_t *buffer_size)
Definition esys_tr.c:47
TSS2_RC Esys_TRSess_SetAttributes(ESYS_CONTEXT *esysContext, ESYS_TR session, TPMA_SESSION flags, TPMA_SESSION mask)
Definition esys_tr.c:603
TSS2_RC Esys_TR_GetName(ESYS_CONTEXT *esysContext, ESYS_TR handle, TPM2B_NAME **name)
Definition esys_tr.c:517
TSS2_RC Esys_TR_FromTPMPublic(ESYS_CONTEXT *esysContext, TPM2_HANDLE tpm_handle, ESYS_TR optionalSession1, ESYS_TR optionalSession2, ESYS_TR optionalSession3, ESYS_TR *object)
Definition esys_tr.c:372
TSS2_RC Esys_ActivateCredential_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **certInfo)
Definition Esys_ActivateCredential.c:253
TSS2_RC Esys_ActivateCredential_Async(ESYS_CONTEXT *esysContext, ESYS_TR activateHandle, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_ID_OBJECT *credentialBlob, const TPM2B_ENCRYPTED_SECRET *secret)
Definition Esys_ActivateCredential.c:144
TSS2_RC Esys_ActivateCredential(ESYS_CONTEXT *esysContext, ESYS_TR activateHandle, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_ID_OBJECT *credentialBlob, const TPM2B_ENCRYPTED_SECRET *secret, TPM2B_DIGEST **certInfo)
Definition Esys_ActivateCredential.c:69
TSS2_RC Esys_CertifyCreation(ESYS_CONTEXT *esysContext, ESYS_TR signHandle, ESYS_TR objectHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *qualifyingData, const TPM2B_DIGEST *creationHash, const TPMT_SIG_SCHEME *inScheme, const TPMT_TK_CREATION *creationTicket, TPM2B_ATTEST **certifyInfo, TPMT_SIGNATURE **signature)
Definition Esys_CertifyCreation.c:74
TSS2_RC Esys_CertifyCreation_Finish(ESYS_CONTEXT *esysContext, TPM2B_ATTEST **certifyInfo, TPMT_SIGNATURE **signature)
Definition Esys_CertifyCreation.c:266
TSS2_RC Esys_CertifyCreation_Async(ESYS_CONTEXT *esysContext, ESYS_TR signHandle, ESYS_TR objectHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *qualifyingData, const TPM2B_DIGEST *creationHash, const TPMT_SIG_SCHEME *inScheme, const TPMT_TK_CREATION *creationTicket)
Definition Esys_CertifyCreation.c:156
TSS2_RC Esys_Certify(ESYS_CONTEXT *esysContext, ESYS_TR objectHandle, ESYS_TR signHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *qualifyingData, const TPMT_SIG_SCHEME *inScheme, TPM2B_ATTEST **certifyInfo, TPMT_SIGNATURE **signature)
Definition Esys_Certify.c:71
TSS2_RC Esys_Certify_Async(ESYS_CONTEXT *esysContext, ESYS_TR objectHandle, ESYS_TR signHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *qualifyingData, const TPMT_SIG_SCHEME *inScheme)
Definition Esys_Certify.c:146
TSS2_RC Esys_Certify_Finish(ESYS_CONTEXT *esysContext, TPM2B_ATTEST **certifyInfo, TPMT_SIGNATURE **signature)
Definition Esys_Certify.c:258
TSS2_RC Esys_ChangeEPS(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_ChangeEPS.c:67
TSS2_RC Esys_ChangeEPS_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_ChangeEPS.c:229
TSS2_RC Esys_ChangeEPS_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_ChangeEPS.c:137
TSS2_RC Esys_ChangePPS(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_ChangePPS.c:67
TSS2_RC Esys_ChangePPS_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_ChangePPS.c:137
TSS2_RC Esys_ChangePPS_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_ChangePPS.c:229
TSS2_RC Esys_Clear(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_Clear.c:67
TSS2_RC Esys_Clear_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_Clear.c:234
TSS2_RC Esys_ClearControl(ESYS_CONTEXT *esysContext, ESYS_TR auth, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_YES_NO disable)
Definition Esys_ClearControl.c:69
TSS2_RC Esys_ClearControl_Async(ESYS_CONTEXT *esysContext, ESYS_TR auth, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_YES_NO disable)
Definition Esys_ClearControl.c:142
TSS2_RC Esys_ClearControl_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_ClearControl.c:235
TSS2_RC Esys_Clear_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_Clear.c:137
TSS2_RC Esys_ClockRateAdjust_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_ClockRateAdjust.c:233
TSS2_RC Esys_ClockRateAdjust_Async(ESYS_CONTEXT *esysContext, ESYS_TR auth, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPM2_CLOCK_ADJUST rateAdjust)
Definition Esys_ClockRateAdjust.c:140
TSS2_RC Esys_ClockRateAdjust(ESYS_CONTEXT *esysContext, ESYS_TR auth, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPM2_CLOCK_ADJUST rateAdjust)
Definition Esys_ClockRateAdjust.c:68
TSS2_RC Esys_ClockSet_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_ClockSet.c:233
TSS2_RC Esys_ClockSet_Async(ESYS_CONTEXT *esysContext, ESYS_TR auth, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, UINT64 newTime)
Definition Esys_ClockSet.c:140
TSS2_RC Esys_ClockSet(ESYS_CONTEXT *esysContext, ESYS_TR auth, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, UINT64 newTime)
Definition Esys_ClockSet.c:68
TSS2_RC Esys_Commit(ESYS_CONTEXT *esysContext, ESYS_TR signHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_ECC_POINT *P1, const TPM2B_SENSITIVE_DATA *s2, const TPM2B_ECC_PARAMETER *y2, TPM2B_ECC_POINT **K, TPM2B_ECC_POINT **L, TPM2B_ECC_POINT **E, UINT16 *counter)
Definition Esys_Commit.c:72
TSS2_RC Esys_Commit_Finish(ESYS_CONTEXT *esysContext, TPM2B_ECC_POINT **K, TPM2B_ECC_POINT **L, TPM2B_ECC_POINT **E, UINT16 *counter)
Definition Esys_Commit.c:252
TSS2_RC Esys_Commit_Async(ESYS_CONTEXT *esysContext, ESYS_TR signHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_ECC_POINT *P1, const TPM2B_SENSITIVE_DATA *s2, const TPM2B_ECC_PARAMETER *y2)
Definition Esys_Commit.c:147
TSS2_RC Esys_ContextLoad(ESYS_CONTEXT *esysContext, const TPMS_CONTEXT *context, ESYS_TR *loadedHandle)
Definition Esys_ContextLoad.c:64
TSS2_RC Esys_ContextLoad_Async(ESYS_CONTEXT *esysContext, const TPMS_CONTEXT *context)
Definition Esys_ContextLoad.c:114
TSS2_RC Esys_ContextLoad_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *loadedHandle)
Definition Esys_ContextLoad.c:198
TSS2_RC Esys_ContextSave(ESYS_CONTEXT *esysContext, ESYS_TR saveHandle, TPMS_CONTEXT **context)
Definition Esys_ContextSave.c:64
TSS2_RC Esys_ContextSave_Finish(ESYS_CONTEXT *esysContext, TPMS_CONTEXT **context)
Definition Esys_ContextSave.c:180
TSS2_RC Esys_ContextSave_Async(ESYS_CONTEXT *esysContext, ESYS_TR saveHandle)
Definition Esys_ContextSave.c:117
TSS2_RC Esys_Create_Async(ESYS_CONTEXT *esysContext, ESYS_TR parentHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_SENSITIVE_CREATE *inSensitive, const TPM2B_PUBLIC *inPublic, const TPM2B_DATA *outsideInfo, const TPML_PCR_SELECTION *creationPCR)
Definition Esys_Create.c:170
TSS2_RC Esys_Create(ESYS_CONTEXT *esysContext, ESYS_TR parentHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_SENSITIVE_CREATE *inSensitive, const TPM2B_PUBLIC *inPublic, const TPM2B_DATA *outsideInfo, const TPML_PCR_SELECTION *creationPCR, TPM2B_PRIVATE **outPrivate, TPM2B_PUBLIC **outPublic, TPM2B_CREATION_DATA **creationData, TPM2B_DIGEST **creationHash, TPMT_TK_CREATION **creationTicket)
Definition Esys_Create.c:89
TSS2_RC Esys_Create_Finish(ESYS_CONTEXT *esysContext, TPM2B_PRIVATE **outPrivate, TPM2B_PUBLIC **outPublic, TPM2B_CREATION_DATA **creationData, TPM2B_DIGEST **creationHash, TPMT_TK_CREATION **creationTicket)
Definition Esys_Create.c:289
TSS2_RC Esys_CreatePrimary_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *objectHandle, TPM2B_PUBLIC **outPublic, TPM2B_CREATION_DATA **creationData, TPM2B_DIGEST **creationHash, TPMT_TK_CREATION **creationTicket)
Definition Esys_CreatePrimary.c:290
TSS2_RC Esys_CreatePrimary(ESYS_CONTEXT *esysContext, ESYS_TR primaryHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_SENSITIVE_CREATE *inSensitive, const TPM2B_PUBLIC *inPublic, const TPM2B_DATA *outsideInfo, const TPML_PCR_SELECTION *creationPCR, ESYS_TR *objectHandle, TPM2B_PUBLIC **outPublic, TPM2B_CREATION_DATA **creationData, TPM2B_DIGEST **creationHash, TPMT_TK_CREATION **creationTicket)
Definition Esys_CreatePrimary.c:90
TSS2_RC Esys_CreatePrimary_Async(ESYS_CONTEXT *esysContext, ESYS_TR primaryHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_SENSITIVE_CREATE *inSensitive, const TPM2B_PUBLIC *inPublic, const TPM2B_DATA *outsideInfo, const TPML_PCR_SELECTION *creationPCR)
Definition Esys_CreatePrimary.c:173
TSS2_RC Esys_DictionaryAttackLockReset_Async(ESYS_CONTEXT *esysContext, ESYS_TR lockHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_DictionaryAttackLockReset.c:137
TSS2_RC Esys_DictionaryAttackLockReset_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_DictionaryAttackLockReset.c:229
TSS2_RC Esys_DictionaryAttackLockReset(ESYS_CONTEXT *esysContext, ESYS_TR lockHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_DictionaryAttackLockReset.c:67
TSS2_RC Esys_DictionaryAttackParameters_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_DictionaryAttackParameters.c:251
TSS2_RC Esys_DictionaryAttackParameters_Async(ESYS_CONTEXT *esysContext, ESYS_TR lockHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, UINT32 newMaxTries, UINT32 newRecoveryTime, UINT32 lockoutRecovery)
Definition Esys_DictionaryAttackParameters.c:153
TSS2_RC Esys_DictionaryAttackParameters(ESYS_CONTEXT *esysContext, ESYS_TR lockHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, UINT32 newMaxTries, UINT32 newRecoveryTime, UINT32 lockoutRecovery)
Definition Esys_DictionaryAttackParameters.c:73
TSS2_RC Esys_Duplicate_Async(ESYS_CONTEXT *esysContext, ESYS_TR objectHandle, ESYS_TR newParentHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *encryptionKeyIn, const TPMT_SYM_DEF_OBJECT *symmetricAlg)
Definition Esys_Duplicate.c:153
TSS2_RC Esys_Duplicate_Finish(ESYS_CONTEXT *esysContext, TPM2B_DATA **encryptionKeyOut, TPM2B_PRIVATE **duplicate, TPM2B_ENCRYPTED_SECRET **outSymSeed)
Definition Esys_Duplicate.c:266
TSS2_RC Esys_Duplicate(ESYS_CONTEXT *esysContext, ESYS_TR objectHandle, ESYS_TR newParentHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *encryptionKeyIn, const TPMT_SYM_DEF_OBJECT *symmetricAlg, TPM2B_DATA **encryptionKeyOut, TPM2B_PRIVATE **duplicate, TPM2B_ENCRYPTED_SECRET **outSymSeed)
Definition Esys_Duplicate.c:77
TSS2_RC Esys_EC_Ephemeral_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_ECC_CURVE curveID)
Definition Esys_EC_Ephemeral.c:129
TSS2_RC Esys_EC_Ephemeral(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_ECC_CURVE curveID, TPM2B_ECC_POINT **Q, UINT16 *counter)
Definition Esys_EC_Ephemeral.c:63
TSS2_RC Esys_EC_Ephemeral_Finish(ESYS_CONTEXT *esysContext, TPM2B_ECC_POINT **Q, UINT16 *counter)
Definition Esys_EC_Ephemeral.c:213
TSS2_RC Esys_ECC_Decrypt_Finish(ESYS_CONTEXT *esysContext, TPM2B_MAX_BUFFER **plainText)
Definition Esys_ECC_Decrypt.c:242
TSS2_RC Esys_ECC_Decrypt_Async(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_ECC_POINT *c1, const TPM2B_MAX_BUFFER *c2, const TPM2B_DIGEST *c3, const TPMT_KDF_SCHEME *inScheme)
Definition Esys_ECC_Decrypt.c:141
TSS2_RC Esys_ECC_Decrypt(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_ECC_POINT *c1, const TPM2B_MAX_BUFFER *c2, const TPM2B_DIGEST *c3, const TPMT_KDF_SCHEME *inScheme, TPM2B_MAX_BUFFER **plainText)
Definition Esys_ECC_Decrypt.c:67
TSS2_RC Esys_ECC_Encrypt(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_MAX_BUFFER *plainText, const TPMT_KDF_SCHEME *inScheme, TPM2B_ECC_POINT **c1, TPM2B_MAX_BUFFER **c2, TPM2B_DIGEST **c3)
Definition Esys_ECC_Encrypt.c:70
TSS2_RC Esys_ECC_Encrypt_Finish(ESYS_CONTEXT *esysContext, TPM2B_ECC_POINT **c1, TPM2B_MAX_BUFFER **c2, TPM2B_DIGEST **c3)
Definition Esys_ECC_Encrypt.c:241
TSS2_RC Esys_ECC_Encrypt_Async(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_MAX_BUFFER *plainText, const TPMT_KDF_SCHEME *inScheme)
Definition Esys_ECC_Encrypt.c:143
TSS2_RC Esys_ECC_Parameters_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_ECC_CURVE curveID)
Definition Esys_ECC_Parameters.c:133
TSS2_RC Esys_ECC_Parameters_Finish(ESYS_CONTEXT *esysContext, TPMS_ALGORITHM_DETAIL_ECC **parameters)
Definition Esys_ECC_Parameters.c:216
TSS2_RC Esys_ECC_Parameters(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_ECC_CURVE curveID, TPMS_ALGORITHM_DETAIL_ECC **parameters)
Definition Esys_ECC_Parameters.c:65
TSS2_RC Esys_ECDH_KeyGen(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPM2B_ECC_POINT **zPoint, TPM2B_ECC_POINT **pubPoint)
Definition Esys_ECDH_KeyGen.c:68
TSS2_RC Esys_ECDH_KeyGen_Finish(ESYS_CONTEXT *esysContext, TPM2B_ECC_POINT **zPoint, TPM2B_ECC_POINT **pubPoint)
Definition Esys_ECDH_KeyGen.c:228
TSS2_RC Esys_ECDH_KeyGen_Async(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_ECDH_KeyGen.c:137
TSS2_RC Esys_ECDH_ZGen_Async(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_ECC_POINT *inPoint)
Definition Esys_ECDH_ZGen.c:132
TSS2_RC Esys_ECDH_ZGen_Finish(ESYS_CONTEXT *esysContext, TPM2B_ECC_POINT **outPoint)
Definition Esys_ECDH_ZGen.c:229
TSS2_RC Esys_ECDH_ZGen(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_ECC_POINT *inPoint, TPM2B_ECC_POINT **outPoint)
Definition Esys_ECDH_ZGen.c:65
TSS2_RC Esys_EncryptDecrypt_Finish(ESYS_CONTEXT *esysContext, TPM2B_MAX_BUFFER **outData, TPM2B_IV **ivOut)
Definition Esys_EncryptDecrypt.c:255
TSS2_RC Esys_EncryptDecrypt(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_YES_NO decrypt, TPMI_ALG_CIPHER_MODE mode, const TPM2B_IV *ivIn, const TPM2B_MAX_BUFFER *inData, TPM2B_MAX_BUFFER **outData, TPM2B_IV **ivOut)
Definition Esys_EncryptDecrypt.c:73
TSS2_RC Esys_EncryptDecrypt_Async(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_YES_NO decrypt, TPMI_ALG_CIPHER_MODE mode, const TPM2B_IV *ivIn, const TPM2B_MAX_BUFFER *inData)
Definition Esys_EncryptDecrypt.c:152
TSS2_RC Esys_EventSequenceComplete_Async(ESYS_CONTEXT *esysContext, ESYS_TR pcrHandle, ESYS_TR sequenceHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_MAX_BUFFER *buffer)
Definition Esys_EventSequenceComplete.c:141
TSS2_RC Esys_EventSequenceComplete(ESYS_CONTEXT *esysContext, ESYS_TR pcrHandle, ESYS_TR sequenceHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_MAX_BUFFER *buffer, TPML_DIGEST_VALUES **results)
Definition Esys_EventSequenceComplete.c:68
TSS2_RC Esys_EventSequenceComplete_Finish(ESYS_CONTEXT *esysContext, TPML_DIGEST_VALUES **results)
Definition Esys_EventSequenceComplete.c:248
TSS2_RC Esys_EvictControl_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *newObjectHandle)
Definition Esys_EvictControl.c:265
TSS2_RC Esys_EvictControl_Async(ESYS_CONTEXT *esysContext, ESYS_TR auth, ESYS_TR objectHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_DH_PERSISTENT persistentHandle)
Definition Esys_EvictControl.c:157
TSS2_RC Esys_EvictControl(ESYS_CONTEXT *esysContext, ESYS_TR auth, ESYS_TR objectHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_DH_PERSISTENT persistentHandle, ESYS_TR *newObjectHandle)
Definition Esys_EvictControl.c:80
TSS2_RC Esys_FlushContext_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_FlushContext.c:174
TSS2_RC Esys_FlushContext_Async(ESYS_CONTEXT *esysContext, ESYS_TR flushHandle)
Definition Esys_FlushContext.c:113
TSS2_RC Esys_FlushContext(ESYS_CONTEXT *esysContext, ESYS_TR flushHandle)
Definition Esys_FlushContext.c:60
TSS2_RC Esys_GetCapability_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPM2_CAP capability, UINT32 property, UINT32 propertyCount)
Definition Esys_GetCapability.c:146
TSS2_RC Esys_GetCapability_Finish(ESYS_CONTEXT *esysContext, TPMI_YES_NO *moreData, TPMS_CAPABILITY_DATA **capabilityData)
Definition Esys_GetCapability.c:234
TSS2_RC Esys_GetCapability(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPM2_CAP capability, UINT32 property, UINT32 propertyCount, TPMI_YES_NO *moreData, TPMS_CAPABILITY_DATA **capabilityData)
Definition Esys_GetCapability.c:70
TSS2_RC Esys_GetCommandAuditDigest_Finish(ESYS_CONTEXT *esysContext, TPM2B_ATTEST **auditInfo, TPMT_SIGNATURE **signature)
Definition Esys_GetCommandAuditDigest.c:253
TSS2_RC Esys_GetCommandAuditDigest(ESYS_CONTEXT *esysContext, ESYS_TR privacyHandle, ESYS_TR signHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *qualifyingData, const TPMT_SIG_SCHEME *inScheme, TPM2B_ATTEST **auditInfo, TPMT_SIGNATURE **signature)
Definition Esys_GetCommandAuditDigest.c:70
TSS2_RC Esys_GetCommandAuditDigest_Async(ESYS_CONTEXT *esysContext, ESYS_TR privacyHandle, ESYS_TR signHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *qualifyingData, const TPMT_SIG_SCHEME *inScheme)
Definition Esys_GetCommandAuditDigest.c:145
TSS2_RC Esys_GetRandom_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, UINT16 bytesRequested)
Definition Esys_GetRandom.c:127
TSS2_RC Esys_GetRandom_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **randomBytes)
Definition Esys_GetRandom.c:210
TSS2_RC Esys_GetRandom(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, UINT16 bytesRequested, TPM2B_DIGEST **randomBytes)
Definition Esys_GetRandom.c:62
TSS2_RC Esys_GetSessionAuditDigest_Finish(ESYS_CONTEXT *esysContext, TPM2B_ATTEST **auditInfo, TPMT_SIGNATURE **signature)
Definition Esys_GetSessionAuditDigest.c:264
TSS2_RC Esys_GetSessionAuditDigest_Async(ESYS_CONTEXT *esysContext, ESYS_TR privacyAdminHandle, ESYS_TR signHandle, ESYS_TR sessionHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *qualifyingData, const TPMT_SIG_SCHEME *inScheme)
Definition Esys_GetSessionAuditDigest.c:150
TSS2_RC Esys_GetSessionAuditDigest(ESYS_CONTEXT *esysContext, ESYS_TR privacyAdminHandle, ESYS_TR signHandle, ESYS_TR sessionHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *qualifyingData, const TPMT_SIG_SCHEME *inScheme, TPM2B_ATTEST **auditInfo, TPMT_SIGNATURE **signature)
Definition Esys_GetSessionAuditDigest.c:72
TSS2_RC Esys_GetTestResult_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_GetTestResult.c:126
TSS2_RC Esys_GetTestResult_Finish(ESYS_CONTEXT *esysContext, TPM2B_MAX_BUFFER **outData, TPM2_RC *testResult)
Definition Esys_GetTestResult.c:209
TSS2_RC Esys_GetTestResult(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPM2B_MAX_BUFFER **outData, TPM2_RC *testResult)
Definition Esys_GetTestResult.c:62
TSS2_RC Esys_GetTime_Async(ESYS_CONTEXT *esysContext, ESYS_TR privacyAdminHandle, ESYS_TR signHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *qualifyingData, const TPMT_SIG_SCHEME *inScheme)
Definition Esys_GetTime.c:147
TSS2_RC Esys_GetTime_Finish(ESYS_CONTEXT *esysContext, TPM2B_ATTEST **timeInfo, TPMT_SIGNATURE **signature)
Definition Esys_GetTime.c:255
TSS2_RC Esys_GetTime(ESYS_CONTEXT *esysContext, ESYS_TR privacyAdminHandle, ESYS_TR signHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *qualifyingData, const TPMT_SIG_SCHEME *inScheme, TPM2B_ATTEST **timeInfo, TPMT_SIGNATURE **signature)
Definition Esys_GetTime.c:71
TSS2_RC Esys_HMAC_Start(ESYS_CONTEXT *esysContext, ESYS_TR handle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_AUTH *auth, TPMI_ALG_HASH hashAlg, ESYS_TR *sequenceHandle)
Definition Esys_HMAC_Start.c:77
TSS2_RC Esys_HMAC_Start_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *sequenceHandle)
Definition Esys_HMAC_Start.c:248
TSS2_RC Esys_HMAC_Start_Async(ESYS_CONTEXT *esysContext, ESYS_TR handle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_AUTH *auth, TPMI_ALG_HASH hashAlg)
Definition Esys_HMAC_Start.c:149
TSS2_RC Esys_HMAC(ESYS_CONTEXT *esysContext, ESYS_TR handle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_MAX_BUFFER *buffer, TPMI_ALG_HASH hashAlg, TPM2B_DIGEST **outHMAC)
Definition Esys_HMAC.c:66
TSS2_RC Esys_HMAC_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **outHMAC)
Definition Esys_HMAC.c:235
TSS2_RC Esys_HMAC_Async(ESYS_CONTEXT *esysContext, ESYS_TR handle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_MAX_BUFFER *buffer, TPMI_ALG_HASH hashAlg)
Definition Esys_HMAC.c:136
TSS2_RC Esys_Hash_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **outHash, TPMT_TK_HASHCHECK **validation)
Definition Esys_Hash.c:233
TSS2_RC Esys_HashSequenceStart_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *sequenceHandle)
Definition Esys_HashSequenceStart.c:213
TSS2_RC Esys_HashSequenceStart_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_AUTH *auth, TPMI_ALG_HASH hashAlg)
Definition Esys_HashSequenceStart.c:130
TSS2_RC Esys_HashSequenceStart(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_AUTH *auth, TPMI_ALG_HASH hashAlg, ESYS_TR *sequenceHandle)
Definition Esys_HashSequenceStart.c:63
TSS2_RC Esys_HierarchyChangeAuth_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_HierarchyChangeAuth.c:247
TSS2_RC Esys_HierarchyChangeAuth(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_AUTH *newAuth)
Definition Esys_HierarchyChangeAuth.c:79
TSS2_RC Esys_HierarchyChangeAuth_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_AUTH *newAuth)
Definition Esys_HierarchyChangeAuth.c:150
TSS2_RC Esys_HierarchyControl_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_HierarchyControl.c:255
TSS2_RC Esys_Import_Finish(ESYS_CONTEXT *esysContext, TPM2B_PRIVATE **outPrivate)
Definition Esys_Import.c:256
TSS2_RC Esys_Import_Async(ESYS_CONTEXT *esysContext, ESYS_TR parentHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *encryptionKey, const TPM2B_PUBLIC *objectPublic, const TPM2B_PRIVATE *duplicate, const TPM2B_ENCRYPTED_SECRET *inSymSeed, const TPMT_SYM_DEF_OBJECT *symmetricAlg)
Definition Esys_Import.c:151
TSS2_RC Esys_Import(ESYS_CONTEXT *esysContext, ESYS_TR parentHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *encryptionKey, const TPM2B_PUBLIC *objectPublic, const TPM2B_PRIVATE *duplicate, const TPM2B_ENCRYPTED_SECRET *inSymSeed, const TPMT_SYM_DEF_OBJECT *symmetricAlg, TPM2B_PRIVATE **outPrivate)
Definition Esys_Import.c:72
TSS2_RC Esys_IncrementalSelfTest_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPML_ALG *toTest)
Definition Esys_IncrementalSelfTest.c:133
TSS2_RC Esys_IncrementalSelfTest_Finish(ESYS_CONTEXT *esysContext, TPML_ALG **toDoList)
Definition Esys_IncrementalSelfTest.c:216
TSS2_RC Esys_IncrementalSelfTest(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPML_ALG *toTest, TPML_ALG **toDoList)
Definition Esys_IncrementalSelfTest.c:65
TSS2_RC Esys_LoadExternal_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *objectHandle)
Definition Esys_LoadExternal.c:236
TSS2_RC Esys_Load_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *objectHandle)
Definition Esys_Load.c:246
TSS2_RC Esys_Load(ESYS_CONTEXT *esysContext, ESYS_TR parentHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_PRIVATE *inPrivate, const TPM2B_PUBLIC *inPublic, ESYS_TR *objectHandle)
Definition Esys_Load.c:76
TSS2_RC Esys_Load_Async(ESYS_CONTEXT *esysContext, ESYS_TR parentHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_PRIVATE *inPrivate, const TPM2B_PUBLIC *inPublic)
Definition Esys_Load.c:147
TSS2_RC Esys_MakeCredential_Async(ESYS_CONTEXT *esysContext, ESYS_TR handle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *credential, const TPM2B_NAME *objectName)
Definition Esys_MakeCredential.c:141
TSS2_RC Esys_MakeCredential(ESYS_CONTEXT *esysContext, ESYS_TR handle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *credential, const TPM2B_NAME *objectName, TPM2B_ID_OBJECT **credentialBlob, TPM2B_ENCRYPTED_SECRET **secret)
Definition Esys_MakeCredential.c:69
TSS2_RC Esys_MakeCredential_Finish(ESYS_CONTEXT *esysContext, TPM2B_ID_OBJECT **credentialBlob, TPM2B_ENCRYPTED_SECRET **secret)
Definition Esys_MakeCredential.c:238
TSS2_RC Esys_NV_Certify(ESYS_CONTEXT *esysContext, ESYS_TR signHandle, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *qualifyingData, const TPMT_SIG_SCHEME *inScheme, UINT16 size, UINT16 offset, TPM2B_ATTEST **certifyInfo, TPMT_SIGNATURE **signature)
Definition Esys_NV_Certify.c:75
TSS2_RC Esys_NV_Certify_Finish(ESYS_CONTEXT *esysContext, TPM2B_ATTEST **certifyInfo, TPMT_SIGNATURE **signature)
Definition Esys_NV_Certify.c:277
TSS2_RC Esys_NV_Certify_Async(ESYS_CONTEXT *esysContext, ESYS_TR signHandle, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *qualifyingData, const TPMT_SIG_SCHEME *inScheme, UINT16 size, UINT16 offset)
Definition Esys_NV_Certify.c:157
TSS2_RC Esys_NV_ChangeAuth_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_NV_ChangeAuth.c:247
TSS2_RC Esys_NV_ChangeAuth(ESYS_CONTEXT *esysContext, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_AUTH *newAuth)
Definition Esys_NV_ChangeAuth.c:75
TSS2_RC Esys_NV_ChangeAuth_Async(ESYS_CONTEXT *esysContext, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_AUTH *newAuth)
Definition Esys_NV_ChangeAuth.c:144
TSS2_RC Esys_NV_DefineSpace_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_AUTH *auth, const TPM2B_NV_PUBLIC *publicInfo)
Definition Esys_NV_DefineSpace.c:158
TSS2_RC Esys_NV_DefineSpace_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *nvHandle)
Definition Esys_NV_DefineSpace.c:273
TSS2_RC Esys_NV_DefineSpace(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_AUTH *auth, const TPM2B_NV_PUBLIC *publicInfo, ESYS_TR *nvHandle)
Definition Esys_NV_DefineSpace.c:85
TSS2_RC Esys_NV_Extend_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_MAX_NV_BUFFER *data)
Definition Esys_NV_Extend.c:145
TSS2_RC Esys_NV_Extend_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_NV_Extend.c:246
TSS2_RC Esys_NV_Extend(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_MAX_NV_BUFFER *data)
Definition Esys_NV_Extend.c:73
TSS2_RC Esys_NV_GlobalWriteLock_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_NV_GlobalWriteLock.c:229
TSS2_RC Esys_NV_GlobalWriteLock_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_NV_GlobalWriteLock.c:137
TSS2_RC Esys_NV_GlobalWriteLock(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_NV_GlobalWriteLock.c:67
TSS2_RC Esys_NV_Increment_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_NV_Increment.c:148
TSS2_RC Esys_NV_Increment(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_NV_Increment.c:75
TSS2_RC Esys_NV_Increment_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_NV_Increment.c:247
TSS2_RC Esys_NV_Read_Finish(ESYS_CONTEXT *esysContext, TPM2B_MAX_NV_BUFFER **data)
Definition Esys_NV_Read.c:249
TSS2_RC Esys_NV_Read(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, UINT16 size, UINT16 offset, TPM2B_MAX_NV_BUFFER **data)
Definition Esys_NV_Read.c:70
TSS2_RC Esys_NV_Read_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, UINT16 size, UINT16 offset)
Definition Esys_NV_Read.c:146
TSS2_RC Esys_NV_ReadLock_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_NV_ReadLock.c:148
TSS2_RC Esys_NV_ReadLock(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_NV_ReadLock.c:75
TSS2_RC Esys_NV_ReadLock_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_NV_ReadLock.c:247
TSS2_RC Esys_NV_ReadPublic(ESYS_CONTEXT *esysContext, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPM2B_NV_PUBLIC **nvPublic, TPM2B_NAME **nvName)
Definition Esys_NV_ReadPublic.c:74
TSS2_RC Esys_NV_ReadPublic_Async(ESYS_CONTEXT *esysContext, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_NV_ReadPublic.c:143
TSS2_RC Esys_NV_ReadPublic_Finish(ESYS_CONTEXT *esysContext, TPM2B_NV_PUBLIC **nvPublic, TPM2B_NAME **nvName)
Definition Esys_NV_ReadPublic.c:235
TSS2_RC Esys_NV_SetBits_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_NV_SetBits.c:252
TSS2_RC Esys_NV_SetBits_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, UINT64 bits)
Definition Esys_NV_SetBits.c:151
TSS2_RC Esys_NV_SetBits(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, UINT64 bits)
Definition Esys_NV_SetBits.c:76
TSS2_RC Esys_NV_UndefineSpace_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_NV_UndefineSpace.c:245
TSS2_RC Esys_NV_UndefineSpace(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_NV_UndefineSpace.c:74
TSS2_RC Esys_NV_UndefineSpace_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_NV_UndefineSpace.c:146
TSS2_RC Esys_NV_UndefineSpaceSpecial(ESYS_CONTEXT *esysContext, ESYS_TR nvIndex, ESYS_TR platform, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_NV_UndefineSpaceSpecial.c:74
TSS2_RC Esys_NV_UndefineSpaceSpecial_Async(ESYS_CONTEXT *esysContext, ESYS_TR nvIndex, ESYS_TR platform, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_NV_UndefineSpaceSpecial.c:147
TSS2_RC Esys_NV_UndefineSpaceSpecial_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_NV_UndefineSpaceSpecial.c:251
TSS2_RC Esys_NV_Write_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_MAX_NV_BUFFER *data, UINT16 offset)
Definition Esys_NV_Write.c:149
TSS2_RC Esys_NV_Write(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_MAX_NV_BUFFER *data, UINT16 offset)
Definition Esys_NV_Write.c:74
TSS2_RC Esys_NV_Write_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_NV_Write.c:251
TSS2_RC Esys_NV_WriteLock(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_NV_WriteLock.c:75
TSS2_RC Esys_NV_WriteLock_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_NV_WriteLock.c:148
TSS2_RC Esys_NV_WriteLock_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_NV_WriteLock.c:247
TSS2_RC Esys_ObjectChangeAuth_Async(ESYS_CONTEXT *esysContext, ESYS_TR objectHandle, ESYS_TR parentHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_AUTH *newAuth)
Definition Esys_ObjectChangeAuth.c:135
TSS2_RC Esys_ObjectChangeAuth_Finish(ESYS_CONTEXT *esysContext, TPM2B_PRIVATE **outPrivate)
Definition Esys_ObjectChangeAuth.c:254
TSS2_RC Esys_ObjectChangeAuth(ESYS_CONTEXT *esysContext, ESYS_TR objectHandle, ESYS_TR parentHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_AUTH *newAuth, TPM2B_PRIVATE **outPrivate)
Definition Esys_ObjectChangeAuth.c:65
TSS2_RC Esys_PCR_Allocate(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPML_PCR_SELECTION *pcrAllocation, TPMI_YES_NO *allocationSuccess, UINT32 *maxPCR, UINT32 *sizeNeeded, UINT32 *sizeAvailable)
Definition Esys_PCR_Allocate.c:73
TSS2_RC Esys_PCR_Allocate_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPML_PCR_SELECTION *pcrAllocation)
Definition Esys_PCR_Allocate.c:151
TSS2_RC Esys_PCR_Allocate_Finish(ESYS_CONTEXT *esysContext, TPMI_YES_NO *allocationSuccess, UINT32 *maxPCR, UINT32 *sizeNeeded, UINT32 *sizeAvailable)
Definition Esys_PCR_Allocate.c:251
TSS2_RC Esys_PCR_Event_Finish(ESYS_CONTEXT *esysContext, TPML_DIGEST_VALUES **digests)
Definition Esys_PCR_Event.c:233
TSS2_RC Esys_PCR_Event_Async(ESYS_CONTEXT *esysContext, ESYS_TR pcrHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_EVENT *eventData)
Definition Esys_PCR_Event.c:137
TSS2_RC Esys_PCR_Event(ESYS_CONTEXT *esysContext, ESYS_TR pcrHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_EVENT *eventData, TPML_DIGEST_VALUES **digests)
Definition Esys_PCR_Event.c:67
TSS2_RC Esys_PCR_Extend(ESYS_CONTEXT *esysContext, ESYS_TR pcrHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPML_DIGEST_VALUES *digests)
Definition Esys_PCR_Extend.c:68
TSS2_RC Esys_PCR_Extend_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PCR_Extend.c:234
TSS2_RC Esys_PCR_Extend_Async(ESYS_CONTEXT *esysContext, ESYS_TR pcrHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPML_DIGEST_VALUES *digests)
Definition Esys_PCR_Extend.c:140
TSS2_RC Esys_PCR_Read_Finish(ESYS_CONTEXT *esysContext, UINT32 *pcrUpdateCounter, TPML_PCR_SELECTION **pcrSelectionOut, TPML_DIGEST **pcrValues)
Definition Esys_PCR_Read.c:226
TSS2_RC Esys_PCR_Read(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPML_PCR_SELECTION *pcrSelectionIn, UINT32 *pcrUpdateCounter, TPML_PCR_SELECTION **pcrSelectionOut, TPML_DIGEST **pcrValues)
Definition Esys_PCR_Read.c:69
TSS2_RC Esys_PCR_Read_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPML_PCR_SELECTION *pcrSelectionIn)
Definition Esys_PCR_Read.c:139
TSS2_RC Esys_PCR_Reset_Async(ESYS_CONTEXT *esysContext, ESYS_TR pcrHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_PCR_Reset.c:137
TSS2_RC Esys_PCR_Reset(ESYS_CONTEXT *esysContext, ESYS_TR pcrHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_PCR_Reset.c:67
TSS2_RC Esys_PCR_Reset_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PCR_Reset.c:229
TSS2_RC Esys_PCR_SetAuthPolicy_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PCR_SetAuthPolicy.c:239
TSS2_RC Esys_PCR_SetAuthPolicy(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *authPolicy, TPMI_ALG_HASH hashAlg, TPMI_DH_PCR pcrNum)
Definition Esys_PCR_SetAuthPolicy.c:67
TSS2_RC Esys_PCR_SetAuthPolicy_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *authPolicy, TPMI_ALG_HASH hashAlg, TPMI_DH_PCR pcrNum)
Definition Esys_PCR_SetAuthPolicy.c:141
TSS2_RC Esys_PCR_SetAuthValue_Async(ESYS_CONTEXT *esysContext, ESYS_TR pcrHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *auth)
Definition Esys_PCR_SetAuthValue.c:147
TSS2_RC Esys_PCR_SetAuthValue(ESYS_CONTEXT *esysContext, ESYS_TR pcrHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *auth)
Definition Esys_PCR_SetAuthValue.c:77
TSS2_RC Esys_PCR_SetAuthValue_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PCR_SetAuthValue.c:243
TSS2_RC Esys_PP_Commands_Async(ESYS_CONTEXT *esysContext, ESYS_TR auth, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPML_CC *setList, const TPML_CC *clearList)
Definition Esys_PP_Commands.c:147
TSS2_RC Esys_PP_Commands_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PP_Commands.c:244
TSS2_RC Esys_PP_Commands(ESYS_CONTEXT *esysContext, ESYS_TR auth, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPML_CC *setList, const TPML_CC *clearList)
Definition Esys_PP_Commands.c:71
TSS2_RC Esys_PolicyAuthValue(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_PolicyAuthValue.c:73
TSS2_RC Esys_PolicyAuthValue_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_PolicyAuthValue.c:143
TSS2_RC Esys_PolicyAuthValue_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PolicyAuthValue.c:232
TSS2_RC Esys_PolicyAuthorize_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *approvedPolicy, const TPM2B_NONCE *policyRef, const TPM2B_NAME *keySign, const TPMT_TK_VERIFIED *checkTicket)
Definition Esys_PolicyAuthorize.c:152
TSS2_RC Esys_PolicyAuthorize_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PolicyAuthorize.c:247
TSS2_RC Esys_PolicyAuthorize(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *approvedPolicy, const TPM2B_NONCE *policyRef, const TPM2B_NAME *keySign, const TPMT_TK_VERIFIED *checkTicket)
Definition Esys_PolicyAuthorize.c:72
TSS2_RC Esys_PolicyCommandCode_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PolicyCommandCode.c:231
TSS2_RC Esys_PolicyCommandCode(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPM2_CC code)
Definition Esys_PolicyCommandCode.c:68
TSS2_RC Esys_PolicyCommandCode_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPM2_CC code)
Definition Esys_PolicyCommandCode.c:141
TSS2_RC Esys_PolicyCounterTimer(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_OPERAND *operandB, UINT16 offset, TPM2_EO operation)
Definition Esys_PolicyCounterTimer.c:68
TSS2_RC Esys_PolicyCounterTimer_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PolicyCounterTimer.c:237
TSS2_RC Esys_PolicyCounterTimer_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_OPERAND *operandB, UINT16 offset, TPM2_EO operation)
Definition Esys_PolicyCounterTimer.c:143
TSS2_RC Esys_PolicyCpHash_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PolicyCpHash.c:230
TSS2_RC Esys_PolicyCpHash(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *cpHashA)
Definition Esys_PolicyCpHash.c:68
TSS2_RC Esys_PolicyCpHash_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *cpHashA)
Definition Esys_PolicyCpHash.c:140
TSS2_RC Esys_PolicyDuplicationSelect(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_NAME *objectName, const TPM2B_NAME *newParentName, TPMI_YES_NO includeObject)
Definition Esys_PolicyDuplicationSelect.c:71
TSS2_RC Esys_PolicyDuplicationSelect_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_NAME *objectName, const TPM2B_NAME *newParentName, TPMI_YES_NO includeObject)
Definition Esys_PolicyDuplicationSelect.c:149
TSS2_RC Esys_PolicyDuplicationSelect_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PolicyDuplicationSelect.c:243
TSS2_RC Esys_PolicyGetDigest(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPM2B_DIGEST **policyDigest)
Definition Esys_PolicyGetDigest.c:67
TSS2_RC Esys_PolicyGetDigest_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **policyDigest)
Definition Esys_PolicyGetDigest.c:226
TSS2_RC Esys_PolicyGetDigest_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_PolicyGetDigest.c:135
TSS2_RC Esys_PolicyLocality_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMA_LOCALITY locality)
Definition Esys_PolicyLocality.c:141
TSS2_RC Esys_PolicyLocality(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMA_LOCALITY locality)
Definition Esys_PolicyLocality.c:68
TSS2_RC Esys_PolicyLocality_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PolicyLocality.c:231
TSS2_RC Esys_PolicyNV_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PolicyNV.c:258
TSS2_RC Esys_PolicyNV_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_OPERAND *operandB, UINT16 offset, TPM2_EO operation)
Definition Esys_PolicyNV.c:149
TSS2_RC Esys_PolicyNV(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_OPERAND *operandB, UINT16 offset, TPM2_EO operation)
Definition Esys_PolicyNV.c:70
TSS2_RC Esys_PolicyNameHash(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *nameHash)
Definition Esys_PolicyNameHash.c:68
TSS2_RC Esys_PolicyNameHash_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PolicyNameHash.c:231
TSS2_RC Esys_PolicyNameHash_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *nameHash)
Definition Esys_PolicyNameHash.c:141
TSS2_RC Esys_PolicyNvWritten_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_YES_NO writtenSet)
Definition Esys_PolicyNvWritten.c:141
TSS2_RC Esys_PolicyNvWritten_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PolicyNvWritten.c:231
TSS2_RC Esys_PolicyNvWritten(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_YES_NO writtenSet)
Definition Esys_PolicyNvWritten.c:68
TSS2_RC Esys_PolicyOR_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPML_DIGEST *pHashList)
Definition Esys_PolicyOR.c:140
TSS2_RC Esys_PolicyOR(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPML_DIGEST *pHashList)
Definition Esys_PolicyOR.c:68
TSS2_RC Esys_PolicyOR_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PolicyOR.c:230
TSS2_RC Esys_PolicyPCR_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PolicyPCR.c:233
TSS2_RC Esys_PolicyPCR(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *pcrDigest, const TPML_PCR_SELECTION *pcrs)
Definition Esys_PolicyPCR.c:67
TSS2_RC Esys_PolicyPCR_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *pcrDigest, const TPML_PCR_SELECTION *pcrs)
Definition Esys_PolicyPCR.c:140
TSS2_RC Esys_PolicyPassword_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PolicyPassword.c:232
TSS2_RC Esys_PolicyPassword_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_PolicyPassword.c:143
TSS2_RC Esys_PolicyPassword(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_PolicyPassword.c:73
TSS2_RC Esys_PolicyPhysicalPresence_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_PolicyPhysicalPresence.c:137
TSS2_RC Esys_PolicyPhysicalPresence_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PolicyPhysicalPresence.c:225
TSS2_RC Esys_PolicyPhysicalPresence(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_PolicyPhysicalPresence.c:67
TSS2_RC Esys_PolicyRestart(ESYS_CONTEXT *esysContext, ESYS_TR sessionHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_PolicyRestart.c:67
TSS2_RC Esys_PolicyRestart_Async(ESYS_CONTEXT *esysContext, ESYS_TR sessionHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_PolicyRestart.c:137
TSS2_RC Esys_PolicyRestart_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PolicyRestart.c:225
TSS2_RC Esys_PolicySecret_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_NONCE *nonceTPM, const TPM2B_DIGEST *cpHashA, const TPM2B_NONCE *policyRef, INT32 expiration)
Definition Esys_PolicySecret.c:156
TSS2_RC Esys_PolicySecret(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_NONCE *nonceTPM, const TPM2B_DIGEST *cpHashA, const TPM2B_NONCE *policyRef, INT32 expiration, TPM2B_TIMEOUT **timeout, TPMT_TK_AUTH **policyTicket)
Definition Esys_PolicySecret.c:76
TSS2_RC Esys_PolicySecret_Finish(ESYS_CONTEXT *esysContext, TPM2B_TIMEOUT **timeout, TPMT_TK_AUTH **policyTicket)
Definition Esys_PolicySecret.c:268
TSS2_RC Esys_PolicySigned_Async(ESYS_CONTEXT *esysContext, ESYS_TR authObject, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_NONCE *nonceTPM, const TPM2B_DIGEST *cpHashA, const TPM2B_NONCE *policyRef, INT32 expiration, const TPMT_SIGNATURE *auth)
Definition Esys_PolicySigned.c:159
TSS2_RC Esys_PolicySigned_Finish(ESYS_CONTEXT *esysContext, TPM2B_TIMEOUT **timeout, TPMT_TK_AUTH **policyTicket)
Definition Esys_PolicySigned.c:268
TSS2_RC Esys_PolicySigned(ESYS_CONTEXT *esysContext, ESYS_TR authObject, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_NONCE *nonceTPM, const TPM2B_DIGEST *cpHashA, const TPM2B_NONCE *policyRef, INT32 expiration, const TPMT_SIGNATURE *auth, TPM2B_TIMEOUT **timeout, TPMT_TK_AUTH **policyTicket)
Definition Esys_PolicySigned.c:77
TSS2_RC Esys_PolicyTicket_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_PolicyTicket.c:250
TSS2_RC Esys_PolicyTicket_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_TIMEOUT *timeout, const TPM2B_DIGEST *cpHashA, const TPM2B_NONCE *policyRef, const TPM2B_NAME *authName, const TPMT_TK_AUTH *ticket)
Definition Esys_PolicyTicket.c:153
TSS2_RC Esys_PolicyTicket(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_TIMEOUT *timeout, const TPM2B_DIGEST *cpHashA, const TPM2B_NONCE *policyRef, const TPM2B_NAME *authName, const TPMT_TK_AUTH *ticket)
Definition Esys_PolicyTicket.c:72
TSS2_RC Esys_Quote_Finish(ESYS_CONTEXT *esysContext, TPM2B_ATTEST **quoted, TPMT_SIGNATURE **signature)
Definition Esys_Quote.c:245
TSS2_RC Esys_Quote(ESYS_CONTEXT *esysContext, ESYS_TR signHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *qualifyingData, const TPMT_SIG_SCHEME *inScheme, const TPML_PCR_SELECTION *PCRselect, TPM2B_ATTEST **quoted, TPMT_SIGNATURE **signature)
Definition Esys_Quote.c:69
TSS2_RC Esys_Quote_Async(ESYS_CONTEXT *esysContext, ESYS_TR signHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *qualifyingData, const TPMT_SIG_SCHEME *inScheme, const TPML_PCR_SELECTION *PCRselect)
Definition Esys_Quote.c:143
TSS2_RC Esys_RSA_Decrypt(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_PUBLIC_KEY_RSA *cipherText, const TPMT_RSA_DECRYPT *inScheme, const TPM2B_DATA *label, TPM2B_PUBLIC_KEY_RSA **message)
Definition Esys_RSA_Decrypt.c:67
TSS2_RC Esys_RSA_Decrypt_Finish(ESYS_CONTEXT *esysContext, TPM2B_PUBLIC_KEY_RSA **message)
Definition Esys_RSA_Decrypt.c:240
TSS2_RC Esys_RSA_Decrypt_Async(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_PUBLIC_KEY_RSA *cipherText, const TPMT_RSA_DECRYPT *inScheme, const TPM2B_DATA *label)
Definition Esys_RSA_Decrypt.c:140
TSS2_RC Esys_RSA_Encrypt(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_PUBLIC_KEY_RSA *message, const TPMT_RSA_DECRYPT *inScheme, const TPM2B_DATA *label, TPM2B_PUBLIC_KEY_RSA **outData)
Definition Esys_RSA_Encrypt.c:68
TSS2_RC Esys_RSA_Encrypt_Async(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_PUBLIC_KEY_RSA *message, const TPMT_RSA_DECRYPT *inScheme, const TPM2B_DATA *label)
Definition Esys_RSA_Encrypt.c:142
TSS2_RC Esys_RSA_Encrypt_Finish(ESYS_CONTEXT *esysContext, TPM2B_PUBLIC_KEY_RSA **outData)
Definition Esys_RSA_Encrypt.c:237
TSS2_RC Esys_ReadClock(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMS_TIME_INFO **currentTime)
Definition Esys_ReadClock.c:64
TSS2_RC Esys_ReadClock_Finish(ESYS_CONTEXT *esysContext, TPMS_TIME_INFO **currentTime)
Definition Esys_ReadClock.c:212
TSS2_RC Esys_ReadClock_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_ReadClock.c:130
TSS2_RC Esys_ReadPublic_Async(ESYS_CONTEXT *esysContext, ESYS_TR objectHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_ReadPublic.c:140
TSS2_RC Esys_ReadPublic(ESYS_CONTEXT *esysContext, ESYS_TR objectHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPM2B_PUBLIC **outPublic, TPM2B_NAME **name, TPM2B_NAME **qualifiedName)
Definition Esys_ReadPublic.c:70
TSS2_RC Esys_ReadPublic_Finish(ESYS_CONTEXT *esysContext, TPM2B_PUBLIC **outPublic, TPM2B_NAME **name, TPM2B_NAME **qualifiedName)
Definition Esys_ReadPublic.c:234
TSS2_RC Esys_Rewrap_Async(ESYS_CONTEXT *esysContext, ESYS_TR oldParent, ESYS_TR newParent, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_PRIVATE *inDuplicate, const TPM2B_NAME *name, const TPM2B_ENCRYPTED_SECRET *inSymSeed)
Definition Esys_Rewrap.c:148
TSS2_RC Esys_Rewrap_Finish(ESYS_CONTEXT *esysContext, TPM2B_PRIVATE **outDuplicate, TPM2B_ENCRYPTED_SECRET **outSymSeed)
Definition Esys_Rewrap.c:257
TSS2_RC Esys_Rewrap(ESYS_CONTEXT *esysContext, ESYS_TR oldParent, ESYS_TR newParent, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_PRIVATE *inDuplicate, const TPM2B_NAME *name, const TPM2B_ENCRYPTED_SECRET *inSymSeed, TPM2B_PRIVATE **outDuplicate, TPM2B_ENCRYPTED_SECRET **outSymSeed)
Definition Esys_Rewrap.c:72
TSS2_RC Esys_SelfTest_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_YES_NO fullTest)
Definition Esys_SelfTest.c:130
TSS2_RC Esys_SelfTest(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_YES_NO fullTest)
Definition Esys_SelfTest.c:63
TSS2_RC Esys_SelfTest_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_SelfTest.c:211
TSS2_RC Esys_SequenceComplete_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **result, TPMT_TK_HASHCHECK **validation)
Definition Esys_SequenceComplete.c:259
TSS2_RC Esys_SequenceUpdate(ESYS_CONTEXT *esysContext, ESYS_TR sequenceHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_MAX_BUFFER *buffer)
Definition Esys_SequenceUpdate.c:65
TSS2_RC Esys_SequenceUpdate_Async(ESYS_CONTEXT *esysContext, ESYS_TR sequenceHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_MAX_BUFFER *buffer)
Definition Esys_SequenceUpdate.c:135
TSS2_RC Esys_SequenceUpdate_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_SequenceUpdate.c:230
TSS2_RC Esys_SetAlgorithmSet_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, UINT32 algorithmSet)
Definition Esys_SetAlgorithmSet.c:143
TSS2_RC Esys_SetAlgorithmSet(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, UINT32 algorithmSet)
Definition Esys_SetAlgorithmSet.c:69
TSS2_RC Esys_SetAlgorithmSet_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_SetAlgorithmSet.c:238
TSS2_RC Esys_SetCommandCodeAuditStatus_Async(ESYS_CONTEXT *esysContext, ESYS_TR auth, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_ALG_HASH auditAlg, const TPML_CC *setList, const TPML_CC *clearList)
Definition Esys_SetCommandCodeAuditStatus.c:151
TSS2_RC Esys_SetCommandCodeAuditStatus(ESYS_CONTEXT *esysContext, ESYS_TR auth, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_ALG_HASH auditAlg, const TPML_CC *setList, const TPML_CC *clearList)
Definition Esys_SetCommandCodeAuditStatus.c:72
TSS2_RC Esys_SetCommandCodeAuditStatus_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_SetCommandCodeAuditStatus.c:249
TSS2_RC Esys_SetPrimaryPolicy(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *authPolicy, TPMI_ALG_HASH hashAlg)
Definition Esys_SetPrimaryPolicy.c:68
TSS2_RC Esys_SetPrimaryPolicy_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_SetPrimaryPolicy.c:239
TSS2_RC Esys_SetPrimaryPolicy_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *authPolicy, TPMI_ALG_HASH hashAlg)
Definition Esys_SetPrimaryPolicy.c:142
TSS2_RC Esys_Shutdown_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_Shutdown.c:211
TSS2_RC Esys_Shutdown(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPM2_SU shutdownType)
Definition Esys_Shutdown.c:63
TSS2_RC Esys_Shutdown_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPM2_SU shutdownType)
Definition Esys_Shutdown.c:130
TSS2_RC Esys_Sign_Finish(ESYS_CONTEXT *esysContext, TPMT_SIGNATURE **signature)
Definition Esys_Sign.c:246
TSS2_RC Esys_Sign(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *digest, const TPMT_SIG_SCHEME *inScheme, const TPMT_TK_HASHCHECK *validation, TPMT_SIGNATURE **signature)
Definition Esys_Sign.c:70
TSS2_RC Esys_Sign_Async(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *digest, const TPMT_SIG_SCHEME *inScheme, const TPMT_TK_HASHCHECK *validation)
Definition Esys_Sign.c:146
TSS2_RC Esys_StartAuthSession_Async(ESYS_CONTEXT *esysContext, ESYS_TR tpmKey, ESYS_TR bind, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_NONCE *nonceCaller, TPM2_SE sessionType, const TPMT_SYM_DEF *symmetric, TPMI_ALG_HASH authHash)
Definition Esys_StartAuthSession.c:180
TSS2_RC Esys_StartAuthSession(ESYS_CONTEXT *esysContext, ESYS_TR tpmKey, ESYS_TR bind, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_NONCE *nonceCaller, TPM2_SE sessionType, const TPMT_SYM_DEF *symmetric, TPMI_ALG_HASH authHash, ESYS_TR *sessionHandle)
Definition Esys_StartAuthSession.c:102
TSS2_RC Esys_StartAuthSession_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *sessionHandle)
Definition Esys_StartAuthSession.c:312
TSS2_RC Esys_Startup_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_Startup.c:160
TSS2_RC Esys_Startup(ESYS_CONTEXT *esysContext, TPM2_SU startupType)
Definition Esys_Startup.c:50
TSS2_RC Esys_Startup_Async(ESYS_CONTEXT *esysContext, TPM2_SU startupType)
Definition Esys_Startup.c:106
TSS2_RC Esys_StirRandom_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_StirRandom.c:205
TSS2_RC Esys_StirRandom_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_SENSITIVE_DATA *inData)
Definition Esys_StirRandom.c:124
TSS2_RC Esys_StirRandom(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_SENSITIVE_DATA *inData)
Definition Esys_StirRandom.c:60
TSS2_RC Esys_TestParms_Finish(ESYS_CONTEXT *esysContext)
Definition Esys_TestParms.c:213
TSS2_RC Esys_TestParms(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPMT_PUBLIC_PARMS *parameters)
Definition Esys_TestParms.c:63
TSS2_RC Esys_TestParms_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPMT_PUBLIC_PARMS *parameters)
Definition Esys_TestParms.c:132
TSS2_RC Esys_Unseal_Async(ESYS_CONTEXT *esysContext, ESYS_TR itemHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition Esys_Unseal.c:134
TSS2_RC Esys_Unseal_Finish(ESYS_CONTEXT *esysContext, TPM2B_SENSITIVE_DATA **outData)
Definition Esys_Unseal.c:228
TSS2_RC Esys_Unseal(ESYS_CONTEXT *esysContext, ESYS_TR itemHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPM2B_SENSITIVE_DATA **outData)
Definition Esys_Unseal.c:66
TSS2_RC Esys_Vendor_TCG_Test(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *inputData, TPM2B_DATA **outputData)
Definition Esys_Vendor_TCG_Test.c:59
TSS2_RC Esys_Vendor_TCG_Test_Finish(ESYS_CONTEXT *esysContext, TPM2B_DATA **outputData)
Definition Esys_Vendor_TCG_Test.c:204
TSS2_RC Esys_Vendor_TCG_Test_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DATA *inputData)
Definition Esys_Vendor_TCG_Test.c:121
TSS2_RC Esys_VerifySignature_Async(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *digest, const TPMT_SIGNATURE *signature)
Definition Esys_VerifySignature.c:143
TSS2_RC Esys_VerifySignature_Finish(ESYS_CONTEXT *esysContext, TPMT_TK_VERIFIED **validation)
Definition Esys_VerifySignature.c:237
TSS2_RC Esys_VerifySignature(ESYS_CONTEXT *esysContext, ESYS_TR keyHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_DIGEST *digest, const TPMT_SIGNATURE *signature, TPMT_TK_VERIFIED **validation)
Definition Esys_VerifySignature.c:69
TSS2_RC Esys_ZGen_2Phase_Finish(ESYS_CONTEXT *esysContext, TPM2B_ECC_POINT **outZ1, TPM2B_ECC_POINT **outZ2)
Definition Esys_ZGen_2Phase.c:251
TSS2_RC Esys_ZGen_2Phase(ESYS_CONTEXT *esysContext, ESYS_TR keyA, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_ECC_POINT *inQsB, const TPM2B_ECC_POINT *inQeB, TPMI_ECC_KEY_EXCHANGE inScheme, UINT16 counter, TPM2B_ECC_POINT **outZ1, TPM2B_ECC_POINT **outZ2)
Definition Esys_ZGen_2Phase.c:71
TSS2_RC Esys_ZGen_2Phase_Async(ESYS_CONTEXT *esysContext, ESYS_TR keyA, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_ECC_POINT *inQsB, const TPM2B_ECC_POINT *inQeB, TPMI_ECC_KEY_EXCHANGE inScheme, UINT16 counter)
Definition Esys_ZGen_2Phase.c:146
Definition esys_int.h:168
Definition tss2_esys.h:384
Definition esys_crypto_mbed.c:32