tpm2-tss 4.0.1
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_tcti.h"
10#include "tss2_sys.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
61#define ESYS_TR_RH_AUTH_FIRST 0x110U
62#define ESYS_TR_RH_AUTH(x) (ESYS_TR_RH_AUTH_FIRST + (ESYS_TR)(x))
63#define ESYS_TR_RH_ACT_FIRST 0x120U
64#define ESYS_TR_RH_ACT(x) (ESYS_TR_RH_ACT_FIRST + (ESYS_TR)(x))
65#define ESYS_TR_RH_ACT_0 ESYS_TR_RH_ACT_FIRST
66#define ESYS_TR_RH_ACT_1 0x121U
67#define ESYS_TR_RH_ACT_2 0x122U
68#define ESYS_TR_RH_ACT_3 0x123U
69#define ESYS_TR_RH_ACT_4 0x124U
70#define ESYS_TR_RH_ACT_5 0x125U
71#define ESYS_TR_RH_ACT_6 0x126U
72#define ESYS_TR_RH_ACT_7 0x127U
73#define ESYS_TR_RH_ACT_8 0x128U
74#define ESYS_TR_RH_ACT_9 0x129U
75#define ESYS_TR_RH_ACT_A 0x12AU
76#define ESYS_TR_RH_ACT_B 0x12BU
77#define ESYS_TR_RH_ACT_C 0x12CU
78#define ESYS_TR_RH_ACT_D 0x12DU
79#define ESYS_TR_RH_ACT_E 0x12EU
80#define ESYS_TR_RH_ACT_F 0x12FU
81#define ESYS_TR_RH_ACT_LAST ESYS_TR_RH_ACT_F
82#define ESYS_TR_RH_AC_FIRST 0x140U
83#define ESYS_TR_RH_AC(x) (ESYS_TR_RH_AC_FIRST + (ESYS_TR)(x))
84#define ESYS_TR_RH_AC_LAST (ESYS_TR_RH_AC_FIRST + 0xFFFFU)
85
87
89
90/*
91 * Crypto Backend Support
92 */
93
103typedef TSS2_RC
104 (*ESYS_CRYPTO_HASH_START_FNP)(
105 ESYS_CRYPTO_CONTEXT_BLOB ** context,
106 TPM2_ALG_ID hashAlg,
107 void *userdata);
108
120typedef TSS2_RC
121 (*ESYS_CRYPTO_HASH_UPDATE_FNP)(
122 ESYS_CRYPTO_CONTEXT_BLOB * context,
123 const uint8_t *buffer,
124 size_t size,
125 void *userdata);
126
138typedef TSS2_RC
139 (*ESYS_CRYPTO_HASH_FINISH_FNP)(
140 ESYS_CRYPTO_CONTEXT_BLOB **context,
141 uint8_t *buffer,
142 size_t *size,
143 void *userdata);
144
151typedef void
152 (*ESYS_CRYPTO_HASH_ABORT_FNP)(
153 ESYS_CRYPTO_CONTEXT_BLOB **context,
154 void *userdata);
155
168typedef TSS2_RC
169 (*ESYS_CRYPTO_HMAC_START_FNP)(
170 ESYS_CRYPTO_CONTEXT_BLOB **context,
171 TPM2_ALG_ID hashAlg,
172 const uint8_t *key,
173 size_t size,
174 void *userdata);
175
187typedef TSS2_RC
188 (*ESYS_CRYPTO_HMAC_UPDATE_FNP)(
190 const uint8_t *buffer,
191 size_t size,
192 void *userdata);
193
205typedef TSS2_RC
206 (*ESYS_CRYPTO_HMAC_FINISH_FNP)(
207 ESYS_CRYPTO_CONTEXT_BLOB **context,
208 uint8_t *buffer,
209 size_t *size,
210 void *userdata);
211
218typedef void
219 (*ESYS_CRYPTO_HMAC_ABORT_FNP)(
220 ESYS_CRYPTO_CONTEXT_BLOB **context,
221 void *userdata);
222
233typedef TSS2_RC
234 (*ESYS_CRYPTO_GET_RANDOM2B_FNP)(
235 TPM2B_NONCE *nonce,
236 size_t num_bytes,
237 void *userdata);
238
256typedef TSS2_RC
257 (*ESYS_CRYPTO_GET_ECDH_POINT_FNP)(
258 TPM2B_PUBLIC *key,
259 size_t max_out_size,
260 TPM2B_ECC_PARAMETER *Z,
261 TPMS_ECC_POINT *Q,
262 BYTE *out_buffer,
263 size_t *out_size,
264 void *userdata);
265
281typedef TSS2_RC
282 (*ESYS_CRYPTO_AES_ENCRYPT_FNP)(
283 uint8_t *key,
284 TPM2_ALG_ID tpm_sym_alg,
285 TPMI_AES_KEY_BITS key_bits,
286 TPM2_ALG_ID tpm_mode,
287 uint8_t *buffer,
288 size_t buffer_size,
289 uint8_t *iv,
290 void *userdata);
291
307typedef TSS2_RC
308 (*ESYS_CRYPTO_AES_DECRYPT_FNP)(
309 uint8_t *key,
310 TPM2_ALG_ID tpm_sym_alg,
311 TPMI_AES_KEY_BITS key_bits,
312 TPM2_ALG_ID tpm_mode,
313 uint8_t *buffer,
314 size_t buffer_size,
315 uint8_t *iv,
316 void *userdata);
317
333typedef TSS2_RC
334 (*ESYS_CRYPTO_PK_RSA_ENCRYPT_FNP)(
335 TPM2B_PUBLIC * pub_tpm_key,
336 size_t in_size,
337 BYTE *in_buffer,
338 size_t max_out_size,
339 BYTE *out_buffer,
340 size_t *out_size,
341 const char *label,
342 void *userdata);
343
353typedef TSS2_RC (*ESYS_CRYPTO_INIT_FNP)(void *userdata);
354
357 ESYS_CRYPTO_PK_RSA_ENCRYPT_FNP rsa_pk_encrypt;
358 ESYS_CRYPTO_HASH_START_FNP hash_start;
359 ESYS_CRYPTO_HASH_UPDATE_FNP hash_update;
360 ESYS_CRYPTO_HASH_FINISH_FNP hash_finish;
361 ESYS_CRYPTO_HASH_ABORT_FNP hash_abort;
362 ESYS_CRYPTO_HMAC_START_FNP hmac_start;
363 ESYS_CRYPTO_HMAC_UPDATE_FNP hmac_update;
364 ESYS_CRYPTO_HMAC_FINISH_FNP hmac_finish;
365 ESYS_CRYPTO_HMAC_ABORT_FNP hmac_abort;
366 ESYS_CRYPTO_GET_RANDOM2B_FNP get_random2b;
367 ESYS_CRYPTO_GET_ECDH_POINT_FNP get_ecdh_point;
368 ESYS_CRYPTO_AES_ENCRYPT_FNP aes_encrypt;
369 ESYS_CRYPTO_AES_DECRYPT_FNP aes_decrypt;
370 ESYS_CRYPTO_INIT_FNP init;
371 void *userdata;
372};
373
374/*
375 * TPM 2.0 ESAPI Functions
376 */
377
378TSS2_RC
380 ESYS_CONTEXT **esys_context,
381 TSS2_TCTI_CONTEXT *tcti,
382 TSS2_ABI_VERSION *abiVersion);
383
384void
385Esys_Finalize(
386 ESYS_CONTEXT **context);
387
388TSS2_RC
390 ESYS_CONTEXT *esys_context,
391 TSS2_TCTI_CONTEXT **tcti);
392
393TSS2_RC
395 ESYS_CONTEXT *esys_context,
396 TSS2_TCTI_POLL_HANDLE **handles,
397 size_t *count);
398
399TSS2_RC
401 ESYS_CONTEXT *esys_context,
402 int32_t timeout);
403
404TSS2_RC
406 ESYS_CONTEXT *esys_context,
407 ESYS_TR object,
408 uint8_t **buffer,
409 size_t *buffer_size);
410
411TSS2_RC
413 ESYS_CONTEXT *esys_context,
414 uint8_t const *buffer,
415 size_t buffer_size,
416 ESYS_TR *esys_handle);
417
418TSS2_RC
420 ESYS_CONTEXT *esysContext,
421 TPM2_HANDLE tpm_handle,
422 ESYS_TR optionalSession1,
423 ESYS_TR optionalSession2,
424 ESYS_TR optionalSession3);
425
426TSS2_RC
428 ESYS_CONTEXT *esysContext,
429 ESYS_TR *object);
430
431TSS2_RC
433 ESYS_CONTEXT *esysContext,
434 TPM2_HANDLE tpm_handle,
435 ESYS_TR optionalSession1,
436 ESYS_TR optionalSession2,
437 ESYS_TR optionalSession3,
438 ESYS_TR *object);
439
440TSS2_RC
442 ESYS_CONTEXT *esys_context,
443 ESYS_TR *rsrc_handle);
444
445TSS2_RC
447 ESYS_CONTEXT *esysContext,
448 ESYS_TR handle,
449 TPM2B_AUTH const *authValue);
450
451TSS2_RC
453 ESYS_CONTEXT *esysContext,
454 ESYS_TR handle,
455 TPM2B_NAME **name);
456
457TSS2_RC
459 ESYS_CONTEXT *esysContext,
460 ESYS_TR session,
461 TPMA_SESSION *flags);
462
463TSS2_RC
465 ESYS_CONTEXT *esysContext,
466 ESYS_TR session,
467 TPMA_SESSION flags,
468 TPMA_SESSION mask);
469
470TSS2_RC
471Esys_TRSess_GetNonceTPM(
472 ESYS_CONTEXT *esysContext,
473 ESYS_TR session,
474 TPM2B_NONCE **nonceTPM);
475
476TSS2_RC
477Esys_TR_GetTpmHandle(
478 ESYS_CONTEXT *esys_context,
479 ESYS_TR esys_handle,
480 TPM2_HANDLE *tpm_handle);
481
482TSS2_RC
483Esys_TRSess_GetAuthRequired(
484 ESYS_CONTEXT *esys_context,
485 ESYS_TR esys_handle,
486 TPMI_YES_NO *auth_needed);
487
488/* Table 5 - TPM2_Startup Command */
489
490TSS2_RC
492 ESYS_CONTEXT *esysContext,
493 TPM2_SU startupType);
494
495TSS2_RC
497 ESYS_CONTEXT *esysContext,
498 TPM2_SU startupType);
499
500TSS2_RC
502 ESYS_CONTEXT *esysContext);
503
504/* Table 7 - TPM2_Shutdown Command */
505
506TSS2_RC
508 ESYS_CONTEXT *esysContext,
509 ESYS_TR shandle1,
510 ESYS_TR shandle2,
511 ESYS_TR shandle3,
512 TPM2_SU shutdownType);
513
514TSS2_RC
516 ESYS_CONTEXT *esysContext,
517 ESYS_TR shandle1,
518 ESYS_TR shandle2,
519 ESYS_TR shandle3,
520 TPM2_SU shutdownType);
521
522TSS2_RC
524 ESYS_CONTEXT *esysContext);
525
526/* Table 9 - TPM2_SelfTest Command */
527
528TSS2_RC
530 ESYS_CONTEXT *esysContext,
531 ESYS_TR shandle1,
532 ESYS_TR shandle2,
533 ESYS_TR shandle3,
534 TPMI_YES_NO fullTest);
535
536TSS2_RC
538 ESYS_CONTEXT *esysContext,
539 ESYS_TR shandle1,
540 ESYS_TR shandle2,
541 ESYS_TR shandle3,
542 TPMI_YES_NO fullTest);
543
544TSS2_RC
546 ESYS_CONTEXT *esysContext);
547
548/* Table 11 - TPM2_IncrementalSelfTest Command */
549
550TSS2_RC
552 ESYS_CONTEXT *esysContext,
553 ESYS_TR shandle1,
554 ESYS_TR shandle2,
555 ESYS_TR shandle3,
556 const TPML_ALG *toTest,
557 TPML_ALG **toDoList);
558
559TSS2_RC
561 ESYS_CONTEXT *esysContext,
562 ESYS_TR shandle1,
563 ESYS_TR shandle2,
564 ESYS_TR shandle3,
565 const TPML_ALG *toTest);
566
567TSS2_RC
569 ESYS_CONTEXT *esysContext,
570 TPML_ALG **toDoList);
571
572/* Table 13 - TPM2_GetTestResult Command */
573
574TSS2_RC
576 ESYS_CONTEXT *esysContext,
577 ESYS_TR shandle1,
578 ESYS_TR shandle2,
579 ESYS_TR shandle3,
580 TPM2B_MAX_BUFFER **outData,
581 TPM2_RC *testResult);
582
583TSS2_RC
585 ESYS_CONTEXT *esysContext,
586 ESYS_TR shandle1,
587 ESYS_TR shandle2,
588 ESYS_TR shandle3);
589
590TSS2_RC
592 ESYS_CONTEXT *esysContext,
593 TPM2B_MAX_BUFFER **outData,
594 TPM2_RC *testResult);
595
596/* Table 15 - TPM2_StartAuthSession Command */
597
598TSS2_RC
600 ESYS_CONTEXT *esysContext,
601 ESYS_TR tpmKey,
602 ESYS_TR bind,
603 ESYS_TR shandle1,
604 ESYS_TR shandle2,
605 ESYS_TR shandle3,
606 const TPM2B_NONCE *nonceCaller,
607 TPM2_SE sessionType,
608 const TPMT_SYM_DEF *symmetric,
609 TPMI_ALG_HASH authHash,
610 ESYS_TR *sessionHandle);
611
612TSS2_RC
614 ESYS_CONTEXT *esysContext,
615 ESYS_TR tpmKey,
616 ESYS_TR bind,
617 ESYS_TR shandle1,
618 ESYS_TR shandle2,
619 ESYS_TR shandle3,
620 const TPM2B_NONCE *nonceCaller,
621 TPM2_SE sessionType,
622 const TPMT_SYM_DEF *symmetric,
623 TPMI_ALG_HASH authHash);
624
625TSS2_RC
626Esys_StartAuthSession_Finish(
627 ESYS_CONTEXT *esysContext,
628 ESYS_TR *sessionHandle);
629
630/* Table 17 - TPM2_PolicyRestart Command */
631
632TSS2_RC
634 ESYS_CONTEXT *esysContext,
635 ESYS_TR sessionHandle,
636 ESYS_TR shandle1,
637 ESYS_TR shandle2,
638 ESYS_TR shandle3);
639
640TSS2_RC
642 ESYS_CONTEXT *esysContext,
643 ESYS_TR sessionHandle,
644 ESYS_TR shandle1,
645 ESYS_TR shandle2,
646 ESYS_TR shandle3);
647
648TSS2_RC
650 ESYS_CONTEXT *esysContext);
651
652/* Table 19 - TPM2_Create Command */
653
654TSS2_RC
656 ESYS_CONTEXT *esysContext,
657 ESYS_TR parentHandle,
658 ESYS_TR shandle1,
659 ESYS_TR shandle2,
660 ESYS_TR shandle3,
661 const TPM2B_SENSITIVE_CREATE *inSensitive,
662 const TPM2B_PUBLIC *inPublic,
663 const TPM2B_DATA *outsideInfo,
664 const TPML_PCR_SELECTION *creationPCR,
665 TPM2B_PRIVATE **outPrivate,
666 TPM2B_PUBLIC **outPublic,
667 TPM2B_CREATION_DATA **creationData,
668 TPM2B_DIGEST **creationHash,
669 TPMT_TK_CREATION **creationTicket);
670
671TSS2_RC
673 ESYS_CONTEXT *esysContext,
674 ESYS_TR parentHandle,
675 ESYS_TR shandle1,
676 ESYS_TR shandle2,
677 ESYS_TR shandle3,
678 const TPM2B_SENSITIVE_CREATE *inSensitive,
679 const TPM2B_PUBLIC *inPublic,
680 const TPM2B_DATA *outsideInfo,
681 const TPML_PCR_SELECTION *creationPCR);
682
683TSS2_RC
685 ESYS_CONTEXT *esysContext,
686 TPM2B_PRIVATE **outPrivate,
687 TPM2B_PUBLIC **outPublic,
688 TPM2B_CREATION_DATA **creationData,
689 TPM2B_DIGEST **creationHash,
690 TPMT_TK_CREATION **creationTicket);
691
692/* Table 21 - TPM2_Load Command */
693
694TSS2_RC
696 ESYS_CONTEXT *esysContext,
697 ESYS_TR parentHandle,
698 ESYS_TR shandle1,
699 ESYS_TR shandle2,
700 ESYS_TR shandle3,
701 const TPM2B_PRIVATE *inPrivate,
702 const TPM2B_PUBLIC *inPublic,
703 ESYS_TR *objectHandle);
704
705TSS2_RC
707 ESYS_CONTEXT *esysContext,
708 ESYS_TR parentHandle,
709 ESYS_TR shandle1,
710 ESYS_TR shandle2,
711 ESYS_TR shandle3,
712 const TPM2B_PRIVATE *inPrivate,
713 const TPM2B_PUBLIC *inPublic);
714
715TSS2_RC
717 ESYS_CONTEXT *esysContext,
718 ESYS_TR *objectHandle);
719
720/* Table 23 - TPM2_LoadExternal Command */
721
722TSS2_RC
723Esys_LoadExternal(
724 ESYS_CONTEXT *esysContext,
725 ESYS_TR shandle1,
726 ESYS_TR shandle2,
727 ESYS_TR shandle3,
728 const TPM2B_SENSITIVE *inPrivate,
729 const TPM2B_PUBLIC *inPublic,
730 ESYS_TR hierarchy,
731 ESYS_TR *objectHandle);
732
733TSS2_RC
734Esys_LoadExternal_Async(
735 ESYS_CONTEXT *esysContext,
736 ESYS_TR shandle1,
737 ESYS_TR shandle2,
738 ESYS_TR shandle3,
739 const TPM2B_SENSITIVE *inPrivate,
740 const TPM2B_PUBLIC *inPublic,
741 ESYS_TR hierarchy);
742
743TSS2_RC
745 ESYS_CONTEXT *esysContext,
746 ESYS_TR *objectHandle);
747
748/* Table 25 - TPM2_ReadPublic Command */
749
750TSS2_RC
752 ESYS_CONTEXT *esysContext,
753 ESYS_TR objectHandle,
754 ESYS_TR shandle1,
755 ESYS_TR shandle2,
756 ESYS_TR shandle3,
757 TPM2B_PUBLIC **outPublic,
758 TPM2B_NAME **name,
759 TPM2B_NAME **qualifiedName);
760
761TSS2_RC
763 ESYS_CONTEXT *esysContext,
764 ESYS_TR objectHandle,
765 ESYS_TR shandle1,
766 ESYS_TR shandle2,
767 ESYS_TR shandle3);
768
769TSS2_RC
771 ESYS_CONTEXT *esysContext,
772 TPM2B_PUBLIC **outPublic,
773 TPM2B_NAME **name,
774 TPM2B_NAME **qualifiedName);
775
776/* Table 27 - TPM2_ActivateCredential Command */
777
778TSS2_RC
780 ESYS_CONTEXT *esysContext,
781 ESYS_TR activateHandle,
782 ESYS_TR keyHandle,
783 ESYS_TR shandle1,
784 ESYS_TR shandle2,
785 ESYS_TR shandle3,
786 const TPM2B_ID_OBJECT *credentialBlob,
787 const TPM2B_ENCRYPTED_SECRET *secret,
788 TPM2B_DIGEST **certInfo);
789
790TSS2_RC
792 ESYS_CONTEXT *esysContext,
793 ESYS_TR activateHandle,
794 ESYS_TR keyHandle,
795 ESYS_TR shandle1,
796 ESYS_TR shandle2,
797 ESYS_TR shandle3,
798 const TPM2B_ID_OBJECT *credentialBlob,
799 const TPM2B_ENCRYPTED_SECRET *secret);
800
801TSS2_RC
803 ESYS_CONTEXT *esysContext,
804 TPM2B_DIGEST **certInfo);
805
806TSS2_RC
807Esys_ACT_SetTimeout(
808 ESYS_CONTEXT *esysContext,
809 ESYS_TR actHandle,
810 ESYS_TR shandle1,
811 ESYS_TR shandle2,
812 ESYS_TR shandle3,
813 UINT32 startTimeout);
814
815TSS2_RC
816Esys_ACT_SetTimeout_Async(
817 ESYS_CONTEXT *esysContext,
818 ESYS_TR actHandle,
819 ESYS_TR shandle1,
820 ESYS_TR shandle2,
821 ESYS_TR shandle3,
822 UINT32 startTimeout);
823
824TSS2_RC
825Esys_ACT_SetTimeout_Finish(
826 ESYS_CONTEXT *esysContext);
827
828TSS2_RC
829Esys_AC_GetCapability_Async(
830 ESYS_CONTEXT *esysContext,
831 ESYS_TR optionalSession1,
832 ESYS_TR optionalSession2,
833 ESYS_TR optionalSession3,
834 ESYS_TR ac,
835 TPM_AT capability,
836 UINT32 count);
837
838TSS2_RC
839Esys_AC_GetCapability_Finish(
840 ESYS_CONTEXT *esysContext,
841 TPMI_YES_NO *moreData,
842 TPML_AC_CAPABILITIES **capabilityData);
843
844TSS2_RC
845Esys_AC_GetCapability(
846 ESYS_CONTEXT *esysContext,
847 ESYS_TR optionalSession1,
848 ESYS_TR optionalSession2,
849 ESYS_TR optionalSession3,
850 ESYS_TR ac,
851 TPM_AT capability,
852 UINT32 count,
853 TPMI_YES_NO *moreData,
854 TPML_AC_CAPABILITIES **capabilityData);
855
856TSS2_RC
857Esys_AC_Send_Async(
858 ESYS_CONTEXT *esysContext,
859 ESYS_TR sendObject,
860 ESYS_TR nvAuthHandle,
861 ESYS_TR optionalSession1,
862 ESYS_TR optionalSession2,
863 ESYS_TR optionalSession3,
864 ESYS_TR ac,
865 TPM2B_MAX_BUFFER *acDataIn);
866
867TSS2_RC
868Esys_AC_Send_Finish(
869 ESYS_CONTEXT *esysContext,
870 TPMS_AC_OUTPUT **acDataOut);
871
872TSS2_RC
873Esys_AC_Send(
874 ESYS_CONTEXT *esysContext,
875 ESYS_TR sendObject,
876 ESYS_TR nvAuthHandle,
877 ESYS_TR optionalSession1,
878 ESYS_TR optionalSession2,
879 ESYS_TR optionalSession3,
880 ESYS_TR ac,
881 TPM2B_MAX_BUFFER *acDataIn,
882 TPMS_AC_OUTPUT **acDataOut);
883
884TSS2_RC
885Esys_Policy_AC_SendSelect_Async(
886 ESYS_CONTEXT *esysContext,
887 ESYS_TR policySession1,
888 ESYS_TR optionalSession2,
889 ESYS_TR optionalSession3,
890 TPM2B_NAME *objectName,
891 TPM2B_NAME *authHandleName,
892 TPM2B_NAME *acName,
893 const TPMI_YES_NO includeObject);
894
895TSS2_RC
896Esys_Policy_AC_SendSelect_Finish(
897 ESYS_CONTEXT *esysContext);
898
899TSS2_RC
900Esys_Policy_AC_SendSelect(
901 ESYS_CONTEXT *esysContext,
902 ESYS_TR policySession1,
903 ESYS_TR optionalSession2,
904 ESYS_TR optionalSession3,
905 TPM2B_NAME *objectName,
906 TPM2B_NAME *authHandleName,
907 TPM2B_NAME *acName,
908 TPMI_YES_NO includeObject);
909
910/* Table 29 - TPM2_MakeCredential Command */
911
912TSS2_RC
914 ESYS_CONTEXT *esysContext,
915 ESYS_TR handle,
916 ESYS_TR shandle1,
917 ESYS_TR shandle2,
918 ESYS_TR shandle3,
919 const TPM2B_DIGEST *credential,
920 const TPM2B_NAME *objectName,
921 TPM2B_ID_OBJECT **credentialBlob,
922 TPM2B_ENCRYPTED_SECRET **secret);
923
924TSS2_RC
926 ESYS_CONTEXT *esysContext,
927 ESYS_TR handle,
928 ESYS_TR shandle1,
929 ESYS_TR shandle2,
930 ESYS_TR shandle3,
931 const TPM2B_DIGEST *credential,
932 const TPM2B_NAME *objectName);
933
934TSS2_RC
936 ESYS_CONTEXT *esysContext,
937 TPM2B_ID_OBJECT **credentialBlob,
938 TPM2B_ENCRYPTED_SECRET **secret);
939
940/* Table 31 - TPM2_Unseal Command */
941
942TSS2_RC
944 ESYS_CONTEXT *esysContext,
945 ESYS_TR itemHandle,
946 ESYS_TR shandle1,
947 ESYS_TR shandle2,
948 ESYS_TR shandle3,
949 TPM2B_SENSITIVE_DATA **outData);
950
951TSS2_RC
953 ESYS_CONTEXT *esysContext,
954 ESYS_TR itemHandle,
955 ESYS_TR shandle1,
956 ESYS_TR shandle2,
957 ESYS_TR shandle3);
958
959TSS2_RC
961 ESYS_CONTEXT *esysContext,
962 TPM2B_SENSITIVE_DATA **outData);
963
964/* Table 33 - TPM2_ObjectChangeAuth Command */
965
966TSS2_RC
968 ESYS_CONTEXT *esysContext,
969 ESYS_TR objectHandle,
970 ESYS_TR parentHandle,
971 ESYS_TR shandle1,
972 ESYS_TR shandle2,
973 ESYS_TR shandle3,
974 const TPM2B_AUTH *newAuth,
975 TPM2B_PRIVATE **outPrivate);
976
977TSS2_RC
979 ESYS_CONTEXT *esysContext,
980 ESYS_TR objectHandle,
981 ESYS_TR parentHandle,
982 ESYS_TR shandle1,
983 ESYS_TR shandle2,
984 ESYS_TR shandle3,
985 const TPM2B_AUTH *newAuth);
986
987TSS2_RC
989 ESYS_CONTEXT *esysContext,
990 TPM2B_PRIVATE **outPrivate);
991
992/* Table 35 - TPM2_CreateLoaded Command */
993
994TSS2_RC
995Esys_CreateLoaded(
996 ESYS_CONTEXT *esysContext,
997 ESYS_TR parentHandle,
998 ESYS_TR shandle1,
999 ESYS_TR shandle2,
1000 ESYS_TR shandle3,
1001 const TPM2B_SENSITIVE_CREATE *inSensitive,
1002 const TPM2B_TEMPLATE *inPublic,
1003 ESYS_TR *objectHandle,
1004 TPM2B_PRIVATE **outPrivate,
1005 TPM2B_PUBLIC **outPublic);
1006
1007TSS2_RC
1008Esys_CreateLoaded_Async(
1009 ESYS_CONTEXT *esysContext,
1010 ESYS_TR parentHandle,
1011 ESYS_TR shandle1,
1012 ESYS_TR shandle2,
1013 ESYS_TR shandle3,
1014 const TPM2B_SENSITIVE_CREATE *inSensitive,
1015 const TPM2B_TEMPLATE *inPublic);
1016
1017TSS2_RC
1018Esys_CreateLoaded_Finish(
1019 ESYS_CONTEXT *esysContext,
1020 ESYS_TR *objectHandle,
1021 TPM2B_PRIVATE **outPrivate,
1022 TPM2B_PUBLIC **outPublic);
1023
1024/* Table 37 - TPM2_Duplicate Command */
1025
1026TSS2_RC
1028 ESYS_CONTEXT *esysContext,
1029 ESYS_TR objectHandle,
1030 ESYS_TR newParentHandle,
1031 ESYS_TR shandle1,
1032 ESYS_TR shandle2,
1033 ESYS_TR shandle3,
1034 const TPM2B_DATA *encryptionKeyIn,
1035 const TPMT_SYM_DEF_OBJECT *symmetricAlg,
1036 TPM2B_DATA **encryptionKeyOut,
1037 TPM2B_PRIVATE **duplicate,
1038 TPM2B_ENCRYPTED_SECRET **outSymSeed);
1039
1040TSS2_RC
1042 ESYS_CONTEXT *esysContext,
1043 ESYS_TR objectHandle,
1044 ESYS_TR newParentHandle,
1045 ESYS_TR shandle1,
1046 ESYS_TR shandle2,
1047 ESYS_TR shandle3,
1048 const TPM2B_DATA *encryptionKeyIn,
1049 const TPMT_SYM_DEF_OBJECT *symmetricAlg);
1050
1051TSS2_RC
1053 ESYS_CONTEXT *esysContext,
1054 TPM2B_DATA **encryptionKeyOut,
1055 TPM2B_PRIVATE **duplicate,
1056 TPM2B_ENCRYPTED_SECRET **outSymSeed);
1057
1058/* Table 39 - TPM2_Rewrap Command */
1059
1060TSS2_RC
1062 ESYS_CONTEXT *esysContext,
1063 ESYS_TR oldParent,
1064 ESYS_TR newParent,
1065 ESYS_TR shandle1,
1066 ESYS_TR shandle2,
1067 ESYS_TR shandle3,
1068 const TPM2B_PRIVATE *inDuplicate,
1069 const TPM2B_NAME *name,
1070 const TPM2B_ENCRYPTED_SECRET *inSymSeed,
1071 TPM2B_PRIVATE **outDuplicate,
1072 TPM2B_ENCRYPTED_SECRET **outSymSeed);
1073
1074TSS2_RC
1076 ESYS_CONTEXT *esysContext,
1077 ESYS_TR oldParent,
1078 ESYS_TR newParent,
1079 ESYS_TR shandle1,
1080 ESYS_TR shandle2,
1081 ESYS_TR shandle3,
1082 const TPM2B_PRIVATE *inDuplicate,
1083 const TPM2B_NAME *name,
1084 const TPM2B_ENCRYPTED_SECRET *inSymSeed);
1085
1086TSS2_RC
1088 ESYS_CONTEXT *esysContext,
1089 TPM2B_PRIVATE **outDuplicate,
1090 TPM2B_ENCRYPTED_SECRET **outSymSeed);
1091
1092/* Table 41 - TPM2_Import Command */
1093
1094TSS2_RC
1096 ESYS_CONTEXT *esysContext,
1097 ESYS_TR parentHandle,
1098 ESYS_TR shandle1,
1099 ESYS_TR shandle2,
1100 ESYS_TR shandle3,
1101 const TPM2B_DATA *encryptionKey,
1102 const TPM2B_PUBLIC *objectPublic,
1103 const TPM2B_PRIVATE *duplicate,
1104 const TPM2B_ENCRYPTED_SECRET *inSymSeed,
1105 const TPMT_SYM_DEF_OBJECT *symmetricAlg,
1106 TPM2B_PRIVATE **outPrivate);
1107
1108TSS2_RC
1110 ESYS_CONTEXT *esysContext,
1111 ESYS_TR parentHandle,
1112 ESYS_TR shandle1,
1113 ESYS_TR shandle2,
1114 ESYS_TR shandle3,
1115 const TPM2B_DATA *encryptionKey,
1116 const TPM2B_PUBLIC *objectPublic,
1117 const TPM2B_PRIVATE *duplicate,
1118 const TPM2B_ENCRYPTED_SECRET *inSymSeed,
1119 const TPMT_SYM_DEF_OBJECT *symmetricAlg);
1120
1121TSS2_RC
1123 ESYS_CONTEXT *esysContext,
1124 TPM2B_PRIVATE **outPrivate);
1125
1126/* Table 45 - TPM2_RSA_Encrypt Command */
1127
1128TSS2_RC
1130 ESYS_CONTEXT *esysContext,
1131 ESYS_TR keyHandle,
1132 ESYS_TR shandle1,
1133 ESYS_TR shandle2,
1134 ESYS_TR shandle3,
1135 const TPM2B_PUBLIC_KEY_RSA *message,
1136 const TPMT_RSA_DECRYPT *inScheme,
1137 const TPM2B_DATA *label,
1138 TPM2B_PUBLIC_KEY_RSA **outData);
1139
1140TSS2_RC
1142 ESYS_CONTEXT *esysContext,
1143 ESYS_TR keyHandle,
1144 ESYS_TR shandle1,
1145 ESYS_TR shandle2,
1146 ESYS_TR shandle3,
1147 const TPM2B_PUBLIC_KEY_RSA *message,
1148 const TPMT_RSA_DECRYPT *inScheme,
1149 const TPM2B_DATA *label);
1150
1151TSS2_RC
1153 ESYS_CONTEXT *esysContext,
1154 TPM2B_PUBLIC_KEY_RSA **outData);
1155
1156/* Table 47 - TPM2_RSA_Decrypt Command */
1157
1158TSS2_RC
1160 ESYS_CONTEXT *esysContext,
1161 ESYS_TR keyHandle,
1162 ESYS_TR shandle1,
1163 ESYS_TR shandle2,
1164 ESYS_TR shandle3,
1165 const TPM2B_PUBLIC_KEY_RSA *cipherText,
1166 const TPMT_RSA_DECRYPT *inScheme,
1167 const TPM2B_DATA *label,
1168 TPM2B_PUBLIC_KEY_RSA **message);
1169
1170TSS2_RC
1172 ESYS_CONTEXT *esysContext,
1173 ESYS_TR keyHandle,
1174 ESYS_TR shandle1,
1175 ESYS_TR shandle2,
1176 ESYS_TR shandle3,
1177 const TPM2B_PUBLIC_KEY_RSA *cipherText,
1178 const TPMT_RSA_DECRYPT *inScheme,
1179 const TPM2B_DATA *label);
1180
1181TSS2_RC
1183 ESYS_CONTEXT *esysContext,
1184 TPM2B_PUBLIC_KEY_RSA **message);
1185
1186/* Table 49 - TPM2_ECDH_KeyGen Command */
1187
1188TSS2_RC
1190 ESYS_CONTEXT *esysContext,
1191 ESYS_TR keyHandle,
1192 ESYS_TR shandle1,
1193 ESYS_TR shandle2,
1194 ESYS_TR shandle3,
1195 TPM2B_ECC_POINT **zPoint,
1196 TPM2B_ECC_POINT **pubPoint);
1197
1198TSS2_RC
1200 ESYS_CONTEXT *esysContext,
1201 ESYS_TR keyHandle,
1202 ESYS_TR shandle1,
1203 ESYS_TR shandle2,
1204 ESYS_TR shandle3);
1205
1206TSS2_RC
1208 ESYS_CONTEXT *esysContext,
1209 TPM2B_ECC_POINT **zPoint,
1210 TPM2B_ECC_POINT **pubPoint);
1211
1212/* Table 51 - TPM2_ECDH_ZGen Command */
1213
1214TSS2_RC
1216 ESYS_CONTEXT *esysContext,
1217 ESYS_TR keyHandle,
1218 ESYS_TR shandle1,
1219 ESYS_TR shandle2,
1220 ESYS_TR shandle3,
1221 const TPM2B_ECC_POINT *inPoint,
1222 TPM2B_ECC_POINT **outPoint);
1223
1224TSS2_RC
1226 ESYS_CONTEXT *esysContext,
1227 ESYS_TR keyHandle,
1228 ESYS_TR shandle1,
1229 ESYS_TR shandle2,
1230 ESYS_TR shandle3,
1231 const TPM2B_ECC_POINT *inPoint);
1232
1233TSS2_RC
1235 ESYS_CONTEXT *esysContext,
1236 TPM2B_ECC_POINT **outPoint);
1237
1238/* Table 53 - TPM2_ECC_Parameters Command */
1239
1240TSS2_RC
1242 ESYS_CONTEXT *esysContext,
1243 ESYS_TR shandle1,
1244 ESYS_TR shandle2,
1245 ESYS_TR shandle3,
1246 TPMI_ECC_CURVE curveID,
1247 TPMS_ALGORITHM_DETAIL_ECC **parameters);
1248
1249TSS2_RC
1251 ESYS_CONTEXT *esysContext,
1252 ESYS_TR shandle1,
1253 ESYS_TR shandle2,
1254 ESYS_TR shandle3,
1255 TPMI_ECC_CURVE curveID);
1256
1257TSS2_RC
1259 ESYS_CONTEXT *esysContext,
1260 TPMS_ALGORITHM_DETAIL_ECC **parameters);
1261
1262/* Table 55 - TPM2_ZGen_2Phase Command */
1263
1264TSS2_RC
1266 ESYS_CONTEXT *esysContext,
1267 ESYS_TR keyA,
1268 ESYS_TR shandle1,
1269 ESYS_TR shandle2,
1270 ESYS_TR shandle3,
1271 const TPM2B_ECC_POINT *inQsB,
1272 const TPM2B_ECC_POINT *inQeB,
1273 TPMI_ECC_KEY_EXCHANGE inScheme,
1274 UINT16 counter,
1275 TPM2B_ECC_POINT **outZ1,
1276 TPM2B_ECC_POINT **outZ2);
1277
1278TSS2_RC
1280 ESYS_CONTEXT *esysContext,
1281 ESYS_TR keyA,
1282 ESYS_TR shandle1,
1283 ESYS_TR shandle2,
1284 ESYS_TR shandle3,
1285 const TPM2B_ECC_POINT *inQsB,
1286 const TPM2B_ECC_POINT *inQeB,
1287 TPMI_ECC_KEY_EXCHANGE inScheme,
1288 UINT16 counter);
1289
1290TSS2_RC
1292 ESYS_CONTEXT *esysContext,
1293 TPM2B_ECC_POINT **outZ1,
1294 TPM2B_ECC_POINT **outZ2);
1295
1296/* Table 58 - TPM2_EncryptDecrypt Command */
1297
1298TSS2_RC
1300 ESYS_CONTEXT *esysContext,
1301 ESYS_TR keyHandle,
1302 ESYS_TR shandle1,
1303 ESYS_TR shandle2,
1304 ESYS_TR shandle3,
1305 TPMI_YES_NO decrypt,
1306 TPMI_ALG_CIPHER_MODE mode,
1307 const TPM2B_IV *ivIn,
1308 const TPM2B_MAX_BUFFER *inData,
1309 TPM2B_MAX_BUFFER **outData,
1310 TPM2B_IV **ivOut);
1311
1312TSS2_RC
1314 ESYS_CONTEXT *esysContext,
1315 ESYS_TR keyHandle,
1316 ESYS_TR shandle1,
1317 ESYS_TR shandle2,
1318 ESYS_TR shandle3,
1319 TPMI_YES_NO decrypt,
1320 TPMI_ALG_CIPHER_MODE mode,
1321 const TPM2B_IV *ivIn,
1322 const TPM2B_MAX_BUFFER *inData);
1323
1324TSS2_RC
1326 ESYS_CONTEXT *esysContext,
1327 TPM2B_MAX_BUFFER **outData,
1328 TPM2B_IV **ivOut);
1329
1330/* Table 60 - TPM2_EncryptDecrypt2 Command */
1331
1332TSS2_RC
1333Esys_EncryptDecrypt2(
1334 ESYS_CONTEXT *esysContext,
1335 ESYS_TR keyHandle,
1336 ESYS_TR shandle1,
1337 ESYS_TR shandle2,
1338 ESYS_TR shandle3,
1339 const TPM2B_MAX_BUFFER *inData,
1340 TPMI_YES_NO decrypt,
1341 TPMI_ALG_CIPHER_MODE mode,
1342 const TPM2B_IV *ivIn,
1343 TPM2B_MAX_BUFFER **outData,
1344 TPM2B_IV **ivOut);
1345
1346TSS2_RC
1347Esys_EncryptDecrypt2_Async(
1348 ESYS_CONTEXT *esysContext,
1349 ESYS_TR keyHandle,
1350 ESYS_TR shandle1,
1351 ESYS_TR shandle2,
1352 ESYS_TR shandle3,
1353 const TPM2B_MAX_BUFFER *inData,
1354 TPMI_YES_NO decrypt,
1355 TPMI_ALG_CIPHER_MODE mode,
1356 const TPM2B_IV *ivIn);
1357
1358TSS2_RC
1359Esys_EncryptDecrypt2_Finish(
1360 ESYS_CONTEXT *esysContext,
1361 TPM2B_MAX_BUFFER **outData,
1362 TPM2B_IV **ivOut);
1363
1364/* Table 62 - TPM2_Hash Command */
1365
1366TSS2_RC
1367Esys_Hash(
1368 ESYS_CONTEXT *esysContext,
1369 ESYS_TR shandle1,
1370 ESYS_TR shandle2,
1371 ESYS_TR shandle3,
1372 const TPM2B_MAX_BUFFER *data,
1373 TPMI_ALG_HASH hashAlg,
1374 ESYS_TR hierarchy,
1375 TPM2B_DIGEST **outHash,
1376 TPMT_TK_HASHCHECK **validation);
1377
1378TSS2_RC
1379Esys_Hash_Async(
1380 ESYS_CONTEXT *esysContext,
1381 ESYS_TR shandle1,
1382 ESYS_TR shandle2,
1383 ESYS_TR shandle3,
1384 const TPM2B_MAX_BUFFER *data,
1385 TPMI_ALG_HASH hashAlg,
1386 ESYS_TR hierarchy);
1387
1388TSS2_RC
1390 ESYS_CONTEXT *esysContext,
1391 TPM2B_DIGEST **outHash,
1392 TPMT_TK_HASHCHECK **validation);
1393
1394/* Table 64 - TPM2_HMAC Command */
1395
1396TSS2_RC
1397Esys_HMAC(
1398 ESYS_CONTEXT *esysContext,
1399 ESYS_TR handle,
1400 ESYS_TR shandle1,
1401 ESYS_TR shandle2,
1402 ESYS_TR shandle3,
1403 const TPM2B_MAX_BUFFER *buffer,
1404 TPMI_ALG_HASH hashAlg,
1405 TPM2B_DIGEST **outHMAC);
1406
1407TSS2_RC
1409 ESYS_CONTEXT *esysContext,
1410 ESYS_TR handle,
1411 ESYS_TR shandle1,
1412 ESYS_TR shandle2,
1413 ESYS_TR shandle3,
1414 const TPM2B_MAX_BUFFER *buffer,
1415 TPMI_ALG_HASH hashAlg);
1416
1417TSS2_RC
1419 ESYS_CONTEXT *esysContext,
1420 TPM2B_DIGEST **outHMAC);
1421
1422TSS2_RC
1423Esys_MAC_Async(
1424 ESYS_CONTEXT *esysContext,
1425 ESYS_TR handle,
1426 ESYS_TR handleSession1,
1427 ESYS_TR optionalSession2,
1428 ESYS_TR optionalSession3,
1429 const TPM2B_MAX_BUFFER *buffer,
1430 TPMI_ALG_MAC_SCHEME inScheme);
1431
1432TSS2_RC
1433Esys_MAC_Finish(
1434 ESYS_CONTEXT *esysContext,
1435 TPM2B_DIGEST **outMAC);
1436
1437TSS2_RC
1438Esys_MAC(
1439 ESYS_CONTEXT *esysContext,
1440 ESYS_TR handle,
1441 ESYS_TR handleSession1,
1442 ESYS_TR optionalSession2,
1443 ESYS_TR optionalSession3,
1444 const TPM2B_MAX_BUFFER *buffer,
1445 TPMI_ALG_MAC_SCHEME inScheme,
1446 TPM2B_DIGEST **outMAC);
1447
1448/* Table 66 - TPM2_GetRandom Command */
1449
1450TSS2_RC
1452 ESYS_CONTEXT *esysContext,
1453 ESYS_TR shandle1,
1454 ESYS_TR shandle2,
1455 ESYS_TR shandle3,
1456 UINT16 bytesRequested,
1457 TPM2B_DIGEST **randomBytes);
1458
1459TSS2_RC
1461 ESYS_CONTEXT *esysContext,
1462 ESYS_TR shandle1,
1463 ESYS_TR shandle2,
1464 ESYS_TR shandle3,
1465 UINT16 bytesRequested);
1466
1467TSS2_RC
1469 ESYS_CONTEXT *esysContext,
1470 TPM2B_DIGEST **randomBytes);
1471
1472/* Table 68 - TPM2_StirRandom Command */
1473
1474TSS2_RC
1476 ESYS_CONTEXT *esysContext,
1477 ESYS_TR shandle1,
1478 ESYS_TR shandle2,
1479 ESYS_TR shandle3,
1480 const TPM2B_SENSITIVE_DATA *inData);
1481
1482TSS2_RC
1484 ESYS_CONTEXT *esysContext,
1485 ESYS_TR shandle1,
1486 ESYS_TR shandle2,
1487 ESYS_TR shandle3,
1488 const TPM2B_SENSITIVE_DATA *inData);
1489
1490TSS2_RC
1492 ESYS_CONTEXT *esysContext);
1493
1494/* Table 71 - TPM2_HMAC_Start Command */
1495
1496TSS2_RC
1498 ESYS_CONTEXT *esysContext,
1499 ESYS_TR handle,
1500 ESYS_TR shandle1,
1501 ESYS_TR shandle2,
1502 ESYS_TR shandle3,
1503 const TPM2B_AUTH *auth,
1504 TPMI_ALG_HASH hashAlg,
1505 ESYS_TR *sequenceHandle);
1506
1507TSS2_RC
1509 ESYS_CONTEXT *esysContext,
1510 ESYS_TR handle,
1511 ESYS_TR shandle1,
1512 ESYS_TR shandle2,
1513 ESYS_TR shandle3,
1514 const TPM2B_AUTH *auth,
1515 TPMI_ALG_HASH hashAlg);
1516
1517TSS2_RC
1519 ESYS_CONTEXT *esysContext,
1520 ESYS_TR *sequenceHandle);
1521
1522TSS2_RC
1523Esys_MAC_Start(
1524 ESYS_CONTEXT *esysContext,
1525 ESYS_TR handle,
1526 ESYS_TR handleSession1,
1527 ESYS_TR optionalSession2,
1528 ESYS_TR optionalSession3,
1529 const TPM2B_AUTH *auth,
1530 TPMI_ALG_MAC_SCHEME inScheme,
1531 ESYS_TR *sequenceHandle);
1532
1533TSS2_RC
1534Esys_MAC_Start_Async(
1535 ESYS_CONTEXT *esysContext,
1536 ESYS_TR handle,
1537 ESYS_TR handleSession1,
1538 ESYS_TR optionalSession2,
1539 ESYS_TR optionalSession3,
1540 const TPM2B_AUTH *auth,
1541 TPMI_ALG_MAC_SCHEME inScheme);
1542
1543TSS2_RC
1544Esys_MAC_Start_Finish(
1545 ESYS_CONTEXT *esysContext,
1546 ESYS_TR *sequenceHandle);
1547
1548/* Table 73 - TPM2_HashSequenceStart Command */
1549
1550TSS2_RC
1552 ESYS_CONTEXT *esysContext,
1553 ESYS_TR shandle1,
1554 ESYS_TR shandle2,
1555 ESYS_TR shandle3,
1556 const TPM2B_AUTH *auth,
1557 TPMI_ALG_HASH hashAlg,
1558 ESYS_TR *sequenceHandle);
1559
1560TSS2_RC
1562 ESYS_CONTEXT *esysContext,
1563 ESYS_TR shandle1,
1564 ESYS_TR shandle2,
1565 ESYS_TR shandle3,
1566 const TPM2B_AUTH *auth,
1567 TPMI_ALG_HASH hashAlg);
1568
1569TSS2_RC
1571 ESYS_CONTEXT *esysContext,
1572 ESYS_TR *sequenceHandle);
1573
1574/* Table 75 - TPM2_SequenceUpdate Command */
1575
1576TSS2_RC
1578 ESYS_CONTEXT *esysContext,
1579 ESYS_TR sequenceHandle,
1580 ESYS_TR shandle1,
1581 ESYS_TR shandle2,
1582 ESYS_TR shandle3,
1583 const TPM2B_MAX_BUFFER *buffer);
1584
1585TSS2_RC
1587 ESYS_CONTEXT *esysContext,
1588 ESYS_TR sequenceHandle,
1589 ESYS_TR shandle1,
1590 ESYS_TR shandle2,
1591 ESYS_TR shandle3,
1592 const TPM2B_MAX_BUFFER *buffer);
1593
1594TSS2_RC
1596 ESYS_CONTEXT *esysContext);
1597
1598/* Table 77 - TPM2_SequenceComplete Command */
1599
1600TSS2_RC
1601Esys_SequenceComplete(
1602 ESYS_CONTEXT *esysContext,
1603 ESYS_TR sequenceHandle,
1604 ESYS_TR shandle1,
1605 ESYS_TR shandle2,
1606 ESYS_TR shandle3,
1607 const TPM2B_MAX_BUFFER *buffer,
1608 ESYS_TR hierarchy,
1609 TPM2B_DIGEST **result,
1610 TPMT_TK_HASHCHECK **validation);
1611
1612TSS2_RC
1613Esys_SequenceComplete_Async(
1614 ESYS_CONTEXT *esysContext,
1615 ESYS_TR sequenceHandle,
1616 ESYS_TR shandle1,
1617 ESYS_TR shandle2,
1618 ESYS_TR shandle3,
1619 const TPM2B_MAX_BUFFER *buffer,
1620 ESYS_TR hierarchy);
1621
1622TSS2_RC
1624 ESYS_CONTEXT *esysContext,
1625 TPM2B_DIGEST **result,
1626 TPMT_TK_HASHCHECK **validation);
1627
1628/* Table 79 - TPM2_EventSequenceComplete Command */
1629
1630TSS2_RC
1632 ESYS_CONTEXT *esysContext,
1633 ESYS_TR pcrHandle,
1634 ESYS_TR sequenceHandle,
1635 ESYS_TR shandle1,
1636 ESYS_TR shandle2,
1637 ESYS_TR shandle3,
1638 const TPM2B_MAX_BUFFER *buffer,
1639 TPML_DIGEST_VALUES **results);
1640
1641TSS2_RC
1643 ESYS_CONTEXT *esysContext,
1644 ESYS_TR pcrHandle,
1645 ESYS_TR sequenceHandle,
1646 ESYS_TR shandle1,
1647 ESYS_TR shandle2,
1648 ESYS_TR shandle3,
1649 const TPM2B_MAX_BUFFER *buffer);
1650
1651TSS2_RC
1653 ESYS_CONTEXT *esysContext,
1654 TPML_DIGEST_VALUES **results);
1655
1656/* Table 81 - TPM2_Certify Command */
1657
1658TSS2_RC
1660 ESYS_CONTEXT *esysContext,
1661 ESYS_TR objectHandle,
1662 ESYS_TR signHandle,
1663 ESYS_TR shandle1,
1664 ESYS_TR shandle2,
1665 ESYS_TR shandle3,
1666 const TPM2B_DATA *qualifyingData,
1667 const TPMT_SIG_SCHEME *inScheme,
1668 TPM2B_ATTEST **certifyInfo,
1669 TPMT_SIGNATURE **signature);
1670
1671TSS2_RC
1673 ESYS_CONTEXT *esysContext,
1674 ESYS_TR objectHandle,
1675 ESYS_TR signHandle,
1676 ESYS_TR shandle1,
1677 ESYS_TR shandle2,
1678 ESYS_TR shandle3,
1679 const TPM2B_DATA *qualifyingData,
1680 const TPMT_SIG_SCHEME *inScheme);
1681
1682TSS2_RC
1684 ESYS_CONTEXT *esysContext,
1685 TPM2B_ATTEST **certifyInfo,
1686 TPMT_SIGNATURE **signature);
1687
1688/* Table 83 - TPM2_CertifyCreation Command */
1689
1690TSS2_RC
1692 ESYS_CONTEXT *esysContext,
1693 ESYS_TR signHandle,
1694 ESYS_TR objectHandle,
1695 ESYS_TR shandle1,
1696 ESYS_TR shandle2,
1697 ESYS_TR shandle3,
1698 const TPM2B_DATA *qualifyingData,
1699 const TPM2B_DIGEST *creationHash,
1700 const TPMT_SIG_SCHEME *inScheme,
1701 const TPMT_TK_CREATION *creationTicket,
1702 TPM2B_ATTEST **certifyInfo,
1703 TPMT_SIGNATURE **signature);
1704
1705TSS2_RC
1707 ESYS_CONTEXT *esysContext,
1708 ESYS_TR signHandle,
1709 ESYS_TR objectHandle,
1710 ESYS_TR shandle1,
1711 ESYS_TR shandle2,
1712 ESYS_TR shandle3,
1713 const TPM2B_DATA *qualifyingData,
1714 const TPM2B_DIGEST *creationHash,
1715 const TPMT_SIG_SCHEME *inScheme,
1716 const TPMT_TK_CREATION *creationTicket);
1717
1718TSS2_RC
1720 ESYS_CONTEXT *esysContext,
1721 TPM2B_ATTEST **certifyInfo,
1722 TPMT_SIGNATURE **signature);
1723
1724TSS2_RC
1725Esys_CertifyX509(
1726 ESYS_CONTEXT *esysContext,
1727 ESYS_TR objectHandle,
1728 ESYS_TR signHandle,
1729 ESYS_TR shandle1,
1730 ESYS_TR shandle2,
1731 ESYS_TR shandle3,
1732 const TPM2B_DATA *reserved,
1733 const TPMT_SIG_SCHEME *inScheme,
1734 const TPM2B_MAX_BUFFER *partialCertificate,
1735 TPM2B_MAX_BUFFER **addedToCertificate,
1736 TPM2B_DIGEST **tbsDigest,
1737 TPMT_SIGNATURE **signature);
1738
1739TSS2_RC
1740Esys_CertifyX509_Async(
1741 ESYS_CONTEXT *esysContext,
1742 ESYS_TR objectHandle,
1743 ESYS_TR signHandle,
1744 ESYS_TR shandle1,
1745 ESYS_TR shandle2,
1746 ESYS_TR shandle3,
1747 const TPM2B_DATA *reserved,
1748 const TPMT_SIG_SCHEME *inScheme,
1749 const TPM2B_MAX_BUFFER *partialCertificate);
1750
1751TSS2_RC
1752Esys_CertifyX509_Finish(
1753 ESYS_CONTEXT *esysContext,
1754 TPM2B_MAX_BUFFER **addedToCertificate,
1755 TPM2B_DIGEST **tbsDigest,
1756 TPMT_SIGNATURE **signature);
1757
1758/* Table 85 - TPM2_Quote Command */
1759
1760TSS2_RC
1762 ESYS_CONTEXT *esysContext,
1763 ESYS_TR signHandle,
1764 ESYS_TR shandle1,
1765 ESYS_TR shandle2,
1766 ESYS_TR shandle3,
1767 const TPM2B_DATA *qualifyingData,
1768 const TPMT_SIG_SCHEME *inScheme,
1769 const TPML_PCR_SELECTION *PCRselect,
1770 TPM2B_ATTEST **quoted,
1771 TPMT_SIGNATURE **signature);
1772
1773TSS2_RC
1775 ESYS_CONTEXT *esysContext,
1776 ESYS_TR signHandle,
1777 ESYS_TR shandle1,
1778 ESYS_TR shandle2,
1779 ESYS_TR shandle3,
1780 const TPM2B_DATA *qualifyingData,
1781 const TPMT_SIG_SCHEME *inScheme,
1782 const TPML_PCR_SELECTION *PCRselect);
1783
1784TSS2_RC
1786 ESYS_CONTEXT *esysContext,
1787 TPM2B_ATTEST **quoted,
1788 TPMT_SIGNATURE **signature);
1789
1790/* Table 87 - TPM2_GetSessionAuditDigest Command */
1791
1792TSS2_RC
1794 ESYS_CONTEXT *esysContext,
1795 ESYS_TR privacyAdminHandle,
1796 ESYS_TR signHandle,
1797 ESYS_TR sessionHandle,
1798 ESYS_TR shandle1,
1799 ESYS_TR shandle2,
1800 ESYS_TR shandle3,
1801 const TPM2B_DATA *qualifyingData,
1802 const TPMT_SIG_SCHEME *inScheme,
1803 TPM2B_ATTEST **auditInfo,
1804 TPMT_SIGNATURE **signature);
1805
1806TSS2_RC
1808 ESYS_CONTEXT *esysContext,
1809 ESYS_TR privacyAdminHandle,
1810 ESYS_TR signHandle,
1811 ESYS_TR sessionHandle,
1812 ESYS_TR shandle1,
1813 ESYS_TR shandle2,
1814 ESYS_TR shandle3,
1815 const TPM2B_DATA *qualifyingData,
1816 const TPMT_SIG_SCHEME *inScheme);
1817
1818TSS2_RC
1820 ESYS_CONTEXT *esysContext,
1821 TPM2B_ATTEST **auditInfo,
1822 TPMT_SIGNATURE **signature);
1823
1824/* Table 89 - TPM2_GetCommandAuditDigest Command */
1825
1826TSS2_RC
1828 ESYS_CONTEXT *esysContext,
1829 ESYS_TR privacyHandle,
1830 ESYS_TR signHandle,
1831 ESYS_TR shandle1,
1832 ESYS_TR shandle2,
1833 ESYS_TR shandle3,
1834 const TPM2B_DATA *qualifyingData,
1835 const TPMT_SIG_SCHEME *inScheme,
1836 TPM2B_ATTEST **auditInfo,
1837 TPMT_SIGNATURE **signature);
1838
1839TSS2_RC
1841 ESYS_CONTEXT *esysContext,
1842 ESYS_TR privacyHandle,
1843 ESYS_TR signHandle,
1844 ESYS_TR shandle1,
1845 ESYS_TR shandle2,
1846 ESYS_TR shandle3,
1847 const TPM2B_DATA *qualifyingData,
1848 const TPMT_SIG_SCHEME *inScheme);
1849
1850TSS2_RC
1852 ESYS_CONTEXT *esysContext,
1853 TPM2B_ATTEST **auditInfo,
1854 TPMT_SIGNATURE **signature);
1855
1856/* Table 91 - TPM2_GetTime Command */
1857
1858TSS2_RC
1860 ESYS_CONTEXT *esysContext,
1861 ESYS_TR privacyAdminHandle,
1862 ESYS_TR signHandle,
1863 ESYS_TR shandle1,
1864 ESYS_TR shandle2,
1865 ESYS_TR shandle3,
1866 const TPM2B_DATA *qualifyingData,
1867 const TPMT_SIG_SCHEME *inScheme,
1868 TPM2B_ATTEST **timeInfo,
1869 TPMT_SIGNATURE **signature);
1870
1871TSS2_RC
1873 ESYS_CONTEXT *esysContext,
1874 ESYS_TR privacyAdminHandle,
1875 ESYS_TR signHandle,
1876 ESYS_TR shandle1,
1877 ESYS_TR shandle2,
1878 ESYS_TR shandle3,
1879 const TPM2B_DATA *qualifyingData,
1880 const TPMT_SIG_SCHEME *inScheme);
1881
1882TSS2_RC
1884 ESYS_CONTEXT *esysContext,
1885 TPM2B_ATTEST **timeInfo,
1886 TPMT_SIGNATURE **signature);
1887
1888/* Table 93 - TPM2_Commit Command */
1889
1890TSS2_RC
1892 ESYS_CONTEXT *esysContext,
1893 ESYS_TR signHandle,
1894 ESYS_TR shandle1,
1895 ESYS_TR shandle2,
1896 ESYS_TR shandle3,
1897 const TPM2B_ECC_POINT *P1,
1898 const TPM2B_SENSITIVE_DATA *s2,
1899 const TPM2B_ECC_PARAMETER *y2,
1900 TPM2B_ECC_POINT **K,
1901 TPM2B_ECC_POINT **L,
1902 TPM2B_ECC_POINT **E,
1903 UINT16 *counter);
1904
1905TSS2_RC
1907 ESYS_CONTEXT *esysContext,
1908 ESYS_TR signHandle,
1909 ESYS_TR shandle1,
1910 ESYS_TR shandle2,
1911 ESYS_TR shandle3,
1912 const TPM2B_ECC_POINT *P1,
1913 const TPM2B_SENSITIVE_DATA *s2,
1914 const TPM2B_ECC_PARAMETER *y2);
1915
1916TSS2_RC
1918 ESYS_CONTEXT *esysContext,
1919 TPM2B_ECC_POINT **K,
1920 TPM2B_ECC_POINT **L,
1921 TPM2B_ECC_POINT **E,
1922 UINT16 *counter);
1923
1924/* Table 95 - TPM2_EC_Ephemeral Command */
1925
1926TSS2_RC
1928 ESYS_CONTEXT *esysContext,
1929 ESYS_TR shandle1,
1930 ESYS_TR shandle2,
1931 ESYS_TR shandle3,
1932 TPMI_ECC_CURVE curveID,
1933 TPM2B_ECC_POINT **Q,
1934 UINT16 *counter);
1935
1936TSS2_RC
1938 ESYS_CONTEXT *esysContext,
1939 ESYS_TR shandle1,
1940 ESYS_TR shandle2,
1941 ESYS_TR shandle3,
1942 TPMI_ECC_CURVE curveID);
1943
1944TSS2_RC
1946 ESYS_CONTEXT *esysContext,
1947 TPM2B_ECC_POINT **Q,
1948 UINT16 *counter);
1949
1950/* Table 97 - TPM2_VerifySignature Command */
1951
1952TSS2_RC
1954 ESYS_CONTEXT *esysContext,
1955 ESYS_TR keyHandle,
1956 ESYS_TR shandle1,
1957 ESYS_TR shandle2,
1958 ESYS_TR shandle3,
1959 const TPM2B_DIGEST *digest,
1960 const TPMT_SIGNATURE *signature,
1961 TPMT_TK_VERIFIED **validation);
1962
1963TSS2_RC
1965 ESYS_CONTEXT *esysContext,
1966 ESYS_TR keyHandle,
1967 ESYS_TR shandle1,
1968 ESYS_TR shandle2,
1969 ESYS_TR shandle3,
1970 const TPM2B_DIGEST *digest,
1971 const TPMT_SIGNATURE *signature);
1972
1973TSS2_RC
1975 ESYS_CONTEXT *esysContext,
1976 TPMT_TK_VERIFIED **validation);
1977
1978/* Table 99 - TPM2_Sign Command */
1979
1980TSS2_RC
1981Esys_Sign(
1982 ESYS_CONTEXT *esysContext,
1983 ESYS_TR keyHandle,
1984 ESYS_TR shandle1,
1985 ESYS_TR shandle2,
1986 ESYS_TR shandle3,
1987 const TPM2B_DIGEST *digest,
1988 const TPMT_SIG_SCHEME *inScheme,
1989 const TPMT_TK_HASHCHECK *validation,
1990 TPMT_SIGNATURE **signature);
1991
1992TSS2_RC
1994 ESYS_CONTEXT *esysContext,
1995 ESYS_TR keyHandle,
1996 ESYS_TR shandle1,
1997 ESYS_TR shandle2,
1998 ESYS_TR shandle3,
1999 const TPM2B_DIGEST *digest,
2000 const TPMT_SIG_SCHEME *inScheme,
2001 const TPMT_TK_HASHCHECK *validation);
2002
2003TSS2_RC
2005 ESYS_CONTEXT *esysContext,
2006 TPMT_SIGNATURE **signature);
2007
2008/* Table 101 - TPM2_SetCommandCodeAuditStatus Command */
2009
2010TSS2_RC
2012 ESYS_CONTEXT *esysContext,
2013 ESYS_TR auth,
2014 ESYS_TR shandle1,
2015 ESYS_TR shandle2,
2016 ESYS_TR shandle3,
2017 TPMI_ALG_HASH auditAlg,
2018 const TPML_CC *setList,
2019 const TPML_CC *clearList);
2020
2021TSS2_RC
2023 ESYS_CONTEXT *esysContext,
2024 ESYS_TR auth,
2025 ESYS_TR shandle1,
2026 ESYS_TR shandle2,
2027 ESYS_TR shandle3,
2028 TPMI_ALG_HASH auditAlg,
2029 const TPML_CC *setList,
2030 const TPML_CC *clearList);
2031
2032TSS2_RC
2034 ESYS_CONTEXT *esysContext);
2035
2036/* Table 103 - TPM2_PCR_Extend Command */
2037
2038TSS2_RC
2040 ESYS_CONTEXT *esysContext,
2041 ESYS_TR pcrHandle,
2042 ESYS_TR shandle1,
2043 ESYS_TR shandle2,
2044 ESYS_TR shandle3,
2045 const TPML_DIGEST_VALUES *digests);
2046
2047TSS2_RC
2049 ESYS_CONTEXT *esysContext,
2050 ESYS_TR pcrHandle,
2051 ESYS_TR shandle1,
2052 ESYS_TR shandle2,
2053 ESYS_TR shandle3,
2054 const TPML_DIGEST_VALUES *digests);
2055
2056TSS2_RC
2058 ESYS_CONTEXT *esysContext);
2059
2060/* Table 105 - TPM2_PCR_Event Command */
2061
2062TSS2_RC
2064 ESYS_CONTEXT *esysContext,
2065 ESYS_TR pcrHandle,
2066 ESYS_TR shandle1,
2067 ESYS_TR shandle2,
2068 ESYS_TR shandle3,
2069 const TPM2B_EVENT *eventData,
2070 TPML_DIGEST_VALUES **digests);
2071
2072TSS2_RC
2074 ESYS_CONTEXT *esysContext,
2075 ESYS_TR pcrHandle,
2076 ESYS_TR shandle1,
2077 ESYS_TR shandle2,
2078 ESYS_TR shandle3,
2079 const TPM2B_EVENT *eventData);
2080
2081TSS2_RC
2083 ESYS_CONTEXT *esysContext,
2084 TPML_DIGEST_VALUES **digests);
2085
2086/* Table 107 - TPM2_PCR_Read Command */
2087
2088TSS2_RC
2090 ESYS_CONTEXT *esysContext,
2091 ESYS_TR shandle1,
2092 ESYS_TR shandle2,
2093 ESYS_TR shandle3,
2094 const TPML_PCR_SELECTION *pcrSelectionIn,
2095 UINT32 *pcrUpdateCounter,
2096 TPML_PCR_SELECTION **pcrSelectionOut,
2097 TPML_DIGEST **pcrValues);
2098
2099TSS2_RC
2101 ESYS_CONTEXT *esysContext,
2102 ESYS_TR shandle1,
2103 ESYS_TR shandle2,
2104 ESYS_TR shandle3,
2105 const TPML_PCR_SELECTION *pcrSelectionIn);
2106
2107TSS2_RC
2109 ESYS_CONTEXT *esysContext,
2110 UINT32 *pcrUpdateCounter,
2111 TPML_PCR_SELECTION **pcrSelectionOut,
2112 TPML_DIGEST **pcrValues);
2113
2114/* Table 109 - TPM2_PCR_Allocate Command */
2115
2116TSS2_RC
2118 ESYS_CONTEXT *esysContext,
2119 ESYS_TR authHandle,
2120 ESYS_TR shandle1,
2121 ESYS_TR shandle2,
2122 ESYS_TR shandle3,
2123 const TPML_PCR_SELECTION *pcrAllocation,
2124 TPMI_YES_NO *allocationSuccess,
2125 UINT32 *maxPCR,
2126 UINT32 *sizeNeeded,
2127 UINT32 *sizeAvailable);
2128
2129TSS2_RC
2131 ESYS_CONTEXT *esysContext,
2132 ESYS_TR authHandle,
2133 ESYS_TR shandle1,
2134 ESYS_TR shandle2,
2135 ESYS_TR shandle3,
2136 const TPML_PCR_SELECTION *pcrAllocation);
2137
2138TSS2_RC
2140 ESYS_CONTEXT *esysContext,
2141 TPMI_YES_NO *allocationSuccess,
2142 UINT32 *maxPCR,
2143 UINT32 *sizeNeeded,
2144 UINT32 *sizeAvailable);
2145
2146/* Table 111 - TPM2_PCR_SetAuthPolicy Command */
2147
2148TSS2_RC
2150 ESYS_CONTEXT *esysContext,
2151 ESYS_TR authHandle,
2152 ESYS_TR shandle1,
2153 ESYS_TR shandle2,
2154 ESYS_TR shandle3,
2155 const TPM2B_DIGEST *authPolicy,
2156 TPMI_ALG_HASH hashAlg,
2157 TPMI_DH_PCR pcrNum);
2158
2159TSS2_RC
2161 ESYS_CONTEXT *esysContext,
2162 ESYS_TR authHandle,
2163 ESYS_TR shandle1,
2164 ESYS_TR shandle2,
2165 ESYS_TR shandle3,
2166 const TPM2B_DIGEST *authPolicy,
2167 TPMI_ALG_HASH hashAlg,
2168 TPMI_DH_PCR pcrNum);
2169
2170TSS2_RC
2172 ESYS_CONTEXT *esysContext);
2173
2174/* Table 113 - TPM2_PCR_SetAuthValue Command */
2175
2176TSS2_RC
2178 ESYS_CONTEXT *esysContext,
2179 ESYS_TR pcrHandle,
2180 ESYS_TR shandle1,
2181 ESYS_TR shandle2,
2182 ESYS_TR shandle3,
2183 const TPM2B_DIGEST *auth);
2184
2185TSS2_RC
2187 ESYS_CONTEXT *esysContext,
2188 ESYS_TR pcrHandle,
2189 ESYS_TR shandle1,
2190 ESYS_TR shandle2,
2191 ESYS_TR shandle3,
2192 const TPM2B_DIGEST *auth);
2193
2194TSS2_RC
2196 ESYS_CONTEXT *esysContext);
2197
2198/* Table 115 - TPM2_PCR_Reset Command */
2199
2200TSS2_RC
2202 ESYS_CONTEXT *esysContext,
2203 ESYS_TR pcrHandle,
2204 ESYS_TR shandle1,
2205 ESYS_TR shandle2,
2206 ESYS_TR shandle3);
2207
2208TSS2_RC
2210 ESYS_CONTEXT *esysContext,
2211 ESYS_TR pcrHandle,
2212 ESYS_TR shandle1,
2213 ESYS_TR shandle2,
2214 ESYS_TR shandle3);
2215
2216TSS2_RC
2218 ESYS_CONTEXT *esysContext);
2219
2220/* Table 117 - TPM2_PolicySigned Command */
2221
2222TSS2_RC
2224 ESYS_CONTEXT *esysContext,
2225 ESYS_TR authObject,
2226 ESYS_TR policySession,
2227 ESYS_TR shandle1,
2228 ESYS_TR shandle2,
2229 ESYS_TR shandle3,
2230 const TPM2B_NONCE *nonceTPM,
2231 const TPM2B_DIGEST *cpHashA,
2232 const TPM2B_NONCE *policyRef,
2233 INT32 expiration,
2234 const TPMT_SIGNATURE *auth,
2235 TPM2B_TIMEOUT **timeout,
2236 TPMT_TK_AUTH **policyTicket);
2237
2238TSS2_RC
2240 ESYS_CONTEXT *esysContext,
2241 ESYS_TR authObject,
2242 ESYS_TR policySession,
2243 ESYS_TR shandle1,
2244 ESYS_TR shandle2,
2245 ESYS_TR shandle3,
2246 const TPM2B_NONCE *nonceTPM,
2247 const TPM2B_DIGEST *cpHashA,
2248 const TPM2B_NONCE *policyRef,
2249 INT32 expiration,
2250 const TPMT_SIGNATURE *auth);
2251
2252TSS2_RC
2254 ESYS_CONTEXT *esysContext,
2255 TPM2B_TIMEOUT **timeout,
2256 TPMT_TK_AUTH **policyTicket);
2257
2258/* Table 119 - TPM2_PolicySecret Command */
2259
2260TSS2_RC
2262 ESYS_CONTEXT *esysContext,
2263 ESYS_TR authHandle,
2264 ESYS_TR policySession,
2265 ESYS_TR shandle1,
2266 ESYS_TR shandle2,
2267 ESYS_TR shandle3,
2268 const TPM2B_NONCE *nonceTPM,
2269 const TPM2B_DIGEST *cpHashA,
2270 const TPM2B_NONCE *policyRef,
2271 INT32 expiration,
2272 TPM2B_TIMEOUT **timeout,
2273 TPMT_TK_AUTH **policyTicket);
2274
2275TSS2_RC
2277 ESYS_CONTEXT *esysContext,
2278 ESYS_TR authHandle,
2279 ESYS_TR policySession,
2280 ESYS_TR shandle1,
2281 ESYS_TR shandle2,
2282 ESYS_TR shandle3,
2283 const TPM2B_NONCE *nonceTPM,
2284 const TPM2B_DIGEST *cpHashA,
2285 const TPM2B_NONCE *policyRef,
2286 INT32 expiration);
2287
2288TSS2_RC
2290 ESYS_CONTEXT *esysContext,
2291 TPM2B_TIMEOUT **timeout,
2292 TPMT_TK_AUTH **policyTicket);
2293
2294/* Table 121 - TPM2_PolicyTicket Command */
2295
2296TSS2_RC
2298 ESYS_CONTEXT *esysContext,
2299 ESYS_TR policySession,
2300 ESYS_TR shandle1,
2301 ESYS_TR shandle2,
2302 ESYS_TR shandle3,
2303 const TPM2B_TIMEOUT *timeout,
2304 const TPM2B_DIGEST *cpHashA,
2305 const TPM2B_NONCE *policyRef,
2306 const TPM2B_NAME *authName,
2307 const TPMT_TK_AUTH *ticket);
2308
2309TSS2_RC
2311 ESYS_CONTEXT *esysContext,
2312 ESYS_TR policySession,
2313 ESYS_TR shandle1,
2314 ESYS_TR shandle2,
2315 ESYS_TR shandle3,
2316 const TPM2B_TIMEOUT *timeout,
2317 const TPM2B_DIGEST *cpHashA,
2318 const TPM2B_NONCE *policyRef,
2319 const TPM2B_NAME *authName,
2320 const TPMT_TK_AUTH *ticket);
2321
2322TSS2_RC
2324 ESYS_CONTEXT *esysContext);
2325
2326/* Table 123 - TPM2_PolicyOR Command */
2327
2328TSS2_RC
2330 ESYS_CONTEXT *esysContext,
2331 ESYS_TR policySession,
2332 ESYS_TR shandle1,
2333 ESYS_TR shandle2,
2334 ESYS_TR shandle3,
2335 const TPML_DIGEST *pHashList);
2336
2337TSS2_RC
2339 ESYS_CONTEXT *esysContext,
2340 ESYS_TR policySession,
2341 ESYS_TR shandle1,
2342 ESYS_TR shandle2,
2343 ESYS_TR shandle3,
2344 const TPML_DIGEST *pHashList);
2345
2346TSS2_RC
2348 ESYS_CONTEXT *esysContext);
2349
2350/* Table 125 - TPM2_PolicyPCR Command */
2351
2352TSS2_RC
2354 ESYS_CONTEXT *esysContext,
2355 ESYS_TR policySession,
2356 ESYS_TR shandle1,
2357 ESYS_TR shandle2,
2358 ESYS_TR shandle3,
2359 const TPM2B_DIGEST *pcrDigest,
2360 const TPML_PCR_SELECTION *pcrs);
2361
2362TSS2_RC
2364 ESYS_CONTEXT *esysContext,
2365 ESYS_TR policySession,
2366 ESYS_TR shandle1,
2367 ESYS_TR shandle2,
2368 ESYS_TR shandle3,
2369 const TPM2B_DIGEST *pcrDigest,
2370 const TPML_PCR_SELECTION *pcrs);
2371
2372TSS2_RC
2374 ESYS_CONTEXT *esysContext);
2375
2376/* Table 127 - TPM2_PolicyLocality Command */
2377
2378TSS2_RC
2380 ESYS_CONTEXT *esysContext,
2381 ESYS_TR policySession,
2382 ESYS_TR shandle1,
2383 ESYS_TR shandle2,
2384 ESYS_TR shandle3,
2385 TPMA_LOCALITY locality);
2386
2387TSS2_RC
2389 ESYS_CONTEXT *esysContext,
2390 ESYS_TR policySession,
2391 ESYS_TR shandle1,
2392 ESYS_TR shandle2,
2393 ESYS_TR shandle3,
2394 TPMA_LOCALITY locality);
2395
2396TSS2_RC
2398 ESYS_CONTEXT *esysContext);
2399
2400/* Table 129 - TPM2_PolicyNV Command */
2401
2402TSS2_RC
2404 ESYS_CONTEXT *esysContext,
2405 ESYS_TR authHandle,
2406 ESYS_TR nvIndex,
2407 ESYS_TR policySession,
2408 ESYS_TR shandle1,
2409 ESYS_TR shandle2,
2410 ESYS_TR shandle3,
2411 const TPM2B_OPERAND *operandB,
2412 UINT16 offset,
2413 TPM2_EO operation);
2414
2415TSS2_RC
2417 ESYS_CONTEXT *esysContext,
2418 ESYS_TR authHandle,
2419 ESYS_TR nvIndex,
2420 ESYS_TR policySession,
2421 ESYS_TR shandle1,
2422 ESYS_TR shandle2,
2423 ESYS_TR shandle3,
2424 const TPM2B_OPERAND *operandB,
2425 UINT16 offset,
2426 TPM2_EO operation);
2427
2428TSS2_RC
2430 ESYS_CONTEXT *esysContext);
2431
2432/* Table 131 - TPM2_PolicyCounterTimer Command */
2433
2434TSS2_RC
2436 ESYS_CONTEXT *esysContext,
2437 ESYS_TR policySession,
2438 ESYS_TR shandle1,
2439 ESYS_TR shandle2,
2440 ESYS_TR shandle3,
2441 const TPM2B_OPERAND *operandB,
2442 UINT16 offset,
2443 TPM2_EO operation);
2444
2445TSS2_RC
2447 ESYS_CONTEXT *esysContext,
2448 ESYS_TR policySession,
2449 ESYS_TR shandle1,
2450 ESYS_TR shandle2,
2451 ESYS_TR shandle3,
2452 const TPM2B_OPERAND *operandB,
2453 UINT16 offset,
2454 TPM2_EO operation);
2455
2456TSS2_RC
2458 ESYS_CONTEXT *esysContext);
2459
2460/* Table 133 - TPM2_PolicyCommandCode Command */
2461
2462TSS2_RC
2464 ESYS_CONTEXT *esysContext,
2465 ESYS_TR policySession,
2466 ESYS_TR shandle1,
2467 ESYS_TR shandle2,
2468 ESYS_TR shandle3,
2469 TPM2_CC code);
2470
2471TSS2_RC
2473 ESYS_CONTEXT *esysContext,
2474 ESYS_TR policySession,
2475 ESYS_TR shandle1,
2476 ESYS_TR shandle2,
2477 ESYS_TR shandle3,
2478 TPM2_CC code);
2479
2480TSS2_RC
2482 ESYS_CONTEXT *esysContext);
2483
2484/* Table 135 - TPM2_PolicyPhysicalPresence Command */
2485
2486TSS2_RC
2488 ESYS_CONTEXT *esysContext,
2489 ESYS_TR policySession,
2490 ESYS_TR shandle1,
2491 ESYS_TR shandle2,
2492 ESYS_TR shandle3);
2493
2494TSS2_RC
2496 ESYS_CONTEXT *esysContext,
2497 ESYS_TR policySession,
2498 ESYS_TR shandle1,
2499 ESYS_TR shandle2,
2500 ESYS_TR shandle3);
2501
2502TSS2_RC
2504 ESYS_CONTEXT *esysContext);
2505
2506/* Table 137 - TPM2_PolicyCpHash Command */
2507
2508TSS2_RC
2510 ESYS_CONTEXT *esysContext,
2511 ESYS_TR policySession,
2512 ESYS_TR shandle1,
2513 ESYS_TR shandle2,
2514 ESYS_TR shandle3,
2515 const TPM2B_DIGEST *cpHashA);
2516
2517TSS2_RC
2519 ESYS_CONTEXT *esysContext,
2520 ESYS_TR policySession,
2521 ESYS_TR shandle1,
2522 ESYS_TR shandle2,
2523 ESYS_TR shandle3,
2524 const TPM2B_DIGEST *cpHashA);
2525
2526TSS2_RC
2528 ESYS_CONTEXT *esysContext);
2529
2530/* Table 139 - TPM2_PolicyNameHash Command */
2531
2532TSS2_RC
2534 ESYS_CONTEXT *esysContext,
2535 ESYS_TR policySession,
2536 ESYS_TR shandle1,
2537 ESYS_TR shandle2,
2538 ESYS_TR shandle3,
2539 const TPM2B_DIGEST *nameHash);
2540
2541TSS2_RC
2543 ESYS_CONTEXT *esysContext,
2544 ESYS_TR policySession,
2545 ESYS_TR shandle1,
2546 ESYS_TR shandle2,
2547 ESYS_TR shandle3,
2548 const TPM2B_DIGEST *nameHash);
2549
2550TSS2_RC
2552 ESYS_CONTEXT *esysContext);
2553
2554/* Table 141 - TPM2_PolicyDuplicationSelect Command */
2555
2556TSS2_RC
2558 ESYS_CONTEXT *esysContext,
2559 ESYS_TR policySession,
2560 ESYS_TR shandle1,
2561 ESYS_TR shandle2,
2562 ESYS_TR shandle3,
2563 const TPM2B_NAME *objectName,
2564 const TPM2B_NAME *newParentName,
2565 TPMI_YES_NO includeObject);
2566
2567TSS2_RC
2569 ESYS_CONTEXT *esysContext,
2570 ESYS_TR policySession,
2571 ESYS_TR shandle1,
2572 ESYS_TR shandle2,
2573 ESYS_TR shandle3,
2574 const TPM2B_NAME *objectName,
2575 const TPM2B_NAME *newParentName,
2576 TPMI_YES_NO includeObject);
2577
2578TSS2_RC
2580 ESYS_CONTEXT *esysContext);
2581
2582/* Table 143 - TPM2_PolicyAuthorize Command */
2583
2584TSS2_RC
2586 ESYS_CONTEXT *esysContext,
2587 ESYS_TR policySession,
2588 ESYS_TR shandle1,
2589 ESYS_TR shandle2,
2590 ESYS_TR shandle3,
2591 const TPM2B_DIGEST *approvedPolicy,
2592 const TPM2B_NONCE *policyRef,
2593 const TPM2B_NAME *keySign,
2594 const TPMT_TK_VERIFIED *checkTicket);
2595
2596TSS2_RC
2598 ESYS_CONTEXT *esysContext,
2599 ESYS_TR policySession,
2600 ESYS_TR shandle1,
2601 ESYS_TR shandle2,
2602 ESYS_TR shandle3,
2603 const TPM2B_DIGEST *approvedPolicy,
2604 const TPM2B_NONCE *policyRef,
2605 const TPM2B_NAME *keySign,
2606 const TPMT_TK_VERIFIED *checkTicket);
2607
2608TSS2_RC
2610 ESYS_CONTEXT *esysContext);
2611
2612/* Table 145 - TPM2_PolicyAuthValue Command */
2613
2614TSS2_RC
2616 ESYS_CONTEXT *esysContext,
2617 ESYS_TR policySession,
2618 ESYS_TR shandle1,
2619 ESYS_TR shandle2,
2620 ESYS_TR shandle3);
2621
2622TSS2_RC
2624 ESYS_CONTEXT *esysContext,
2625 ESYS_TR policySession,
2626 ESYS_TR shandle1,
2627 ESYS_TR shandle2,
2628 ESYS_TR shandle3);
2629
2630TSS2_RC
2632 ESYS_CONTEXT *esysContext);
2633
2634/* Table 147 - TPM2_PolicyPassword Command */
2635
2636TSS2_RC
2638 ESYS_CONTEXT *esysContext,
2639 ESYS_TR policySession,
2640 ESYS_TR shandle1,
2641 ESYS_TR shandle2,
2642 ESYS_TR shandle3);
2643
2644TSS2_RC
2646 ESYS_CONTEXT *esysContext,
2647 ESYS_TR policySession,
2648 ESYS_TR shandle1,
2649 ESYS_TR shandle2,
2650 ESYS_TR shandle3);
2651
2652TSS2_RC
2654 ESYS_CONTEXT *esysContext);
2655
2656/* Table 149 - TPM2_PolicyGetDigest Command */
2657
2658TSS2_RC
2660 ESYS_CONTEXT *esysContext,
2661 ESYS_TR policySession,
2662 ESYS_TR shandle1,
2663 ESYS_TR shandle2,
2664 ESYS_TR shandle3,
2665 TPM2B_DIGEST **policyDigest);
2666
2667TSS2_RC
2669 ESYS_CONTEXT *esysContext,
2670 ESYS_TR policySession,
2671 ESYS_TR shandle1,
2672 ESYS_TR shandle2,
2673 ESYS_TR shandle3);
2674
2675TSS2_RC
2677 ESYS_CONTEXT *esysContext,
2678 TPM2B_DIGEST **policyDigest);
2679
2680/* Table 151 - TPM2_PolicyNvWritten Command */
2681
2682TSS2_RC
2684 ESYS_CONTEXT *esysContext,
2685 ESYS_TR policySession,
2686 ESYS_TR shandle1,
2687 ESYS_TR shandle2,
2688 ESYS_TR shandle3,
2689 TPMI_YES_NO writtenSet);
2690
2691TSS2_RC
2693 ESYS_CONTEXT *esysContext,
2694 ESYS_TR policySession,
2695 ESYS_TR shandle1,
2696 ESYS_TR shandle2,
2697 ESYS_TR shandle3,
2698 TPMI_YES_NO writtenSet);
2699
2700TSS2_RC
2702 ESYS_CONTEXT *esysContext);
2703
2704/* Table 153 - TPM2_PolicyTemplate Command */
2705
2706TSS2_RC
2707Esys_PolicyTemplate(
2708 ESYS_CONTEXT *esysContext,
2709 ESYS_TR policySession,
2710 ESYS_TR shandle1,
2711 ESYS_TR shandle2,
2712 ESYS_TR shandle3,
2713 const TPM2B_DIGEST *templateHash);
2714
2715TSS2_RC
2716Esys_PolicyTemplate_Async(
2717 ESYS_CONTEXT *esysContext,
2718 ESYS_TR policySession,
2719 ESYS_TR shandle1,
2720 ESYS_TR shandle2,
2721 ESYS_TR shandle3,
2722 const TPM2B_DIGEST *templateHash);
2723
2724TSS2_RC
2725Esys_PolicyTemplate_Finish(
2726 ESYS_CONTEXT *esysContext);
2727
2728/* Table 155 - TPM2_PolicyAuthorizeNV Command */
2729
2730TSS2_RC
2731Esys_PolicyAuthorizeNV(
2732 ESYS_CONTEXT *esysContext,
2733 ESYS_TR authHandle,
2734 ESYS_TR nvIndex,
2735 ESYS_TR policySession,
2736 ESYS_TR shandle1,
2737 ESYS_TR shandle2,
2738 ESYS_TR shandle3);
2739
2740TSS2_RC
2741Esys_PolicyAuthorizeNV_Async(
2742 ESYS_CONTEXT *esysContext,
2743 ESYS_TR authHandle,
2744 ESYS_TR nvIndex,
2745 ESYS_TR policySession,
2746 ESYS_TR shandle1,
2747 ESYS_TR shandle2,
2748 ESYS_TR shandle3);
2749
2750TSS2_RC
2751Esys_PolicyAuthorizeNV_Finish(
2752 ESYS_CONTEXT *esysContext);
2753
2754/* Table 157 - TPM2_CreatePrimary Command */
2755
2756TSS2_RC
2758 ESYS_CONTEXT *esysContext,
2759 ESYS_TR primaryHandle,
2760 ESYS_TR shandle1,
2761 ESYS_TR shandle2,
2762 ESYS_TR shandle3,
2763 const TPM2B_SENSITIVE_CREATE *inSensitive,
2764 const TPM2B_PUBLIC *inPublic,
2765 const TPM2B_DATA *outsideInfo,
2766 const TPML_PCR_SELECTION *creationPCR,
2767 ESYS_TR *objectHandle,
2768 TPM2B_PUBLIC **outPublic,
2769 TPM2B_CREATION_DATA **creationData,
2770 TPM2B_DIGEST **creationHash,
2771 TPMT_TK_CREATION **creationTicket);
2772
2773TSS2_RC
2775 ESYS_CONTEXT *esysContext,
2776 ESYS_TR primaryHandle,
2777 ESYS_TR shandle1,
2778 ESYS_TR shandle2,
2779 ESYS_TR shandle3,
2780 const TPM2B_SENSITIVE_CREATE *inSensitive,
2781 const TPM2B_PUBLIC *inPublic,
2782 const TPM2B_DATA *outsideInfo,
2783 const TPML_PCR_SELECTION *creationPCR);
2784
2785TSS2_RC
2787 ESYS_CONTEXT *esysContext,
2788 ESYS_TR *objectHandle,
2789 TPM2B_PUBLIC **outPublic,
2790 TPM2B_CREATION_DATA **creationData,
2791 TPM2B_DIGEST **creationHash,
2792 TPMT_TK_CREATION **creationTicket);
2793
2794/* Table 159 - TPM2_HierarchyControl Command */
2795
2796TSS2_RC
2797Esys_HierarchyControl(
2798 ESYS_CONTEXT *esysContext,
2799 ESYS_TR authHandle,
2800 ESYS_TR shandle1,
2801 ESYS_TR shandle2,
2802 ESYS_TR shandle3,
2803 ESYS_TR enable,
2804 TPMI_YES_NO state);
2805
2806TSS2_RC
2807Esys_HierarchyControl_Async(
2808 ESYS_CONTEXT *esysContext,
2809 ESYS_TR authHandle,
2810 ESYS_TR shandle1,
2811 ESYS_TR shandle2,
2812 ESYS_TR shandle3,
2813 ESYS_TR enable,
2814 TPMI_YES_NO state);
2815
2816TSS2_RC
2818 ESYS_CONTEXT *esysContext);
2819
2820/* Table 161 - TPM2_SetPrimaryPolicy Command */
2821
2822TSS2_RC
2824 ESYS_CONTEXT *esysContext,
2825 ESYS_TR authHandle,
2826 ESYS_TR shandle1,
2827 ESYS_TR shandle2,
2828 ESYS_TR shandle3,
2829 const TPM2B_DIGEST *authPolicy,
2830 TPMI_ALG_HASH hashAlg);
2831
2832TSS2_RC
2834 ESYS_CONTEXT *esysContext,
2835 ESYS_TR authHandle,
2836 ESYS_TR shandle1,
2837 ESYS_TR shandle2,
2838 ESYS_TR shandle3,
2839 const TPM2B_DIGEST *authPolicy,
2840 TPMI_ALG_HASH hashAlg);
2841
2842TSS2_RC
2844 ESYS_CONTEXT *esysContext);
2845
2846/* Table 163 - TPM2_ChangePPS Command */
2847
2848TSS2_RC
2850 ESYS_CONTEXT *esysContext,
2851 ESYS_TR authHandle,
2852 ESYS_TR shandle1,
2853 ESYS_TR shandle2,
2854 ESYS_TR shandle3);
2855
2856TSS2_RC
2858 ESYS_CONTEXT *esysContext,
2859 ESYS_TR authHandle,
2860 ESYS_TR shandle1,
2861 ESYS_TR shandle2,
2862 ESYS_TR shandle3);
2863
2864TSS2_RC
2866 ESYS_CONTEXT *esysContext);
2867
2868/* Table 165 - TPM2_ChangeEPS Command */
2869
2870TSS2_RC
2872 ESYS_CONTEXT *esysContext,
2873 ESYS_TR authHandle,
2874 ESYS_TR shandle1,
2875 ESYS_TR shandle2,
2876 ESYS_TR shandle3);
2877
2878TSS2_RC
2880 ESYS_CONTEXT *esysContext,
2881 ESYS_TR authHandle,
2882 ESYS_TR shandle1,
2883 ESYS_TR shandle2,
2884 ESYS_TR shandle3);
2885
2886TSS2_RC
2888 ESYS_CONTEXT *esysContext);
2889
2890/* Table 167 - TPM2_Clear Command */
2891
2892TSS2_RC
2894 ESYS_CONTEXT *esysContext,
2895 ESYS_TR authHandle,
2896 ESYS_TR shandle1,
2897 ESYS_TR shandle2,
2898 ESYS_TR shandle3);
2899
2900TSS2_RC
2902 ESYS_CONTEXT *esysContext,
2903 ESYS_TR authHandle,
2904 ESYS_TR shandle1,
2905 ESYS_TR shandle2,
2906 ESYS_TR shandle3);
2907
2908TSS2_RC
2910 ESYS_CONTEXT *esysContext);
2911
2912/* Table 169 - TPM2_ClearControl Command */
2913
2914TSS2_RC
2916 ESYS_CONTEXT *esysContext,
2917 ESYS_TR auth,
2918 ESYS_TR shandle1,
2919 ESYS_TR shandle2,
2920 ESYS_TR shandle3,
2921 TPMI_YES_NO disable);
2922
2923TSS2_RC
2925 ESYS_CONTEXT *esysContext,
2926 ESYS_TR auth,
2927 ESYS_TR shandle1,
2928 ESYS_TR shandle2,
2929 ESYS_TR shandle3,
2930 TPMI_YES_NO disable);
2931
2932TSS2_RC
2934 ESYS_CONTEXT *esysContext);
2935
2936/* Table 171 - TPM2_HierarchyChangeAuth Command */
2937
2938TSS2_RC
2940 ESYS_CONTEXT *esysContext,
2941 ESYS_TR authHandle,
2942 ESYS_TR shandle1,
2943 ESYS_TR shandle2,
2944 ESYS_TR shandle3,
2945 const TPM2B_AUTH *newAuth);
2946
2947TSS2_RC
2949 ESYS_CONTEXT *esysContext,
2950 ESYS_TR authHandle,
2951 ESYS_TR shandle1,
2952 ESYS_TR shandle2,
2953 ESYS_TR shandle3,
2954 const TPM2B_AUTH *newAuth);
2955
2956TSS2_RC
2958 ESYS_CONTEXT *esysContext);
2959
2960/* Table 173 - TPM2_DictionaryAttackLockReset Command */
2961
2962TSS2_RC
2964 ESYS_CONTEXT *esysContext,
2965 ESYS_TR lockHandle,
2966 ESYS_TR shandle1,
2967 ESYS_TR shandle2,
2968 ESYS_TR shandle3);
2969
2970TSS2_RC
2972 ESYS_CONTEXT *esysContext,
2973 ESYS_TR lockHandle,
2974 ESYS_TR shandle1,
2975 ESYS_TR shandle2,
2976 ESYS_TR shandle3);
2977
2978TSS2_RC
2980 ESYS_CONTEXT *esysContext);
2981
2982/* Table 175 - TPM2_DictionaryAttackParameters Command */
2983
2984TSS2_RC
2986 ESYS_CONTEXT *esysContext,
2987 ESYS_TR lockHandle,
2988 ESYS_TR shandle1,
2989 ESYS_TR shandle2,
2990 ESYS_TR shandle3,
2991 UINT32 newMaxTries,
2992 UINT32 newRecoveryTime,
2993 UINT32 lockoutRecovery);
2994
2995TSS2_RC
2997 ESYS_CONTEXT *esysContext,
2998 ESYS_TR lockHandle,
2999 ESYS_TR shandle1,
3000 ESYS_TR shandle2,
3001 ESYS_TR shandle3,
3002 UINT32 newMaxTries,
3003 UINT32 newRecoveryTime,
3004 UINT32 lockoutRecovery);
3005
3006TSS2_RC
3008 ESYS_CONTEXT *esysContext);
3009
3010/* Table 177 - TPM2_PP_Commands Command */
3011
3012TSS2_RC
3014 ESYS_CONTEXT *esysContext,
3015 ESYS_TR auth,
3016 ESYS_TR shandle1,
3017 ESYS_TR shandle2,
3018 ESYS_TR shandle3,
3019 const TPML_CC *setList,
3020 const TPML_CC *clearList);
3021
3022TSS2_RC
3024 ESYS_CONTEXT *esysContext,
3025 ESYS_TR auth,
3026 ESYS_TR shandle1,
3027 ESYS_TR shandle2,
3028 ESYS_TR shandle3,
3029 const TPML_CC *setList,
3030 const TPML_CC *clearList);
3031
3032TSS2_RC
3034 ESYS_CONTEXT *esysContext);
3035
3036/* Table 179 - TPM2_SetAlgorithmSet Command */
3037
3038TSS2_RC
3040 ESYS_CONTEXT *esysContext,
3041 ESYS_TR authHandle,
3042 ESYS_TR shandle1,
3043 ESYS_TR shandle2,
3044 ESYS_TR shandle3,
3045 UINT32 algorithmSet);
3046
3047TSS2_RC
3049 ESYS_CONTEXT *esysContext,
3050 ESYS_TR authHandle,
3051 ESYS_TR shandle1,
3052 ESYS_TR shandle2,
3053 ESYS_TR shandle3,
3054 UINT32 algorithmSet);
3055
3056TSS2_RC
3058 ESYS_CONTEXT *esysContext);
3059
3060/* Table 181 - TPM2_FieldUpgradeStart Command */
3061
3062TSS2_RC
3063Esys_FieldUpgradeStart(
3064 ESYS_CONTEXT *esysContext,
3065 ESYS_TR authorization,
3066 ESYS_TR keyHandle,
3067 ESYS_TR shandle1,
3068 ESYS_TR shandle2,
3069 ESYS_TR shandle3,
3070 const TPM2B_DIGEST *fuDigest,
3071 const TPMT_SIGNATURE *manifestSignature);
3072
3073TSS2_RC
3074Esys_FieldUpgradeStart_Async(
3075 ESYS_CONTEXT *esysContext,
3076 ESYS_TR authorization,
3077 ESYS_TR keyHandle,
3078 ESYS_TR shandle1,
3079 ESYS_TR shandle2,
3080 ESYS_TR shandle3,
3081 const TPM2B_DIGEST *fuDigest,
3082 const TPMT_SIGNATURE *manifestSignature);
3083
3084TSS2_RC
3085Esys_FieldUpgradeStart_Finish(
3086 ESYS_CONTEXT *esysContext);
3087
3088/* Table 183 - TPM2_FieldUpgradeData Command */
3089
3090TSS2_RC
3091Esys_FieldUpgradeData(
3092 ESYS_CONTEXT *esysContext,
3093 ESYS_TR shandle1,
3094 ESYS_TR shandle2,
3095 ESYS_TR shandle3,
3096 const TPM2B_MAX_BUFFER *fuData,
3097 TPMT_HA **nextDigest,
3098 TPMT_HA **firstDigest);
3099
3100TSS2_RC
3101Esys_FieldUpgradeData_Async(
3102 ESYS_CONTEXT *esysContext,
3103 ESYS_TR shandle1,
3104 ESYS_TR shandle2,
3105 ESYS_TR shandle3,
3106 const TPM2B_MAX_BUFFER *fuData);
3107
3108TSS2_RC
3109Esys_FieldUpgradeData_Finish(
3110 ESYS_CONTEXT *esysContext,
3111 TPMT_HA **nextDigest,
3112 TPMT_HA **firstDigest);
3113
3114/* Table 185 - TPM2_FirmwareRead Command */
3115
3116TSS2_RC
3117Esys_FirmwareRead(
3118 ESYS_CONTEXT *esysContext,
3119 ESYS_TR shandle1,
3120 ESYS_TR shandle2,
3121 ESYS_TR shandle3,
3122 UINT32 sequenceNumber,
3123 TPM2B_MAX_BUFFER **fuData);
3124
3125TSS2_RC
3126Esys_FirmwareRead_Async(
3127 ESYS_CONTEXT *esysContext,
3128 ESYS_TR shandle1,
3129 ESYS_TR shandle2,
3130 ESYS_TR shandle3,
3131 UINT32 sequenceNumber);
3132
3133TSS2_RC
3134Esys_FirmwareRead_Finish(
3135 ESYS_CONTEXT *esysContext,
3136 TPM2B_MAX_BUFFER **fuData);
3137
3138/* Table 187 - TPM2_ContextSave Command */
3139
3140TSS2_RC
3142 ESYS_CONTEXT *esysContext,
3143 ESYS_TR saveHandle,
3144 TPMS_CONTEXT **context);
3145
3146TSS2_RC
3148 ESYS_CONTEXT *esysContext,
3149 ESYS_TR saveHandle);
3150
3151TSS2_RC
3153 ESYS_CONTEXT *esysContext,
3154 TPMS_CONTEXT **context);
3155
3156/* Table 189 - TPM2_ContextLoad Command */
3157
3158TSS2_RC
3160 ESYS_CONTEXT *esysContext,
3161 const TPMS_CONTEXT *context,
3162 ESYS_TR *loadedHandle);
3163
3164TSS2_RC
3166 ESYS_CONTEXT *esysContext,
3167 const TPMS_CONTEXT *context);
3168
3169TSS2_RC
3171 ESYS_CONTEXT *esysContext,
3172 ESYS_TR *loadedHandle);
3173
3174/* Table 191 - TPM2_FlushContext Command */
3175
3176TSS2_RC
3178 ESYS_CONTEXT *esysContext,
3179 ESYS_TR flushHandle);
3180
3181TSS2_RC
3183 ESYS_CONTEXT *esysContext,
3184 ESYS_TR flushHandle);
3185
3186TSS2_RC
3188 ESYS_CONTEXT *esysContext);
3189
3190/* Table 193 - TPM2_EvictControl Command */
3191
3192TSS2_RC
3194 ESYS_CONTEXT *esysContext,
3195 ESYS_TR auth,
3196 ESYS_TR objectHandle,
3197 ESYS_TR shandle1,
3198 ESYS_TR shandle2,
3199 ESYS_TR shandle3,
3200 TPMI_DH_PERSISTENT persistentHandle,
3201 ESYS_TR *newObjectHandle);
3202
3203TSS2_RC
3205 ESYS_CONTEXT *esysContext,
3206 ESYS_TR auth,
3207 ESYS_TR objectHandle,
3208 ESYS_TR shandle1,
3209 ESYS_TR shandle2,
3210 ESYS_TR shandle3,
3211 TPMI_DH_PERSISTENT persistentHandle);
3212
3213TSS2_RC
3215 ESYS_CONTEXT *esysContext,
3216 ESYS_TR *newObjectHandle);
3217
3218/* Table 195 - TPM2_ReadClock Command */
3219
3220TSS2_RC
3222 ESYS_CONTEXT *esysContext,
3223 ESYS_TR shandle1,
3224 ESYS_TR shandle2,
3225 ESYS_TR shandle3,
3226 TPMS_TIME_INFO **currentTime);
3227
3228TSS2_RC
3230 ESYS_CONTEXT *esysContext,
3231 ESYS_TR shandle1,
3232 ESYS_TR shandle2,
3233 ESYS_TR shandle3);
3234
3235TSS2_RC
3237 ESYS_CONTEXT *esysContext,
3238 TPMS_TIME_INFO **currentTime);
3239
3240/* Table 197 - TPM2_ClockSet Command */
3241
3242TSS2_RC
3244 ESYS_CONTEXT *esysContext,
3245 ESYS_TR auth,
3246 ESYS_TR shandle1,
3247 ESYS_TR shandle2,
3248 ESYS_TR shandle3,
3249 UINT64 newTime);
3250
3251TSS2_RC
3253 ESYS_CONTEXT *esysContext,
3254 ESYS_TR auth,
3255 ESYS_TR shandle1,
3256 ESYS_TR shandle2,
3257 ESYS_TR shandle3,
3258 UINT64 newTime);
3259
3260TSS2_RC
3262 ESYS_CONTEXT *esysContext);
3263
3264/* Table 199 - TPM2_ClockRateAdjust Command */
3265
3266TSS2_RC
3268 ESYS_CONTEXT *esysContext,
3269 ESYS_TR auth,
3270 ESYS_TR shandle1,
3271 ESYS_TR shandle2,
3272 ESYS_TR shandle3,
3273 TPM2_CLOCK_ADJUST rateAdjust);
3274
3275TSS2_RC
3277 ESYS_CONTEXT *esysContext,
3278 ESYS_TR auth,
3279 ESYS_TR shandle1,
3280 ESYS_TR shandle2,
3281 ESYS_TR shandle3,
3282 TPM2_CLOCK_ADJUST rateAdjust);
3283
3284TSS2_RC
3286 ESYS_CONTEXT *esysContext);
3287
3288/* Table 201 - TPM2_GetCapability Command */
3289
3290TSS2_RC
3292 ESYS_CONTEXT *esysContext,
3293 ESYS_TR shandle1,
3294 ESYS_TR shandle2,
3295 ESYS_TR shandle3,
3296 TPM2_CAP capability,
3297 UINT32 property,
3298 UINT32 propertyCount,
3299 TPMI_YES_NO *moreData,
3300 TPMS_CAPABILITY_DATA **capabilityData);
3301
3302TSS2_RC
3304 ESYS_CONTEXT *esysContext,
3305 ESYS_TR shandle1,
3306 ESYS_TR shandle2,
3307 ESYS_TR shandle3,
3308 TPM2_CAP capability,
3309 UINT32 property,
3310 UINT32 propertyCount);
3311
3312TSS2_RC
3314 ESYS_CONTEXT *esysContext,
3315 TPMI_YES_NO *moreData,
3316 TPMS_CAPABILITY_DATA **capabilityData);
3317
3318/* Table 203 - TPM2_TestParms Command */
3319
3320TSS2_RC
3322 ESYS_CONTEXT *esysContext,
3323 ESYS_TR shandle1,
3324 ESYS_TR shandle2,
3325 ESYS_TR shandle3,
3326 const TPMT_PUBLIC_PARMS *parameters);
3327
3328TSS2_RC
3330 ESYS_CONTEXT *esysContext,
3331 ESYS_TR shandle1,
3332 ESYS_TR shandle2,
3333 ESYS_TR shandle3,
3334 const TPMT_PUBLIC_PARMS *parameters);
3335
3336TSS2_RC
3338 ESYS_CONTEXT *esysContext);
3339
3340/* Table 205 - TPM2_NV_DefineSpace Command */
3341
3342TSS2_RC
3344 ESYS_CONTEXT *esysContext,
3345 ESYS_TR authHandle,
3346 ESYS_TR shandle1,
3347 ESYS_TR shandle2,
3348 ESYS_TR shandle3,
3349 const TPM2B_AUTH *auth,
3350 const TPM2B_NV_PUBLIC *publicInfo,
3351 ESYS_TR *nvHandle);
3352
3353TSS2_RC
3355 ESYS_CONTEXT *esysContext,
3356 ESYS_TR authHandle,
3357 ESYS_TR shandle1,
3358 ESYS_TR shandle2,
3359 ESYS_TR shandle3,
3360 const TPM2B_AUTH *auth,
3361 const TPM2B_NV_PUBLIC *publicInfo);
3362
3363TSS2_RC
3365 ESYS_CONTEXT *esysContext,
3366 ESYS_TR *nvHandle);
3367
3368/* Table 207 - TPM2_NV_UndefineSpace Command */
3369
3370TSS2_RC
3372 ESYS_CONTEXT *esysContext,
3373 ESYS_TR authHandle,
3374 ESYS_TR nvIndex,
3375 ESYS_TR shandle1,
3376 ESYS_TR shandle2,
3377 ESYS_TR shandle3);
3378
3379TSS2_RC
3381 ESYS_CONTEXT *esysContext,
3382 ESYS_TR authHandle,
3383 ESYS_TR nvIndex,
3384 ESYS_TR shandle1,
3385 ESYS_TR shandle2,
3386 ESYS_TR shandle3);
3387
3388TSS2_RC
3390 ESYS_CONTEXT *esysContext);
3391
3392/* Table 209 - TPM2_NV_UndefineSpaceSpecial Command */
3393
3394TSS2_RC
3396 ESYS_CONTEXT *esysContext,
3397 ESYS_TR nvIndex,
3398 ESYS_TR platform,
3399 ESYS_TR shandle1,
3400 ESYS_TR shandle2,
3401 ESYS_TR shandle3);
3402
3403TSS2_RC
3405 ESYS_CONTEXT *esysContext,
3406 ESYS_TR nvIndex,
3407 ESYS_TR platform,
3408 ESYS_TR shandle1,
3409 ESYS_TR shandle2,
3410 ESYS_TR shandle3);
3411
3412TSS2_RC
3414 ESYS_CONTEXT *esysContext);
3415
3416/* Table 211 - TPM2_NV_ReadPublic Command */
3417
3418TSS2_RC
3420 ESYS_CONTEXT *esysContext,
3421 ESYS_TR nvIndex,
3422 ESYS_TR shandle1,
3423 ESYS_TR shandle2,
3424 ESYS_TR shandle3,
3425 TPM2B_NV_PUBLIC **nvPublic,
3426 TPM2B_NAME **nvName);
3427
3428TSS2_RC
3430 ESYS_CONTEXT *esysContext,
3431 ESYS_TR nvIndex,
3432 ESYS_TR shandle1,
3433 ESYS_TR shandle2,
3434 ESYS_TR shandle3);
3435
3436TSS2_RC
3438 ESYS_CONTEXT *esysContext,
3439 TPM2B_NV_PUBLIC **nvPublic,
3440 TPM2B_NAME **nvName);
3441
3442/* Table 213 - TPM2_NV_Write Command */
3443
3444TSS2_RC
3446 ESYS_CONTEXT *esysContext,
3447 ESYS_TR authHandle,
3448 ESYS_TR nvIndex,
3449 ESYS_TR shandle1,
3450 ESYS_TR shandle2,
3451 ESYS_TR shandle3,
3452 const TPM2B_MAX_NV_BUFFER *data,
3453 UINT16 offset);
3454
3455TSS2_RC
3457 ESYS_CONTEXT *esysContext,
3458 ESYS_TR authHandle,
3459 ESYS_TR nvIndex,
3460 ESYS_TR shandle1,
3461 ESYS_TR shandle2,
3462 ESYS_TR shandle3,
3463 const TPM2B_MAX_NV_BUFFER *data,
3464 UINT16 offset);
3465
3466TSS2_RC
3468 ESYS_CONTEXT *esysContext);
3469
3470/* Table 215 - TPM2_NV_Increment Command */
3471
3472TSS2_RC
3474 ESYS_CONTEXT *esysContext,
3475 ESYS_TR authHandle,
3476 ESYS_TR nvIndex,
3477 ESYS_TR shandle1,
3478 ESYS_TR shandle2,
3479 ESYS_TR shandle3);
3480
3481TSS2_RC
3483 ESYS_CONTEXT *esysContext,
3484 ESYS_TR authHandle,
3485 ESYS_TR nvIndex,
3486 ESYS_TR shandle1,
3487 ESYS_TR shandle2,
3488 ESYS_TR shandle3);
3489
3490TSS2_RC
3492 ESYS_CONTEXT *esysContext);
3493
3494/* Table 217 - TPM2_NV_Extend Command */
3495
3496TSS2_RC
3498 ESYS_CONTEXT *esysContext,
3499 ESYS_TR authHandle,
3500 ESYS_TR nvIndex,
3501 ESYS_TR shandle1,
3502 ESYS_TR shandle2,
3503 ESYS_TR shandle3,
3504 const TPM2B_MAX_NV_BUFFER *data);
3505
3506TSS2_RC
3508 ESYS_CONTEXT *esysContext,
3509 ESYS_TR authHandle,
3510 ESYS_TR nvIndex,
3511 ESYS_TR shandle1,
3512 ESYS_TR shandle2,
3513 ESYS_TR shandle3,
3514 const TPM2B_MAX_NV_BUFFER *data);
3515
3516TSS2_RC
3518 ESYS_CONTEXT *esysContext);
3519
3520/* Table 219 - TPM2_NV_SetBits Command */
3521
3522TSS2_RC
3524 ESYS_CONTEXT *esysContext,
3525 ESYS_TR authHandle,
3526 ESYS_TR nvIndex,
3527 ESYS_TR shandle1,
3528 ESYS_TR shandle2,
3529 ESYS_TR shandle3,
3530 UINT64 bits);
3531
3532TSS2_RC
3534 ESYS_CONTEXT *esysContext,
3535 ESYS_TR authHandle,
3536 ESYS_TR nvIndex,
3537 ESYS_TR shandle1,
3538 ESYS_TR shandle2,
3539 ESYS_TR shandle3,
3540 UINT64 bits);
3541
3542TSS2_RC
3544 ESYS_CONTEXT *esysContext);
3545
3546/* Table 221 - TPM2_NV_WriteLock Command */
3547
3548TSS2_RC
3550 ESYS_CONTEXT *esysContext,
3551 ESYS_TR authHandle,
3552 ESYS_TR nvIndex,
3553 ESYS_TR shandle1,
3554 ESYS_TR shandle2,
3555 ESYS_TR shandle3);
3556
3557TSS2_RC
3559 ESYS_CONTEXT *esysContext,
3560 ESYS_TR authHandle,
3561 ESYS_TR nvIndex,
3562 ESYS_TR shandle1,
3563 ESYS_TR shandle2,
3564 ESYS_TR shandle3);
3565
3566TSS2_RC
3568 ESYS_CONTEXT *esysContext);
3569
3570/* Table 223 - TPM2_NV_GlobalWriteLock Command */
3571
3572TSS2_RC
3574 ESYS_CONTEXT *esysContext,
3575 ESYS_TR authHandle,
3576 ESYS_TR shandle1,
3577 ESYS_TR shandle2,
3578 ESYS_TR shandle3);
3579
3580TSS2_RC
3582 ESYS_CONTEXT *esysContext,
3583 ESYS_TR authHandle,
3584 ESYS_TR shandle1,
3585 ESYS_TR shandle2,
3586 ESYS_TR shandle3);
3587
3588TSS2_RC
3590 ESYS_CONTEXT *esysContext);
3591
3592/* Table 225 - TPM2_NV_Read Command */
3593
3594TSS2_RC
3596 ESYS_CONTEXT *esysContext,
3597 ESYS_TR authHandle,
3598 ESYS_TR nvIndex,
3599 ESYS_TR shandle1,
3600 ESYS_TR shandle2,
3601 ESYS_TR shandle3,
3602 UINT16 size,
3603 UINT16 offset,
3604 TPM2B_MAX_NV_BUFFER **data);
3605
3606TSS2_RC
3608 ESYS_CONTEXT *esysContext,
3609 ESYS_TR authHandle,
3610 ESYS_TR nvIndex,
3611 ESYS_TR shandle1,
3612 ESYS_TR shandle2,
3613 ESYS_TR shandle3,
3614 UINT16 size,
3615 UINT16 offset);
3616
3617TSS2_RC
3619 ESYS_CONTEXT *esysContext,
3620 TPM2B_MAX_NV_BUFFER **data);
3621
3622/* Table 227 - TPM2_NV_ReadLock Command */
3623
3624TSS2_RC
3626 ESYS_CONTEXT *esysContext,
3627 ESYS_TR authHandle,
3628 ESYS_TR nvIndex,
3629 ESYS_TR shandle1,
3630 ESYS_TR shandle2,
3631 ESYS_TR shandle3);
3632
3633TSS2_RC
3635 ESYS_CONTEXT *esysContext,
3636 ESYS_TR authHandle,
3637 ESYS_TR nvIndex,
3638 ESYS_TR shandle1,
3639 ESYS_TR shandle2,
3640 ESYS_TR shandle3);
3641
3642TSS2_RC
3644 ESYS_CONTEXT *esysContext);
3645
3646/* Table 229 - TPM2_NV_ChangeAuth Command */
3647
3648TSS2_RC
3650 ESYS_CONTEXT *esysContext,
3651 ESYS_TR nvIndex,
3652 ESYS_TR shandle1,
3653 ESYS_TR shandle2,
3654 ESYS_TR shandle3,
3655 const TPM2B_AUTH *newAuth);
3656
3657TSS2_RC
3659 ESYS_CONTEXT *esysContext,
3660 ESYS_TR nvIndex,
3661 ESYS_TR shandle1,
3662 ESYS_TR shandle2,
3663 ESYS_TR shandle3,
3664 const TPM2B_AUTH *newAuth);
3665
3666TSS2_RC
3668 ESYS_CONTEXT *esysContext);
3669
3670/* Table 231 - TPM2_NV_Certify Command */
3671
3672TSS2_RC
3674 ESYS_CONTEXT *esysContext,
3675 ESYS_TR signHandle,
3676 ESYS_TR authHandle,
3677 ESYS_TR nvIndex,
3678 ESYS_TR shandle1,
3679 ESYS_TR shandle2,
3680 ESYS_TR shandle3,
3681 const TPM2B_DATA *qualifyingData,
3682 const TPMT_SIG_SCHEME *inScheme,
3683 UINT16 size,
3684 UINT16 offset,
3685 TPM2B_ATTEST **certifyInfo,
3686 TPMT_SIGNATURE **signature);
3687
3688TSS2_RC
3690 ESYS_CONTEXT *esysContext,
3691 ESYS_TR signHandle,
3692 ESYS_TR authHandle,
3693 ESYS_TR nvIndex,
3694 ESYS_TR shandle1,
3695 ESYS_TR shandle2,
3696 ESYS_TR shandle3,
3697 const TPM2B_DATA *qualifyingData,
3698 const TPMT_SIG_SCHEME *inScheme,
3699 UINT16 size,
3700 UINT16 offset);
3701
3702TSS2_RC
3704 ESYS_CONTEXT *esysContext,
3705 TPM2B_ATTEST **certifyInfo,
3706 TPMT_SIGNATURE **signature);
3707
3708/* Table 233 - TPM2_Vendor_TCG_Test Command */
3709
3710TSS2_RC
3712 ESYS_CONTEXT *esysContext,
3713 ESYS_TR shandle1,
3714 ESYS_TR shandle2,
3715 ESYS_TR shandle3,
3716 const TPM2B_DATA *inputData,
3717 TPM2B_DATA **outputData);
3718
3719TSS2_RC
3721 ESYS_CONTEXT *esysContext,
3722 ESYS_TR shandle1,
3723 ESYS_TR shandle2,
3724 ESYS_TR shandle3,
3725 const TPM2B_DATA *inputData);
3726
3727TSS2_RC
3729 ESYS_CONTEXT *esysContext,
3730 TPM2B_DATA **outputData);
3731
3732/*
3733 * TPM 2.0 ESAPI Helper Functions
3734 */
3735void
3736Esys_Free(
3737 void *__ptr);
3738
3739TSS2_RC
3741 ESYS_CONTEXT *esys_context,
3742 TSS2_SYS_CONTEXT **sys_context);
3743
3744TSS2_RC
3746 ESYS_CONTEXT *esysContext,
3747 ESYS_CRYPTO_CALLBACKS *callbacks);
3748
3749#ifdef __cplusplus
3750}
3751#endif
3752
3753#endif /* TSS2_ESYS_H */
TSS2_RC Esys_SetCryptoCallbacks(ESYS_CONTEXT *esysContext, ESYS_CRYPTO_CALLBACKS *callbacks)
Definition: esys_context.c:267
TSS2_RC Esys_GetSysContext(ESYS_CONTEXT *esys_context, TSS2_SYS_CONTEXT **sys_context)
Definition: esys_context.c:236
TSS2_RC Esys_GetPollHandles(ESYS_CONTEXT *esys_context, TSS2_TCTI_POLL_HANDLE **handles, size_t *count)
Definition: esys_context.c:184
TSS2_RC Esys_Initialize(ESYS_CONTEXT **esys_context, TSS2_TCTI_CONTEXT *tcti, TSS2_ABI_VERSION *abiVersion)
Definition: esys_context.c:44
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:163
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:80
TSS2_RC Esys_TR_Close(ESYS_CONTEXT *esys_context, ESYS_TR *rsrc_handle)
Definition: esys_tr.c:417
TSS2_RC Esys_TRSess_GetAttributes(ESYS_CONTEXT *esysContext, ESYS_TR session, TPMA_SESSION *flags)
Definition: esys_tr.c:569
TSS2_RC Esys_TR_FromTPMPublic_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *object)
Definition: esys_tr.c:216
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:127
TSS2_RC Esys_TR_SetAuth(ESYS_CONTEXT *esysContext, ESYS_TR handle, TPM2B_AUTH const *authValue)
Definition: esys_tr.c:456
uint32_t ESYS_TR
Definition: tss2_esys.h:16
TSS2_RC Esys_TR_Serialize(ESYS_CONTEXT *esys_context, ESYS_TR object, uint8_t **buffer, size_t *buffer_size)
Definition: esys_tr.c:38
TSS2_RC Esys_TRSess_SetAttributes(ESYS_CONTEXT *esysContext, ESYS_TR session, TPMA_SESSION flags, TPMA_SESSION mask)
Definition: esys_tr.c:599
TSS2_RC Esys_TR_GetName(ESYS_CONTEXT *esysContext, ESYS_TR handle, TPM2B_NAME **name)
Definition: esys_tr.c:509
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:367
TSS2_RC Esys_ActivateCredential_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **certInfo)
Definition: Esys_ActivateCredential.c:261
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:145
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:66
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:71
TSS2_RC Esys_CertifyCreation_Finish(ESYS_CONTEXT *esysContext, TPM2B_ATTEST **certifyInfo, TPMT_SIGNATURE **signature)
Definition: Esys_CertifyCreation.c:274
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:68
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:264
TSS2_RC Esys_ChangeEPS(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_ChangeEPS.c:64
TSS2_RC Esys_ChangeEPS_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_ChangeEPS.c:236
TSS2_RC Esys_ChangeEPS_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_ChangeEPS.c:138
TSS2_RC Esys_ChangePPS(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_ChangePPS.c:64
TSS2_RC Esys_ChangePPS_Async(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_ChangePPS.c:138
TSS2_RC Esys_ChangePPS_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_ChangePPS.c:236
TSS2_RC Esys_Clear(ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_Clear.c:64
TSS2_RC Esys_Clear_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_Clear.c:240
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:66
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:143
TSS2_RC Esys_ClearControl_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_ClearControl.c:242
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:240
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:141
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:65
TSS2_RC Esys_ClockSet_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_ClockSet.c:240
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:141
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:65
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:69
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:257
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:148
TSS2_RC Esys_ContextLoad(ESYS_CONTEXT *esysContext, const TPMS_CONTEXT *context, ESYS_TR *loadedHandle)
Definition: Esys_ContextLoad.c:63
TSS2_RC Esys_ContextLoad_Async(ESYS_CONTEXT *esysContext, const TPMS_CONTEXT *context)
Definition: Esys_ContextLoad.c:117
TSS2_RC Esys_ContextLoad_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *loadedHandle)
Definition: Esys_ContextLoad.c:208
TSS2_RC Esys_ContextSave(ESYS_CONTEXT *esysContext, ESYS_TR saveHandle, TPMS_CONTEXT **context)
Definition: Esys_ContextSave.c:61
TSS2_RC Esys_ContextSave_Finish(ESYS_CONTEXT *esysContext, TPMS_CONTEXT **context)
Definition: Esys_ContextSave.c:188
TSS2_RC Esys_ContextSave_Async(ESYS_CONTEXT *esysContext, ESYS_TR saveHandle)
Definition: Esys_ContextSave.c:119
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:174
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:301
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:302
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:177
TSS2_RC Esys_DictionaryAttackLockReset_Async(ESYS_CONTEXT *esysContext, ESYS_TR lockHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_DictionaryAttackLockReset.c:138
TSS2_RC Esys_DictionaryAttackLockReset_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_DictionaryAttackLockReset.c:237
TSS2_RC Esys_DictionaryAttackLockReset(ESYS_CONTEXT *esysContext, ESYS_TR lockHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_DictionaryAttackLockReset.c:64
TSS2_RC Esys_DictionaryAttackParameters_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_DictionaryAttackParameters.c:259
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:154
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:70
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:155
TSS2_RC Esys_Duplicate_Finish(ESYS_CONTEXT *esysContext, TPM2B_DATA **encryptionKeyOut, TPM2B_PRIVATE **duplicate, TPM2B_ENCRYPTED_SECRET **outSymSeed)
Definition: Esys_Duplicate.c:274
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:74
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:131
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:61
TSS2_RC Esys_EC_Ephemeral_Finish(ESYS_CONTEXT *esysContext, TPM2B_ECC_POINT **Q, UINT16 *counter)
Definition: Esys_EC_Ephemeral.c:220
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:135
TSS2_RC Esys_ECC_Parameters_Finish(ESYS_CONTEXT *esysContext, TPMS_ALGORITHM_DETAIL_ECC **parameters)
Definition: Esys_ECC_Parameters.c:223
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:63
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:65
TSS2_RC Esys_ECDH_KeyGen_Finish(ESYS_CONTEXT *esysContext, TPM2B_ECC_POINT **zPoint, TPM2B_ECC_POINT **pubPoint)
Definition: Esys_ECDH_KeyGen.c:235
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:138
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:133
TSS2_RC Esys_ECDH_ZGen_Finish(ESYS_CONTEXT *esysContext, TPM2B_ECC_POINT **outPoint)
Definition: Esys_ECDH_ZGen.c:235
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:62
TSS2_RC Esys_EncryptDecrypt_Finish(ESYS_CONTEXT *esysContext, TPM2B_MAX_BUFFER **outData, TPM2B_IV **ivOut)
Definition: Esys_EncryptDecrypt.c:261
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:70
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:65
TSS2_RC Esys_EventSequenceComplete_Finish(ESYS_CONTEXT *esysContext, TPML_DIGEST_VALUES **results)
Definition: Esys_EventSequenceComplete.c:257
TSS2_RC Esys_EvictControl_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *newObjectHandle)
Definition: Esys_EvictControl.c:271
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:78
TSS2_RC Esys_FlushContext_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_FlushContext.c:183
TSS2_RC Esys_FlushContext_Async(ESYS_CONTEXT *esysContext, ESYS_TR flushHandle)
Definition: Esys_FlushContext.c:116
TSS2_RC Esys_FlushContext(ESYS_CONTEXT *esysContext, ESYS_TR flushHandle)
Definition: Esys_FlushContext.c:59
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:147
TSS2_RC Esys_GetCapability_Finish(ESYS_CONTEXT *esysContext, TPMI_YES_NO *moreData, TPMS_CAPABILITY_DATA **capabilityData)
Definition: Esys_GetCapability.c:240
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:68
TSS2_RC Esys_GetCommandAuditDigest_Finish(ESYS_CONTEXT *esysContext, TPM2B_ATTEST **auditInfo, TPMT_SIGNATURE **signature)
Definition: Esys_GetCommandAuditDigest.c:262
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:67
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:147
TSS2_RC Esys_GetRandom_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, UINT16 bytesRequested)
Definition: Esys_GetRandom.c:129
TSS2_RC Esys_GetRandom_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **randomBytes)
Definition: Esys_GetRandom.c:217
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:60
TSS2_RC Esys_GetSessionAuditDigest_Finish(ESYS_CONTEXT *esysContext, TPM2B_ATTEST **auditInfo, TPMT_SIGNATURE **signature)
Definition: Esys_GetSessionAuditDigest.c:276
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:153
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:69
TSS2_RC Esys_GetTestResult_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_GetTestResult.c:127
TSS2_RC Esys_GetTestResult_Finish(ESYS_CONTEXT *esysContext, TPM2B_MAX_BUFFER **outData, TPM2_RC *testResult)
Definition: Esys_GetTestResult.c:215
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:60
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:260
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:68
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:76
TSS2_RC Esys_HMAC_Start_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *sequenceHandle)
Definition: Esys_HMAC_Start.c:254
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:151
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:63
TSS2_RC Esys_HMAC_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **outHMAC)
Definition: Esys_HMAC.c:240
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:137
TSS2_RC Esys_Hash_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **outHash, TPMT_TK_HASHCHECK **validation)
Definition: Esys_Hash.c:239
TSS2_RC Esys_HashSequenceStart_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *sequenceHandle)
Definition: Esys_HashSequenceStart.c:218
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:60
TSS2_RC Esys_HierarchyChangeAuth_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_HierarchyChangeAuth.c:253
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:77
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:151
TSS2_RC Esys_HierarchyControl_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_HierarchyControl.c:260
TSS2_RC Esys_Import_Finish(ESYS_CONTEXT *esysContext, TPM2B_PRIVATE **outPrivate)
Definition: Esys_Import.c:263
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:152
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:69
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:135
TSS2_RC Esys_IncrementalSelfTest_Finish(ESYS_CONTEXT *esysContext, TPML_ALG **toDoList)
Definition: Esys_IncrementalSelfTest.c:223
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:63
TSS2_RC Esys_LoadExternal_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *objectHandle)
Definition: Esys_LoadExternal.c:243
TSS2_RC Esys_Load_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *objectHandle)
Definition: Esys_Load.c:253
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:149
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:66
TSS2_RC Esys_MakeCredential_Finish(ESYS_CONTEXT *esysContext, TPM2B_ID_OBJECT **credentialBlob, TPM2B_ENCRYPTED_SECRET **secret)
Definition: Esys_MakeCredential.c:243
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:72
TSS2_RC Esys_NV_Certify_Finish(ESYS_CONTEXT *esysContext, TPM2B_ATTEST **certifyInfo, TPMT_SIGNATURE **signature)
Definition: Esys_NV_Certify.c:286
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:158
TSS2_RC Esys_NV_ChangeAuth_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_NV_ChangeAuth.c:249
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:76
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:149
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:160
TSS2_RC Esys_NV_DefineSpace_Finish(ESYS_CONTEXT *esysContext, ESYS_TR *nvHandle)
Definition: Esys_NV_DefineSpace.c:283
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:148
TSS2_RC Esys_NV_Extend_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_NV_Extend.c:255
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:72
TSS2_RC Esys_NV_GlobalWriteLock_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_NV_GlobalWriteLock.c:237
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:138
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:64
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:151
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:74
TSS2_RC Esys_NV_Increment_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_NV_Increment.c:256
TSS2_RC Esys_NV_Read_Finish(ESYS_CONTEXT *esysContext, TPM2B_MAX_NV_BUFFER **data)
Definition: Esys_NV_Read.c:255
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:67
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:151
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:74
TSS2_RC Esys_NV_ReadLock_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_NV_ReadLock.c:256
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:73
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:146
TSS2_RC Esys_NV_ReadPublic_Finish(ESYS_CONTEXT *esysContext, TPM2B_NV_PUBLIC **nvPublic, TPM2B_NAME **nvName)
Definition: Esys_NV_ReadPublic.c:244
TSS2_RC Esys_NV_SetBits_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_NV_SetBits.c:261
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:154
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:75
TSS2_RC Esys_NV_UndefineSpace_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_NV_UndefineSpace.c:254
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:73
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:149
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:73
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:149
TSS2_RC Esys_NV_UndefineSpaceSpecial_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_NV_UndefineSpaceSpecial.c:261
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:151
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:73
TSS2_RC Esys_NV_Write_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_NV_Write.c:259
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:74
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:151
TSS2_RC Esys_NV_WriteLock_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_NV_WriteLock.c:256
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:246
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:62
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:70
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:256
TSS2_RC Esys_PCR_Event_Finish(ESYS_CONTEXT *esysContext, TPML_DIGEST_VALUES **digests)
Definition: Esys_PCR_Event.c:239
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:138
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:64
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:65
TSS2_RC Esys_PCR_Extend_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PCR_Extend.c:240
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:141
TSS2_RC Esys_PCR_Read_Finish(ESYS_CONTEXT *esysContext, UINT32 *pcrUpdateCounter, TPML_PCR_SELECTION **pcrSelectionOut, TPML_DIGEST **pcrValues)
Definition: Esys_PCR_Read.c:234
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:67
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:142
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:138
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:64
TSS2_RC Esys_PCR_Reset_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PCR_Reset.c:236
TSS2_RC Esys_PCR_SetAuthPolicy_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PCR_SetAuthPolicy.c:245
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:64
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:152
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:78
TSS2_RC Esys_PCR_SetAuthValue_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PCR_SetAuthValue.c:253
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:148
TSS2_RC Esys_PP_Commands_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PP_Commands.c:250
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:68
TSS2_RC Esys_PolicyAuthValue(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_PolicyAuthValue.c:72
TSS2_RC Esys_PolicyAuthValue_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_PolicyAuthValue.c:146
TSS2_RC Esys_PolicyAuthValue_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PolicyAuthValue.c:241
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:153
TSS2_RC Esys_PolicyAuthorize_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PolicyAuthorize.c:255
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:69
TSS2_RC Esys_PolicyCommandCode_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PolicyCommandCode.c:237
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:65
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:65
TSS2_RC Esys_PolicyCounterTimer_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PolicyCounterTimer.c:243
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:144
TSS2_RC Esys_PolicyCpHash_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PolicyCpHash.c:236
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:65
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:141
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:68
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:150
TSS2_RC Esys_PolicyDuplicationSelect_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PolicyDuplicationSelect.c:250
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:64
TSS2_RC Esys_PolicyGetDigest_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **policyDigest)
Definition: Esys_PolicyGetDigest.c:233
TSS2_RC Esys_PolicyGetDigest_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_PolicyGetDigest.c:136
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:65
TSS2_RC Esys_PolicyLocality_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PolicyLocality.c:237
TSS2_RC Esys_PolicyNV_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PolicyNV.c:267
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:150
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:67
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:65
TSS2_RC Esys_PolicyNameHash_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PolicyNameHash.c:237
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:237
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:65
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:141
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:65
TSS2_RC Esys_PolicyOR_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PolicyOR.c:235
TSS2_RC Esys_PolicyPCR_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PolicyPCR.c:237
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:64
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:241
TSS2_RC Esys_PolicyPassword_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_PolicyPassword.c:146
TSS2_RC Esys_PolicyPassword(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_PolicyPassword.c:72
TSS2_RC Esys_PolicyPhysicalPresence_Async(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_PolicyPhysicalPresence.c:138
TSS2_RC Esys_PolicyPhysicalPresence_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PolicyPhysicalPresence.c:232
TSS2_RC Esys_PolicyPhysicalPresence(ESYS_CONTEXT *esysContext, ESYS_TR policySession, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_PolicyPhysicalPresence.c:64
TSS2_RC Esys_PolicyRestart(ESYS_CONTEXT *esysContext, ESYS_TR sessionHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_PolicyRestart.c:64
TSS2_RC Esys_PolicyRestart_Async(ESYS_CONTEXT *esysContext, ESYS_TR sessionHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_PolicyRestart.c:138
TSS2_RC Esys_PolicyRestart_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PolicyRestart.c:231
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:157
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:73
TSS2_RC Esys_PolicySecret_Finish(ESYS_CONTEXT *esysContext, TPM2B_TIMEOUT **timeout, TPMT_TK_AUTH **policyTicket)
Definition: Esys_PolicySecret.c:276
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:160
TSS2_RC Esys_PolicySigned_Finish(ESYS_CONTEXT *esysContext, TPM2B_TIMEOUT **timeout, TPMT_TK_AUTH **policyTicket)
Definition: Esys_PolicySigned.c:276
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:74
TSS2_RC Esys_PolicyTicket_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_PolicyTicket.c:256
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:154
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:69
TSS2_RC Esys_Quote_Finish(ESYS_CONTEXT *esysContext, TPM2B_ATTEST **quoted, TPMT_SIGNATURE **signature)
Definition: Esys_Quote.c:250
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:66
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:64
TSS2_RC Esys_RSA_Decrypt_Finish(ESYS_CONTEXT *esysContext, TPM2B_PUBLIC_KEY_RSA **message)
Definition: Esys_RSA_Decrypt.c:245
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:65
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:242
TSS2_RC Esys_ReadClock(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMS_TIME_INFO **currentTime)
Definition: Esys_ReadClock.c:62
TSS2_RC Esys_ReadClock_Finish(ESYS_CONTEXT *esysContext, TPMS_TIME_INFO **currentTime)
Definition: Esys_ReadClock.c:218
TSS2_RC Esys_ReadClock_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_ReadClock.c:131
TSS2_RC Esys_ReadPublic_Async(ESYS_CONTEXT *esysContext, ESYS_TR objectHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_ReadPublic.c:141
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:67
TSS2_RC Esys_ReadPublic_Finish(ESYS_CONTEXT *esysContext, TPM2B_PUBLIC **outPublic, TPM2B_NAME **name, TPM2B_NAME **qualifiedName)
Definition: Esys_ReadPublic.c:240
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:264
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:69
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:132
TSS2_RC Esys_SelfTest(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_YES_NO fullTest)
Definition: Esys_SelfTest.c:61
TSS2_RC Esys_SelfTest_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_SelfTest.c:218
TSS2_RC Esys_SequenceComplete_Finish(ESYS_CONTEXT *esysContext, TPM2B_DIGEST **result, TPMT_TK_HASHCHECK **validation)
Definition: Esys_SequenceComplete.c:266
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:62
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:236
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:66
TSS2_RC Esys_SetAlgorithmSet_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_SetAlgorithmSet.c:243
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:152
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:69
TSS2_RC Esys_SetCommandCodeAuditStatus_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_SetCommandCodeAuditStatus.c:257
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:65
TSS2_RC Esys_SetPrimaryPolicy_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_SetPrimaryPolicy.c:244
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:218
TSS2_RC Esys_Shutdown(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPM2_SU shutdownType)
Definition: Esys_Shutdown.c:61
TSS2_RC Esys_Shutdown_Async(ESYS_CONTEXT *esysContext, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPM2_SU shutdownType)
Definition: Esys_Shutdown.c:132
TSS2_RC Esys_Sign_Finish(ESYS_CONTEXT *esysContext, TPMT_SIGNATURE **signature)
Definition: Esys_Sign.c:251
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:67
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:177
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:96
TSS2_RC Esys_Startup_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_Startup.c:161
TSS2_RC Esys_Startup(ESYS_CONTEXT *esysContext, TPM2_SU startupType)
Definition: Esys_Startup.c:48
TSS2_RC Esys_Startup_Async(ESYS_CONTEXT *esysContext, TPM2_SU startupType)
Definition: Esys_Startup.c:102
TSS2_RC Esys_StirRandom_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_StirRandom.c:212
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:126
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:58
TSS2_RC Esys_TestParms_Finish(ESYS_CONTEXT *esysContext)
Definition: Esys_TestParms.c:220
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:61
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:134
TSS2_RC Esys_Unseal_Async(ESYS_CONTEXT *esysContext, ESYS_TR itemHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
Definition: Esys_Unseal.c:135
TSS2_RC Esys_Unseal_Finish(ESYS_CONTEXT *esysContext, TPM2B_SENSITIVE_DATA **outData)
Definition: Esys_Unseal.c:235
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:63
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:57
TSS2_RC Esys_Vendor_TCG_Test_Finish(ESYS_CONTEXT *esysContext, TPM2B_DATA **outputData)
Definition: Esys_Vendor_TCG_Test.c:211
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:123
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:242
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:66
TSS2_RC Esys_ZGen_2Phase_Finish(ESYS_CONTEXT *esysContext, TPM2B_ECC_POINT **outZ1, TPM2B_ECC_POINT **outZ2)
Definition: Esys_ZGen_2Phase.c:257
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:68
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:161
Definition: tss2_esys.h:356
Definition: esys_crypto_mbed.c:34