xref: /aosp_15_r20/external/tpm2-tss/include/tss2/tss2_sys.h (revision 758e9fba6fc9adbf15340f70c73baee7b168b1c9)
1*758e9fbaSOystein Eftevaag /* SPDX-License-Identifier: BSD-2-Clause */
2*758e9fbaSOystein Eftevaag /***********************************************************************;
3*758e9fbaSOystein Eftevaag  * Copyright (c) 2015-2018, Intel Corporation
4*758e9fbaSOystein Eftevaag  *
5*758e9fbaSOystein Eftevaag  * Copyright 2015, Andreas Fuchs @ Fraunhofer SIT
6*758e9fbaSOystein Eftevaag  *
7*758e9fbaSOystein Eftevaag  * All rights reserved.
8*758e9fbaSOystein Eftevaag  ***********************************************************************/
9*758e9fbaSOystein Eftevaag 
10*758e9fbaSOystein Eftevaag #ifndef TSS2_SYS_H
11*758e9fbaSOystein Eftevaag #define TSS2_SYS_H
12*758e9fbaSOystein Eftevaag 
13*758e9fbaSOystein Eftevaag #include "tss2_common.h"
14*758e9fbaSOystein Eftevaag #include "tss2_tcti.h"
15*758e9fbaSOystein Eftevaag #include "tss2_tpm2_types.h"
16*758e9fbaSOystein Eftevaag 
17*758e9fbaSOystein Eftevaag #ifndef TSS2_API_VERSION_1_2_1_108
18*758e9fbaSOystein Eftevaag #error Version mismatch among TSS2 header files.
19*758e9fbaSOystein Eftevaag #endif  /* TSS2_API_VERSION_1_2_1_108 */
20*758e9fbaSOystein Eftevaag 
21*758e9fbaSOystein Eftevaag #ifdef __cplusplus
22*758e9fbaSOystein Eftevaag extern "C" {
23*758e9fbaSOystein Eftevaag #endif
24*758e9fbaSOystein Eftevaag 
25*758e9fbaSOystein Eftevaag /* SAPI context blob */
26*758e9fbaSOystein Eftevaag typedef struct _TSS2_SYS_OPAQUE_CONTEXT_BLOB TSS2_SYS_CONTEXT;
27*758e9fbaSOystein Eftevaag 
28*758e9fbaSOystein Eftevaag #define TSS2_SYS_MAX_SESSIONS 3
29*758e9fbaSOystein Eftevaag 
30*758e9fbaSOystein Eftevaag /* Input structure for authorization area(s). */
31*758e9fbaSOystein Eftevaag typedef struct {
32*758e9fbaSOystein Eftevaag     uint16_t count;
33*758e9fbaSOystein Eftevaag     TPMS_AUTH_COMMAND auths[TSS2_SYS_MAX_SESSIONS];
34*758e9fbaSOystein Eftevaag } TSS2L_SYS_AUTH_COMMAND;
35*758e9fbaSOystein Eftevaag 
36*758e9fbaSOystein Eftevaag typedef struct {
37*758e9fbaSOystein Eftevaag     uint16_t count;
38*758e9fbaSOystein Eftevaag     TPMS_AUTH_RESPONSE auths[TSS2_SYS_MAX_SESSIONS];
39*758e9fbaSOystein Eftevaag } TSS2L_SYS_AUTH_RESPONSE;
40*758e9fbaSOystein Eftevaag 
41*758e9fbaSOystein Eftevaag size_t  Tss2_Sys_GetContextSize(
42*758e9fbaSOystein Eftevaag     size_t maxCommandResponseSize);
43*758e9fbaSOystein Eftevaag 
44*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Initialize(
45*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
46*758e9fbaSOystein Eftevaag     size_t contextSize,
47*758e9fbaSOystein Eftevaag     TSS2_TCTI_CONTEXT *tctiContext,
48*758e9fbaSOystein Eftevaag     TSS2_ABI_VERSION *abiVersion);
49*758e9fbaSOystein Eftevaag 
50*758e9fbaSOystein Eftevaag void Tss2_Sys_Finalize(
51*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
52*758e9fbaSOystein Eftevaag 
53*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetTctiContext(
54*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
55*758e9fbaSOystein Eftevaag     TSS2_TCTI_CONTEXT **tctiContext);
56*758e9fbaSOystein Eftevaag 
57*758e9fbaSOystein Eftevaag /* Command Preparation Functions */
58*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetDecryptParam(
59*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
60*758e9fbaSOystein Eftevaag     size_t *decryptParamSize,
61*758e9fbaSOystein Eftevaag     const uint8_t **decryptParamBuffer);
62*758e9fbaSOystein Eftevaag 
63*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SetDecryptParam(
64*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
65*758e9fbaSOystein Eftevaag     size_t decryptParamSize,
66*758e9fbaSOystein Eftevaag     const uint8_t *decryptParamBuffer);
67*758e9fbaSOystein Eftevaag 
68*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetCpBuffer(
69*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
70*758e9fbaSOystein Eftevaag     size_t *cpBufferUsedSize,
71*758e9fbaSOystein Eftevaag     const uint8_t **cpBuffer);
72*758e9fbaSOystein Eftevaag 
73*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SetCmdAuths(
74*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
75*758e9fbaSOystein Eftevaag     const TSS2L_SYS_AUTH_COMMAND *cmdAuthsArray);
76*758e9fbaSOystein Eftevaag 
77*758e9fbaSOystein Eftevaag /* Command Execution Functions */
78*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ExecuteAsync(
79*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
80*758e9fbaSOystein Eftevaag 
81*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ExecuteFinish(
82*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
83*758e9fbaSOystein Eftevaag     int32_t timeout);
84*758e9fbaSOystein Eftevaag 
85*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Execute(
86*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
87*758e9fbaSOystein Eftevaag 
88*758e9fbaSOystein Eftevaag /* Command Completion functions */
89*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetCommandCode(
90*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
91*758e9fbaSOystein Eftevaag     UINT8 *commandCode);
92*758e9fbaSOystein Eftevaag 
93*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetRspAuths(
94*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
95*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
96*758e9fbaSOystein Eftevaag 
97*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetEncryptParam(
98*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
99*758e9fbaSOystein Eftevaag     size_t *encryptParamSize,
100*758e9fbaSOystein Eftevaag     const uint8_t **encryptParamBuffer);
101*758e9fbaSOystein Eftevaag 
102*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SetEncryptParam(
103*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
104*758e9fbaSOystein Eftevaag     size_t encryptParamSize,
105*758e9fbaSOystein Eftevaag     const uint8_t *encryptParamBuffer);
106*758e9fbaSOystein Eftevaag 
107*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetRpBuffer(
108*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
109*758e9fbaSOystein Eftevaag     size_t *rpBufferUsedSize,
110*758e9fbaSOystein Eftevaag     const uint8_t **rpBuffer);
111*758e9fbaSOystein Eftevaag 
112*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Startup_Prepare(
113*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
114*758e9fbaSOystein Eftevaag     TPM2_SU startupType);
115*758e9fbaSOystein Eftevaag 
116*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Startup_Complete(
117*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
118*758e9fbaSOystein Eftevaag 
119*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Startup(
120*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
121*758e9fbaSOystein Eftevaag     TPM2_SU startupType);
122*758e9fbaSOystein Eftevaag 
123*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Shutdown_Prepare(
124*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
125*758e9fbaSOystein Eftevaag     TPM2_SU shutdownType);
126*758e9fbaSOystein Eftevaag 
127*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Shutdown_Complete(
128*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
129*758e9fbaSOystein Eftevaag 
130*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Shutdown(
131*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
132*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
133*758e9fbaSOystein Eftevaag     TPM2_SU shutdownType,
134*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
135*758e9fbaSOystein Eftevaag 
136*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SelfTest_Prepare(
137*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
138*758e9fbaSOystein Eftevaag     TPMI_YES_NO fullTest);
139*758e9fbaSOystein Eftevaag 
140*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SelfTest_Complete(
141*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
142*758e9fbaSOystein Eftevaag 
143*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SelfTest(
144*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
145*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
146*758e9fbaSOystein Eftevaag     TPMI_YES_NO fullTest,
147*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
148*758e9fbaSOystein Eftevaag 
149*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_IncrementalSelfTest_Prepare(
150*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
151*758e9fbaSOystein Eftevaag     const TPML_ALG *toTest);
152*758e9fbaSOystein Eftevaag 
153*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_IncrementalSelfTest_Complete(
154*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
155*758e9fbaSOystein Eftevaag     TPML_ALG *toDoList);
156*758e9fbaSOystein Eftevaag 
157*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_IncrementalSelfTest(
158*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
159*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
160*758e9fbaSOystein Eftevaag     const TPML_ALG *toTest,
161*758e9fbaSOystein Eftevaag     TPML_ALG *toDoList,
162*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
163*758e9fbaSOystein Eftevaag 
164*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetTestResult_Prepare(
165*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
166*758e9fbaSOystein Eftevaag 
167*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetTestResult_Complete(
168*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
169*758e9fbaSOystein Eftevaag     TPM2B_MAX_BUFFER *outData,
170*758e9fbaSOystein Eftevaag     TPM2_RC *testResult);
171*758e9fbaSOystein Eftevaag 
172*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetTestResult(
173*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
174*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
175*758e9fbaSOystein Eftevaag     TPM2B_MAX_BUFFER *outData,
176*758e9fbaSOystein Eftevaag     TPM2_RC *testResult,
177*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
178*758e9fbaSOystein Eftevaag 
179*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_StartAuthSession_Prepare(
180*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
181*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT tpmKey,
182*758e9fbaSOystein Eftevaag     TPMI_DH_ENTITY bind,
183*758e9fbaSOystein Eftevaag     const TPM2B_NONCE *nonceCaller,
184*758e9fbaSOystein Eftevaag     const TPM2B_ENCRYPTED_SECRET *encryptedSalt,
185*758e9fbaSOystein Eftevaag     TPM2_SE sessionType,
186*758e9fbaSOystein Eftevaag     const TPMT_SYM_DEF    *symmetric,
187*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH authHash);
188*758e9fbaSOystein Eftevaag 
189*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_StartAuthSession_Complete(
190*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
191*758e9fbaSOystein Eftevaag     TPMI_SH_AUTH_SESSION *sessionHandle,
192*758e9fbaSOystein Eftevaag     TPM2B_NONCE *nonceTPM);
193*758e9fbaSOystein Eftevaag 
194*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_StartAuthSession(
195*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
196*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT tpmKey,
197*758e9fbaSOystein Eftevaag     TPMI_DH_ENTITY bind,
198*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
199*758e9fbaSOystein Eftevaag     const TPM2B_NONCE *nonceCaller,
200*758e9fbaSOystein Eftevaag     const TPM2B_ENCRYPTED_SECRET *encryptedSalt,
201*758e9fbaSOystein Eftevaag     TPM2_SE sessionType,
202*758e9fbaSOystein Eftevaag     const TPMT_SYM_DEF    *symmetric,
203*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH authHash,
204*758e9fbaSOystein Eftevaag     TPMI_SH_AUTH_SESSION *sessionHandle,
205*758e9fbaSOystein Eftevaag     TPM2B_NONCE *nonceTPM,
206*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
207*758e9fbaSOystein Eftevaag 
208*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyRestart_Prepare(
209*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
210*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY sessionHandle);
211*758e9fbaSOystein Eftevaag 
212*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyRestart_Complete(
213*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
214*758e9fbaSOystein Eftevaag 
215*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyRestart(
216*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
217*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY sessionHandle,
218*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
219*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
220*758e9fbaSOystein Eftevaag 
221*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Create_Prepare(
222*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
223*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT parentHandle,
224*758e9fbaSOystein Eftevaag     const TPM2B_SENSITIVE_CREATE *inSensitive,
225*758e9fbaSOystein Eftevaag     const TPM2B_PUBLIC *inPublic,
226*758e9fbaSOystein Eftevaag     const TPM2B_DATA *outsideInfo,
227*758e9fbaSOystein Eftevaag     const TPML_PCR_SELECTION *creationPCR);
228*758e9fbaSOystein Eftevaag 
229*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Create_Complete(
230*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
231*758e9fbaSOystein Eftevaag     TPM2B_PRIVATE *outPrivate,
232*758e9fbaSOystein Eftevaag     TPM2B_PUBLIC *outPublic,
233*758e9fbaSOystein Eftevaag     TPM2B_CREATION_DATA *creationData,
234*758e9fbaSOystein Eftevaag     TPM2B_DIGEST *creationHash,
235*758e9fbaSOystein Eftevaag     TPMT_TK_CREATION *creationTicket);
236*758e9fbaSOystein Eftevaag 
237*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Create(
238*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
239*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT parentHandle,
240*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
241*758e9fbaSOystein Eftevaag     const TPM2B_SENSITIVE_CREATE *inSensitive,
242*758e9fbaSOystein Eftevaag     const TPM2B_PUBLIC *inPublic,
243*758e9fbaSOystein Eftevaag     const TPM2B_DATA *outsideInfo,
244*758e9fbaSOystein Eftevaag     const TPML_PCR_SELECTION *creationPCR,
245*758e9fbaSOystein Eftevaag     TPM2B_PRIVATE *outPrivate,
246*758e9fbaSOystein Eftevaag     TPM2B_PUBLIC *outPublic,
247*758e9fbaSOystein Eftevaag     TPM2B_CREATION_DATA *creationData,
248*758e9fbaSOystein Eftevaag     TPM2B_DIGEST *creationHash,
249*758e9fbaSOystein Eftevaag     TPMT_TK_CREATION *creationTicket,
250*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray
251*758e9fbaSOystein Eftevaag     );
252*758e9fbaSOystein Eftevaag 
253*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Load_Prepare(
254*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
255*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT parentHandle,
256*758e9fbaSOystein Eftevaag     const TPM2B_PRIVATE *inPrivate,
257*758e9fbaSOystein Eftevaag     const TPM2B_PUBLIC *inPublic
258*758e9fbaSOystein Eftevaag     );
259*758e9fbaSOystein Eftevaag 
260*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Load_Complete(
261*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
262*758e9fbaSOystein Eftevaag     TPM2_HANDLE *objectHandle,
263*758e9fbaSOystein Eftevaag     TPM2B_NAME *name
264*758e9fbaSOystein Eftevaag     );
265*758e9fbaSOystein Eftevaag 
266*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Load(
267*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
268*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT parentHandle,
269*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
270*758e9fbaSOystein Eftevaag     const TPM2B_PRIVATE *inPrivate,
271*758e9fbaSOystein Eftevaag     const TPM2B_PUBLIC *inPublic,
272*758e9fbaSOystein Eftevaag     TPM2_HANDLE *objectHandle,
273*758e9fbaSOystein Eftevaag     TPM2B_NAME *name,
274*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray
275*758e9fbaSOystein Eftevaag     );
276*758e9fbaSOystein Eftevaag 
277*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_LoadExternal_Prepare(
278*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
279*758e9fbaSOystein Eftevaag     const TPM2B_SENSITIVE *inPrivate,
280*758e9fbaSOystein Eftevaag     const TPM2B_PUBLIC *inPublic,
281*758e9fbaSOystein Eftevaag     TPMI_RH_HIERARCHY hierarchy);
282*758e9fbaSOystein Eftevaag 
283*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_LoadExternal_Complete(
284*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
285*758e9fbaSOystein Eftevaag     TPM2_HANDLE *objectHandle,
286*758e9fbaSOystein Eftevaag     TPM2B_NAME *name);
287*758e9fbaSOystein Eftevaag 
288*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_LoadExternal(
289*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
290*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
291*758e9fbaSOystein Eftevaag     const TPM2B_SENSITIVE *inPrivate,
292*758e9fbaSOystein Eftevaag     const TPM2B_PUBLIC *inPublic,
293*758e9fbaSOystein Eftevaag     TPMI_RH_HIERARCHY hierarchy,
294*758e9fbaSOystein Eftevaag     TPM2_HANDLE *objectHandle,
295*758e9fbaSOystein Eftevaag     TPM2B_NAME *name,
296*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
297*758e9fbaSOystein Eftevaag 
298*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ReadPublic_Prepare(
299*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
300*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT objectHandle);
301*758e9fbaSOystein Eftevaag 
302*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ReadPublic_Complete(
303*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
304*758e9fbaSOystein Eftevaag     TPM2B_PUBLIC *outPublic,
305*758e9fbaSOystein Eftevaag     TPM2B_NAME *name,
306*758e9fbaSOystein Eftevaag     TPM2B_NAME *qualifiedName);
307*758e9fbaSOystein Eftevaag 
308*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ReadPublic(
309*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
310*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT objectHandle,
311*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
312*758e9fbaSOystein Eftevaag     TPM2B_PUBLIC *outPublic,
313*758e9fbaSOystein Eftevaag     TPM2B_NAME *name,
314*758e9fbaSOystein Eftevaag     TPM2B_NAME *qualifiedName,
315*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
316*758e9fbaSOystein Eftevaag 
317*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ActivateCredential_Prepare(
318*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
319*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT activateHandle,
320*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
321*758e9fbaSOystein Eftevaag     const TPM2B_ID_OBJECT *credentialBlob,
322*758e9fbaSOystein Eftevaag     const TPM2B_ENCRYPTED_SECRET *secret);
323*758e9fbaSOystein Eftevaag 
324*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ActivateCredential_Complete(
325*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
326*758e9fbaSOystein Eftevaag     TPM2B_DIGEST *certInfo);
327*758e9fbaSOystein Eftevaag 
328*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ActivateCredential(
329*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
330*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT activateHandle,
331*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
332*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
333*758e9fbaSOystein Eftevaag     const TPM2B_ID_OBJECT *credentialBlob,
334*758e9fbaSOystein Eftevaag     const TPM2B_ENCRYPTED_SECRET *secret,
335*758e9fbaSOystein Eftevaag     TPM2B_DIGEST *certInfo,
336*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
337*758e9fbaSOystein Eftevaag 
338*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_MakeCredential_Prepare(
339*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
340*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT handle,
341*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *credential,
342*758e9fbaSOystein Eftevaag     const TPM2B_NAME *objectName);
343*758e9fbaSOystein Eftevaag 
344*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_MakeCredential_Complete(
345*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
346*758e9fbaSOystein Eftevaag     TPM2B_ID_OBJECT *credentialBlob,
347*758e9fbaSOystein Eftevaag     TPM2B_ENCRYPTED_SECRET *secret);
348*758e9fbaSOystein Eftevaag 
349*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_MakeCredential(
350*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
351*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT handle,
352*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
353*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *credential,
354*758e9fbaSOystein Eftevaag     const TPM2B_NAME *objectName,
355*758e9fbaSOystein Eftevaag     TPM2B_ID_OBJECT *credentialBlob,
356*758e9fbaSOystein Eftevaag     TPM2B_ENCRYPTED_SECRET *secret,
357*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
358*758e9fbaSOystein Eftevaag 
359*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Unseal_Prepare(
360*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
361*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT itemHandle);
362*758e9fbaSOystein Eftevaag 
363*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Unseal_Complete(
364*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
365*758e9fbaSOystein Eftevaag     TPM2B_SENSITIVE_DATA *outData);
366*758e9fbaSOystein Eftevaag 
367*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Unseal(
368*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
369*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT itemHandle,
370*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
371*758e9fbaSOystein Eftevaag     TPM2B_SENSITIVE_DATA *outData,
372*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
373*758e9fbaSOystein Eftevaag 
374*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ObjectChangeAuth_Prepare(
375*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
376*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT objectHandle,
377*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT parentHandle,
378*758e9fbaSOystein Eftevaag     const TPM2B_AUTH *newAuth);
379*758e9fbaSOystein Eftevaag 
380*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ObjectChangeAuth_Complete(
381*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
382*758e9fbaSOystein Eftevaag     TPM2B_PRIVATE *outPrivate);
383*758e9fbaSOystein Eftevaag 
384*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ObjectChangeAuth(
385*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
386*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT objectHandle,
387*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT parentHandle,
388*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
389*758e9fbaSOystein Eftevaag     const TPM2B_AUTH *newAuth,
390*758e9fbaSOystein Eftevaag     TPM2B_PRIVATE *outPrivate,
391*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
392*758e9fbaSOystein Eftevaag 
393*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Duplicate_Prepare(
394*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
395*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT objectHandle,
396*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT newParentHandle,
397*758e9fbaSOystein Eftevaag     const TPM2B_DATA *encryptionKeyIn,
398*758e9fbaSOystein Eftevaag     const TPMT_SYM_DEF_OBJECT *symmetricAlg);
399*758e9fbaSOystein Eftevaag 
400*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Duplicate_Complete(
401*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
402*758e9fbaSOystein Eftevaag     TPM2B_DATA *encryptionKeyOut,
403*758e9fbaSOystein Eftevaag     TPM2B_PRIVATE *duplicate,
404*758e9fbaSOystein Eftevaag     TPM2B_ENCRYPTED_SECRET *outSymSeed);
405*758e9fbaSOystein Eftevaag 
406*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Duplicate(
407*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
408*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT objectHandle,
409*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT newParentHandle,
410*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
411*758e9fbaSOystein Eftevaag     const TPM2B_DATA *encryptionKeyIn,
412*758e9fbaSOystein Eftevaag     const TPMT_SYM_DEF_OBJECT *symmetricAlg,
413*758e9fbaSOystein Eftevaag     TPM2B_DATA *encryptionKeyOut,
414*758e9fbaSOystein Eftevaag     TPM2B_PRIVATE *duplicate,
415*758e9fbaSOystein Eftevaag     TPM2B_ENCRYPTED_SECRET *outSymSeed,
416*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
417*758e9fbaSOystein Eftevaag 
418*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Rewrap_Prepare(
419*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
420*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT oldParent,
421*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT newParent,
422*758e9fbaSOystein Eftevaag     const TPM2B_PRIVATE *inDuplicate,
423*758e9fbaSOystein Eftevaag     const TPM2B_NAME *name,
424*758e9fbaSOystein Eftevaag     const TPM2B_ENCRYPTED_SECRET *inSymSeed);
425*758e9fbaSOystein Eftevaag 
426*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Rewrap_Complete(
427*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
428*758e9fbaSOystein Eftevaag     TPM2B_PRIVATE *outDuplicate,
429*758e9fbaSOystein Eftevaag     TPM2B_ENCRYPTED_SECRET *outSymSeed);
430*758e9fbaSOystein Eftevaag 
431*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Rewrap(
432*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
433*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT oldParent,
434*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT newParent,
435*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
436*758e9fbaSOystein Eftevaag     const TPM2B_PRIVATE *inDuplicate,
437*758e9fbaSOystein Eftevaag     const TPM2B_NAME *name,
438*758e9fbaSOystein Eftevaag     const TPM2B_ENCRYPTED_SECRET *inSymSeed,
439*758e9fbaSOystein Eftevaag     TPM2B_PRIVATE *outDuplicate,
440*758e9fbaSOystein Eftevaag     TPM2B_ENCRYPTED_SECRET *outSymSeed,
441*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
442*758e9fbaSOystein Eftevaag 
443*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Import_Prepare(
444*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
445*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT parentHandle,
446*758e9fbaSOystein Eftevaag     const TPM2B_DATA *encryptionKey,
447*758e9fbaSOystein Eftevaag     const TPM2B_PUBLIC *objectPublic,
448*758e9fbaSOystein Eftevaag     const TPM2B_PRIVATE *duplicate,
449*758e9fbaSOystein Eftevaag     const TPM2B_ENCRYPTED_SECRET *inSymSeed,
450*758e9fbaSOystein Eftevaag     const TPMT_SYM_DEF_OBJECT *symmetricAlg);
451*758e9fbaSOystein Eftevaag 
452*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Import_Complete(
453*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
454*758e9fbaSOystein Eftevaag     TPM2B_PRIVATE *outPrivate);
455*758e9fbaSOystein Eftevaag 
456*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Import(
457*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
458*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT parentHandle,
459*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
460*758e9fbaSOystein Eftevaag     const TPM2B_DATA *encryptionKey,
461*758e9fbaSOystein Eftevaag     const TPM2B_PUBLIC *objectPublic,
462*758e9fbaSOystein Eftevaag     const TPM2B_PRIVATE *duplicate,
463*758e9fbaSOystein Eftevaag     const TPM2B_ENCRYPTED_SECRET *inSymSeed,
464*758e9fbaSOystein Eftevaag     const TPMT_SYM_DEF_OBJECT *symmetricAlg,
465*758e9fbaSOystein Eftevaag     TPM2B_PRIVATE *outPrivate,
466*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
467*758e9fbaSOystein Eftevaag 
468*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_RSA_Encrypt_Prepare(
469*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
470*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
471*758e9fbaSOystein Eftevaag     const TPM2B_PUBLIC_KEY_RSA *message,
472*758e9fbaSOystein Eftevaag     const TPMT_RSA_DECRYPT *inScheme,
473*758e9fbaSOystein Eftevaag     const TPM2B_DATA *label);
474*758e9fbaSOystein Eftevaag 
475*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_RSA_Encrypt_Complete(
476*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
477*758e9fbaSOystein Eftevaag     TPM2B_PUBLIC_KEY_RSA *outData);
478*758e9fbaSOystein Eftevaag 
479*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_RSA_Encrypt(
480*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
481*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
482*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
483*758e9fbaSOystein Eftevaag     const TPM2B_PUBLIC_KEY_RSA *message,
484*758e9fbaSOystein Eftevaag     const TPMT_RSA_DECRYPT *inScheme,
485*758e9fbaSOystein Eftevaag     const TPM2B_DATA *label,
486*758e9fbaSOystein Eftevaag     TPM2B_PUBLIC_KEY_RSA *outData,
487*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
488*758e9fbaSOystein Eftevaag 
489*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_RSA_Decrypt_Prepare(
490*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
491*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
492*758e9fbaSOystein Eftevaag     const TPM2B_PUBLIC_KEY_RSA *cipherText,
493*758e9fbaSOystein Eftevaag     const TPMT_RSA_DECRYPT *inScheme,
494*758e9fbaSOystein Eftevaag     const TPM2B_DATA *label);
495*758e9fbaSOystein Eftevaag 
496*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_RSA_Decrypt_Complete(
497*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
498*758e9fbaSOystein Eftevaag     TPM2B_PUBLIC_KEY_RSA *message);
499*758e9fbaSOystein Eftevaag 
500*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_RSA_Decrypt(
501*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
502*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
503*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
504*758e9fbaSOystein Eftevaag     const TPM2B_PUBLIC_KEY_RSA *cipherText,
505*758e9fbaSOystein Eftevaag     const TPMT_RSA_DECRYPT *inScheme,
506*758e9fbaSOystein Eftevaag     const TPM2B_DATA *label,
507*758e9fbaSOystein Eftevaag     TPM2B_PUBLIC_KEY_RSA *message,
508*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
509*758e9fbaSOystein Eftevaag 
510*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ECDH_KeyGen_Prepare(
511*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
512*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle);
513*758e9fbaSOystein Eftevaag 
514*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ECDH_KeyGen_Complete(
515*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
516*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *zPoint,
517*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *pubPoint);
518*758e9fbaSOystein Eftevaag 
519*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ECDH_KeyGen(
520*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
521*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
522*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
523*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *zPoint,
524*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *pubPoint,
525*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
526*758e9fbaSOystein Eftevaag 
527*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ECDH_ZGen_Prepare(
528*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
529*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
530*758e9fbaSOystein Eftevaag     const TPM2B_ECC_POINT *inPoint);
531*758e9fbaSOystein Eftevaag 
532*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ECDH_ZGen_Complete(
533*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
534*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *outPoint);
535*758e9fbaSOystein Eftevaag 
536*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ECDH_ZGen(
537*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
538*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
539*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
540*758e9fbaSOystein Eftevaag     const TPM2B_ECC_POINT *inPoint,
541*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *outPoint,
542*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
543*758e9fbaSOystein Eftevaag 
544*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ECC_Parameters_Prepare(
545*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
546*758e9fbaSOystein Eftevaag     TPMI_ECC_CURVE curveID);
547*758e9fbaSOystein Eftevaag 
548*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ECC_Parameters_Complete(
549*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
550*758e9fbaSOystein Eftevaag     TPMS_ALGORITHM_DETAIL_ECC *parameters);
551*758e9fbaSOystein Eftevaag 
552*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ECC_Parameters(
553*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
554*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
555*758e9fbaSOystein Eftevaag     TPMI_ECC_CURVE curveID,
556*758e9fbaSOystein Eftevaag     TPMS_ALGORITHM_DETAIL_ECC *parameters,
557*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
558*758e9fbaSOystein Eftevaag 
559*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ZGen_2Phase_Prepare(
560*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
561*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyA,
562*758e9fbaSOystein Eftevaag     const TPM2B_ECC_POINT *inQsB,
563*758e9fbaSOystein Eftevaag     const TPM2B_ECC_POINT *inQeB,
564*758e9fbaSOystein Eftevaag     TPMI_ECC_KEY_EXCHANGE inScheme,
565*758e9fbaSOystein Eftevaag     UINT16 counter);
566*758e9fbaSOystein Eftevaag 
567*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ZGen_2Phase_Complete(
568*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
569*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *outZ1,
570*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *outZ2);
571*758e9fbaSOystein Eftevaag 
572*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ZGen_2Phase(
573*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
574*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyA,
575*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
576*758e9fbaSOystein Eftevaag     const TPM2B_ECC_POINT *inQsB,
577*758e9fbaSOystein Eftevaag     const TPM2B_ECC_POINT *inQeB,
578*758e9fbaSOystein Eftevaag     TPMI_ECC_KEY_EXCHANGE inScheme,
579*758e9fbaSOystein Eftevaag     UINT16 counter,
580*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *outZ1,
581*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *outZ2,
582*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
583*758e9fbaSOystein Eftevaag 
584*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_EncryptDecrypt_Prepare(
585*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
586*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
587*758e9fbaSOystein Eftevaag     TPMI_YES_NO decrypt,
588*758e9fbaSOystein Eftevaag     TPMI_ALG_SYM_MODE mode,
589*758e9fbaSOystein Eftevaag     const TPM2B_IV *ivIn,
590*758e9fbaSOystein Eftevaag     const TPM2B_MAX_BUFFER *inData);
591*758e9fbaSOystein Eftevaag 
592*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_EncryptDecrypt_Complete(
593*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
594*758e9fbaSOystein Eftevaag     TPM2B_MAX_BUFFER *outData,
595*758e9fbaSOystein Eftevaag     TPM2B_IV *ivOut);
596*758e9fbaSOystein Eftevaag 
597*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_EncryptDecrypt(
598*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
599*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
600*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
601*758e9fbaSOystein Eftevaag     TPMI_YES_NO decrypt,
602*758e9fbaSOystein Eftevaag     TPMI_ALG_SYM_MODE mode,
603*758e9fbaSOystein Eftevaag     const TPM2B_IV *ivIn,
604*758e9fbaSOystein Eftevaag     const TPM2B_MAX_BUFFER *inData,
605*758e9fbaSOystein Eftevaag     TPM2B_MAX_BUFFER *outData,
606*758e9fbaSOystein Eftevaag     TPM2B_IV *ivOut,
607*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
608*758e9fbaSOystein Eftevaag 
609*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_EncryptDecrypt2_Prepare(
610*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
611*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
612*758e9fbaSOystein Eftevaag     const TPM2B_MAX_BUFFER *inData,
613*758e9fbaSOystein Eftevaag     TPMI_YES_NO decrypt,
614*758e9fbaSOystein Eftevaag     TPMI_ALG_SYM_MODE mode,
615*758e9fbaSOystein Eftevaag     const TPM2B_IV *ivIn);
616*758e9fbaSOystein Eftevaag 
617*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_EncryptDecrypt2_Complete(
618*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
619*758e9fbaSOystein Eftevaag     TPM2B_MAX_BUFFER *outData,
620*758e9fbaSOystein Eftevaag     TPM2B_IV *ivOut);
621*758e9fbaSOystein Eftevaag 
622*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_EncryptDecrypt2(
623*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
624*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
625*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
626*758e9fbaSOystein Eftevaag     const TPM2B_MAX_BUFFER *inData,
627*758e9fbaSOystein Eftevaag     TPMI_YES_NO decrypt,
628*758e9fbaSOystein Eftevaag     TPMI_ALG_SYM_MODE mode,
629*758e9fbaSOystein Eftevaag     const TPM2B_IV *ivIn,
630*758e9fbaSOystein Eftevaag     TPM2B_MAX_BUFFER *outData,
631*758e9fbaSOystein Eftevaag     TPM2B_IV *ivOut,
632*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
633*758e9fbaSOystein Eftevaag 
634*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Hash_Prepare(
635*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
636*758e9fbaSOystein Eftevaag     const TPM2B_MAX_BUFFER *data,
637*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH hashAlg,
638*758e9fbaSOystein Eftevaag     TPMI_RH_HIERARCHY hierarchy);
639*758e9fbaSOystein Eftevaag 
640*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Hash_Complete(
641*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
642*758e9fbaSOystein Eftevaag     TPM2B_DIGEST *outHash,
643*758e9fbaSOystein Eftevaag     TPMT_TK_HASHCHECK *validation);
644*758e9fbaSOystein Eftevaag 
645*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Hash(
646*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
647*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
648*758e9fbaSOystein Eftevaag     const TPM2B_MAX_BUFFER *data,
649*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH hashAlg,
650*758e9fbaSOystein Eftevaag     TPMI_RH_HIERARCHY hierarchy,
651*758e9fbaSOystein Eftevaag     TPM2B_DIGEST *outHash,
652*758e9fbaSOystein Eftevaag     TPMT_TK_HASHCHECK *validation,
653*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
654*758e9fbaSOystein Eftevaag 
655*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_HMAC_Prepare(
656*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
657*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT handle,
658*758e9fbaSOystein Eftevaag     const TPM2B_MAX_BUFFER *buffer,
659*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH hashAlg);
660*758e9fbaSOystein Eftevaag 
661*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_HMAC_Complete(
662*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
663*758e9fbaSOystein Eftevaag     TPM2B_DIGEST *outHMAC);
664*758e9fbaSOystein Eftevaag 
665*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_HMAC(
666*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
667*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT handle,
668*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
669*758e9fbaSOystein Eftevaag     const TPM2B_MAX_BUFFER *buffer,
670*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH hashAlg,
671*758e9fbaSOystein Eftevaag     TPM2B_DIGEST *outHMAC,
672*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
673*758e9fbaSOystein Eftevaag 
674*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetRandom_Prepare(
675*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
676*758e9fbaSOystein Eftevaag     UINT16 bytesRequested);
677*758e9fbaSOystein Eftevaag 
678*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetRandom_Complete(
679*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
680*758e9fbaSOystein Eftevaag     TPM2B_DIGEST *randomBytes);
681*758e9fbaSOystein Eftevaag 
682*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetRandom(
683*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
684*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
685*758e9fbaSOystein Eftevaag     UINT16 bytesRequested,
686*758e9fbaSOystein Eftevaag     TPM2B_DIGEST *randomBytes,
687*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
688*758e9fbaSOystein Eftevaag 
689*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_StirRandom_Prepare(
690*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
691*758e9fbaSOystein Eftevaag     const TPM2B_SENSITIVE_DATA *inData);
692*758e9fbaSOystein Eftevaag 
693*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_StirRandom_Complete(
694*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
695*758e9fbaSOystein Eftevaag 
696*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_StirRandom(
697*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
698*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
699*758e9fbaSOystein Eftevaag     const TPM2B_SENSITIVE_DATA *inData,
700*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
701*758e9fbaSOystein Eftevaag 
702*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_HMAC_Start_Prepare(
703*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
704*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT handle,
705*758e9fbaSOystein Eftevaag     const TPM2B_AUTH *auth,
706*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH hashAlg);
707*758e9fbaSOystein Eftevaag 
708*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_HMAC_Start_Complete(
709*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
710*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT *sequenceHandle);
711*758e9fbaSOystein Eftevaag 
712*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_HMAC_Start(
713*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
714*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT handle,
715*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
716*758e9fbaSOystein Eftevaag     const TPM2B_AUTH *auth,
717*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH hashAlg,
718*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT *sequenceHandle,
719*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
720*758e9fbaSOystein Eftevaag 
721*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_HashSequenceStart_Prepare(
722*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
723*758e9fbaSOystein Eftevaag     const TPM2B_AUTH *auth,
724*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH hashAlg);
725*758e9fbaSOystein Eftevaag 
726*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_HashSequenceStart_Complete(
727*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
728*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT *sequenceHandle);
729*758e9fbaSOystein Eftevaag 
730*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_HashSequenceStart(
731*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
732*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
733*758e9fbaSOystein Eftevaag     const TPM2B_AUTH *auth,
734*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH hashAlg,
735*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT *sequenceHandle,
736*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
737*758e9fbaSOystein Eftevaag 
738*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SequenceUpdate_Prepare(
739*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
740*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT sequenceHandle,
741*758e9fbaSOystein Eftevaag     const TPM2B_MAX_BUFFER *buffer);
742*758e9fbaSOystein Eftevaag 
743*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SequenceUpdate_Complete(
744*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
745*758e9fbaSOystein Eftevaag 
746*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SequenceUpdate(
747*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
748*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT sequenceHandle,
749*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
750*758e9fbaSOystein Eftevaag     const TPM2B_MAX_BUFFER *buffer,
751*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
752*758e9fbaSOystein Eftevaag 
753*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SequenceComplete_Prepare(
754*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
755*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT sequenceHandle,
756*758e9fbaSOystein Eftevaag     const TPM2B_MAX_BUFFER *buffer,
757*758e9fbaSOystein Eftevaag     TPMI_RH_HIERARCHY hierarchy);
758*758e9fbaSOystein Eftevaag 
759*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SequenceComplete_Complete(
760*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
761*758e9fbaSOystein Eftevaag     TPM2B_DIGEST *result,
762*758e9fbaSOystein Eftevaag     TPMT_TK_HASHCHECK *validation);
763*758e9fbaSOystein Eftevaag 
764*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SequenceComplete(
765*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
766*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT sequenceHandle,
767*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
768*758e9fbaSOystein Eftevaag     const TPM2B_MAX_BUFFER *buffer,
769*758e9fbaSOystein Eftevaag     TPMI_RH_HIERARCHY hierarchy,
770*758e9fbaSOystein Eftevaag     TPM2B_DIGEST *result,
771*758e9fbaSOystein Eftevaag     TPMT_TK_HASHCHECK *validation,
772*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
773*758e9fbaSOystein Eftevaag 
774*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_EventSequenceComplete_Prepare(
775*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
776*758e9fbaSOystein Eftevaag     TPMI_DH_PCR pcrHandle,
777*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT sequenceHandle,
778*758e9fbaSOystein Eftevaag     const TPM2B_MAX_BUFFER *buffer);
779*758e9fbaSOystein Eftevaag 
780*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_EventSequenceComplete_Complete(
781*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
782*758e9fbaSOystein Eftevaag     TPML_DIGEST_VALUES *results);
783*758e9fbaSOystein Eftevaag 
784*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_EventSequenceComplete(
785*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
786*758e9fbaSOystein Eftevaag     TPMI_DH_PCR pcrHandle,
787*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT sequenceHandle,
788*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
789*758e9fbaSOystein Eftevaag     const TPM2B_MAX_BUFFER *buffer,
790*758e9fbaSOystein Eftevaag     TPML_DIGEST_VALUES *results,
791*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
792*758e9fbaSOystein Eftevaag 
793*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Certify_Prepare(
794*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
795*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT objectHandle,
796*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT signHandle,
797*758e9fbaSOystein Eftevaag     const TPM2B_DATA *qualifyingData,
798*758e9fbaSOystein Eftevaag     const TPMT_SIG_SCHEME *inScheme);
799*758e9fbaSOystein Eftevaag 
800*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Certify_Complete(
801*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
802*758e9fbaSOystein Eftevaag     TPM2B_ATTEST *certifyInfo,
803*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE *signature);
804*758e9fbaSOystein Eftevaag 
805*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Certify(
806*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
807*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT objectHandle,
808*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT signHandle,
809*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
810*758e9fbaSOystein Eftevaag     const TPM2B_DATA *qualifyingData,
811*758e9fbaSOystein Eftevaag     const TPMT_SIG_SCHEME *inScheme,
812*758e9fbaSOystein Eftevaag     TPM2B_ATTEST *certifyInfo,
813*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE *signature,
814*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
815*758e9fbaSOystein Eftevaag 
816*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_CertifyCreation_Prepare(
817*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
818*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT signHandle,
819*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT objectHandle,
820*758e9fbaSOystein Eftevaag     const TPM2B_DATA *qualifyingData,
821*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *creationHash,
822*758e9fbaSOystein Eftevaag     const TPMT_SIG_SCHEME *inScheme,
823*758e9fbaSOystein Eftevaag     const TPMT_TK_CREATION *creationTicket);
824*758e9fbaSOystein Eftevaag 
825*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_CertifyCreation_Complete(
826*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
827*758e9fbaSOystein Eftevaag     TPM2B_ATTEST *certifyInfo,
828*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE *signature);
829*758e9fbaSOystein Eftevaag 
830*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_CertifyCreation(
831*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
832*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT signHandle,
833*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT objectHandle,
834*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
835*758e9fbaSOystein Eftevaag     const TPM2B_DATA *qualifyingData,
836*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *creationHash,
837*758e9fbaSOystein Eftevaag     const TPMT_SIG_SCHEME *inScheme,
838*758e9fbaSOystein Eftevaag     const TPMT_TK_CREATION *creationTicket,
839*758e9fbaSOystein Eftevaag     TPM2B_ATTEST *certifyInfo,
840*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE *signature,
841*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
842*758e9fbaSOystein Eftevaag 
843*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Quote_Prepare(
844*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
845*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT signHandle,
846*758e9fbaSOystein Eftevaag     const TPM2B_DATA *qualifyingData,
847*758e9fbaSOystein Eftevaag     const TPMT_SIG_SCHEME *inScheme,
848*758e9fbaSOystein Eftevaag     const TPML_PCR_SELECTION *PCRselect);
849*758e9fbaSOystein Eftevaag 
850*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Quote_Complete(
851*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
852*758e9fbaSOystein Eftevaag     TPM2B_ATTEST *quoted,
853*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE *signature);
854*758e9fbaSOystein Eftevaag 
855*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Quote(
856*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
857*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT signHandle,
858*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
859*758e9fbaSOystein Eftevaag     const TPM2B_DATA *qualifyingData,
860*758e9fbaSOystein Eftevaag     const TPMT_SIG_SCHEME *inScheme,
861*758e9fbaSOystein Eftevaag     const TPML_PCR_SELECTION *PCRselect,
862*758e9fbaSOystein Eftevaag     TPM2B_ATTEST *quoted,
863*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE *signature,
864*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
865*758e9fbaSOystein Eftevaag 
866*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetSessionAuditDigest_Prepare(
867*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
868*758e9fbaSOystein Eftevaag     TPMI_RH_ENDORSEMENT privacyAdminHandle,
869*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT signHandle,
870*758e9fbaSOystein Eftevaag     TPMI_SH_HMAC sessionHandle,
871*758e9fbaSOystein Eftevaag     const TPM2B_DATA *qualifyingData,
872*758e9fbaSOystein Eftevaag     const TPMT_SIG_SCHEME *inScheme);
873*758e9fbaSOystein Eftevaag 
874*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetSessionAuditDigest_Complete(
875*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
876*758e9fbaSOystein Eftevaag     TPM2B_ATTEST *auditInfo,
877*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE *signature);
878*758e9fbaSOystein Eftevaag 
879*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetSessionAuditDigest(
880*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
881*758e9fbaSOystein Eftevaag     TPMI_RH_ENDORSEMENT privacyAdminHandle,
882*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT signHandle,
883*758e9fbaSOystein Eftevaag     TPMI_SH_HMAC sessionHandle,
884*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
885*758e9fbaSOystein Eftevaag     const TPM2B_DATA *qualifyingData,
886*758e9fbaSOystein Eftevaag     const TPMT_SIG_SCHEME *inScheme,
887*758e9fbaSOystein Eftevaag     TPM2B_ATTEST *auditInfo,
888*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE *signature,
889*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
890*758e9fbaSOystein Eftevaag 
891*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetCommandAuditDigest_Prepare(
892*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
893*758e9fbaSOystein Eftevaag     TPMI_RH_ENDORSEMENT privacyHandle,
894*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT signHandle,
895*758e9fbaSOystein Eftevaag     const TPM2B_DATA *qualifyingData,
896*758e9fbaSOystein Eftevaag     const TPMT_SIG_SCHEME *inScheme);
897*758e9fbaSOystein Eftevaag 
898*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetCommandAuditDigest_Complete(
899*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
900*758e9fbaSOystein Eftevaag     TPM2B_ATTEST *auditInfo,
901*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE *signature);
902*758e9fbaSOystein Eftevaag 
903*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetCommandAuditDigest(
904*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
905*758e9fbaSOystein Eftevaag     TPMI_RH_ENDORSEMENT privacyHandle,
906*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT signHandle,
907*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
908*758e9fbaSOystein Eftevaag     const TPM2B_DATA *qualifyingData,
909*758e9fbaSOystein Eftevaag     const TPMT_SIG_SCHEME *inScheme,
910*758e9fbaSOystein Eftevaag     TPM2B_ATTEST *auditInfo,
911*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE *signature,
912*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
913*758e9fbaSOystein Eftevaag 
914*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetTime_Prepare(
915*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
916*758e9fbaSOystein Eftevaag     TPMI_RH_ENDORSEMENT privacyAdminHandle,
917*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT signHandle,
918*758e9fbaSOystein Eftevaag     const TPM2B_DATA *qualifyingData,
919*758e9fbaSOystein Eftevaag     const TPMT_SIG_SCHEME *inScheme);
920*758e9fbaSOystein Eftevaag 
921*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetTime_Complete(
922*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
923*758e9fbaSOystein Eftevaag     TPM2B_ATTEST *timeInfo,
924*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE *signature);
925*758e9fbaSOystein Eftevaag 
926*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetTime(
927*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
928*758e9fbaSOystein Eftevaag     TPMI_RH_ENDORSEMENT privacyAdminHandle,
929*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT signHandle,
930*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
931*758e9fbaSOystein Eftevaag     const TPM2B_DATA *qualifyingData,
932*758e9fbaSOystein Eftevaag     const TPMT_SIG_SCHEME *inScheme,
933*758e9fbaSOystein Eftevaag     TPM2B_ATTEST *timeInfo,
934*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE *signature,
935*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
936*758e9fbaSOystein Eftevaag 
937*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Commit_Prepare(
938*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
939*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT signHandle,
940*758e9fbaSOystein Eftevaag     const TPM2B_ECC_POINT *P1,
941*758e9fbaSOystein Eftevaag     const TPM2B_SENSITIVE_DATA *s2,
942*758e9fbaSOystein Eftevaag     const TPM2B_ECC_PARAMETER *y2);
943*758e9fbaSOystein Eftevaag 
944*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Commit_Complete(
945*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
946*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *K,
947*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *L,
948*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *E,
949*758e9fbaSOystein Eftevaag     UINT16 *counter);
950*758e9fbaSOystein Eftevaag 
951*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Commit(
952*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
953*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT signHandle,
954*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
955*758e9fbaSOystein Eftevaag     const TPM2B_ECC_POINT *P1,
956*758e9fbaSOystein Eftevaag     const TPM2B_SENSITIVE_DATA *s2,
957*758e9fbaSOystein Eftevaag     const TPM2B_ECC_PARAMETER *y2,
958*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *K,
959*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *L,
960*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *E,
961*758e9fbaSOystein Eftevaag     UINT16 *counter,
962*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
963*758e9fbaSOystein Eftevaag 
964*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_EC_Ephemeral_Prepare(
965*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
966*758e9fbaSOystein Eftevaag     TPMI_ECC_CURVE curveID);
967*758e9fbaSOystein Eftevaag 
968*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_EC_Ephemeral_Complete(
969*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
970*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *Q,
971*758e9fbaSOystein Eftevaag     UINT16 *counter);
972*758e9fbaSOystein Eftevaag 
973*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_EC_Ephemeral(
974*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
975*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
976*758e9fbaSOystein Eftevaag     TPMI_ECC_CURVE curveID,
977*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *Q,
978*758e9fbaSOystein Eftevaag     UINT16 *counter,
979*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
980*758e9fbaSOystein Eftevaag 
981*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_VerifySignature_Prepare(
982*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
983*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
984*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *digest,
985*758e9fbaSOystein Eftevaag     const TPMT_SIGNATURE *signature);
986*758e9fbaSOystein Eftevaag 
987*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_VerifySignature_Complete(
988*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
989*758e9fbaSOystein Eftevaag     TPMT_TK_VERIFIED *validation);
990*758e9fbaSOystein Eftevaag 
991*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_VerifySignature(
992*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
993*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
994*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
995*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *digest,
996*758e9fbaSOystein Eftevaag     const TPMT_SIGNATURE *signature,
997*758e9fbaSOystein Eftevaag     TPMT_TK_VERIFIED *validation,
998*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
999*758e9fbaSOystein Eftevaag 
1000*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Sign_Prepare(
1001*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1002*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
1003*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *digest,
1004*758e9fbaSOystein Eftevaag     const TPMT_SIG_SCHEME *inScheme,
1005*758e9fbaSOystein Eftevaag     const TPMT_TK_HASHCHECK *validation);
1006*758e9fbaSOystein Eftevaag 
1007*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Sign_Complete(
1008*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1009*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE *signature);
1010*758e9fbaSOystein Eftevaag 
1011*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Sign(
1012*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1013*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
1014*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1015*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *digest,
1016*758e9fbaSOystein Eftevaag     const TPMT_SIG_SCHEME *inScheme,
1017*758e9fbaSOystein Eftevaag     const TPMT_TK_HASHCHECK *validation,
1018*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE *signature,
1019*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1020*758e9fbaSOystein Eftevaag 
1021*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SetCommandCodeAuditStatus_Prepare(
1022*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1023*758e9fbaSOystein Eftevaag     TPMI_RH_PROVISION auth,
1024*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH auditAlg,
1025*758e9fbaSOystein Eftevaag     const TPML_CC *setList,
1026*758e9fbaSOystein Eftevaag     const TPML_CC *clearList);
1027*758e9fbaSOystein Eftevaag 
1028*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SetCommandCodeAuditStatus_Complete(
1029*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1030*758e9fbaSOystein Eftevaag 
1031*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SetCommandCodeAuditStatus(
1032*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1033*758e9fbaSOystein Eftevaag     TPMI_RH_PROVISION auth,
1034*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1035*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH auditAlg,
1036*758e9fbaSOystein Eftevaag     const TPML_CC *setList,
1037*758e9fbaSOystein Eftevaag     const TPML_CC *clearList,
1038*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1039*758e9fbaSOystein Eftevaag 
1040*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_Extend_Prepare(
1041*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1042*758e9fbaSOystein Eftevaag     TPMI_DH_PCR pcrHandle,
1043*758e9fbaSOystein Eftevaag     const TPML_DIGEST_VALUES *digests);
1044*758e9fbaSOystein Eftevaag 
1045*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_Extend_Complete(
1046*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1047*758e9fbaSOystein Eftevaag 
1048*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_Extend(
1049*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1050*758e9fbaSOystein Eftevaag     TPMI_DH_PCR pcrHandle,
1051*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1052*758e9fbaSOystein Eftevaag     const TPML_DIGEST_VALUES *digests,
1053*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1054*758e9fbaSOystein Eftevaag 
1055*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_Event_Prepare(
1056*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1057*758e9fbaSOystein Eftevaag     TPMI_DH_PCR pcrHandle,
1058*758e9fbaSOystein Eftevaag     const TPM2B_EVENT *eventData);
1059*758e9fbaSOystein Eftevaag 
1060*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_Event_Complete(
1061*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1062*758e9fbaSOystein Eftevaag     TPML_DIGEST_VALUES *digests);
1063*758e9fbaSOystein Eftevaag 
1064*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_Event(
1065*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1066*758e9fbaSOystein Eftevaag     TPMI_DH_PCR pcrHandle,
1067*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1068*758e9fbaSOystein Eftevaag     const TPM2B_EVENT *eventData,
1069*758e9fbaSOystein Eftevaag     TPML_DIGEST_VALUES *digests,
1070*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1071*758e9fbaSOystein Eftevaag 
1072*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_Read_Prepare(
1073*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1074*758e9fbaSOystein Eftevaag     const TPML_PCR_SELECTION *pcrSelectionIn);
1075*758e9fbaSOystein Eftevaag 
1076*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_Read_Complete(
1077*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1078*758e9fbaSOystein Eftevaag     UINT32 *pcrUpdateCounter,
1079*758e9fbaSOystein Eftevaag     TPML_PCR_SELECTION *pcrSelectionOut,
1080*758e9fbaSOystein Eftevaag     TPML_DIGEST *pcrValues);
1081*758e9fbaSOystein Eftevaag 
1082*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_Read(
1083*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1084*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1085*758e9fbaSOystein Eftevaag     const TPML_PCR_SELECTION *pcrSelectionIn,
1086*758e9fbaSOystein Eftevaag     UINT32 *pcrUpdateCounter,
1087*758e9fbaSOystein Eftevaag     TPML_PCR_SELECTION *pcrSelectionOut,
1088*758e9fbaSOystein Eftevaag     TPML_DIGEST *pcrValues,
1089*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1090*758e9fbaSOystein Eftevaag 
1091*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_Allocate_Prepare(
1092*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1093*758e9fbaSOystein Eftevaag     TPMI_RH_PLATFORM authHandle,
1094*758e9fbaSOystein Eftevaag     const TPML_PCR_SELECTION *pcrAllocation);
1095*758e9fbaSOystein Eftevaag 
1096*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_Allocate_Complete(
1097*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1098*758e9fbaSOystein Eftevaag     TPMI_YES_NO *allocationSuccess,
1099*758e9fbaSOystein Eftevaag     UINT32 *maxPCR,
1100*758e9fbaSOystein Eftevaag     UINT32 *sizeNeeded,
1101*758e9fbaSOystein Eftevaag     UINT32 *sizeAvailable);
1102*758e9fbaSOystein Eftevaag 
1103*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_Allocate(
1104*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1105*758e9fbaSOystein Eftevaag     TPMI_RH_PLATFORM authHandle,
1106*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1107*758e9fbaSOystein Eftevaag     const TPML_PCR_SELECTION *pcrAllocation,
1108*758e9fbaSOystein Eftevaag     TPMI_YES_NO *allocationSuccess,
1109*758e9fbaSOystein Eftevaag     UINT32 *maxPCR,
1110*758e9fbaSOystein Eftevaag     UINT32 *sizeNeeded,
1111*758e9fbaSOystein Eftevaag     UINT32 *sizeAvailable,
1112*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1113*758e9fbaSOystein Eftevaag 
1114*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_SetAuthPolicy_Prepare(
1115*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1116*758e9fbaSOystein Eftevaag     TPMI_RH_PLATFORM authHandle,
1117*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *authPolicy,
1118*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH hashAlg,
1119*758e9fbaSOystein Eftevaag     TPMI_DH_PCR pcrNum);
1120*758e9fbaSOystein Eftevaag 
1121*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_SetAuthPolicy_Complete(
1122*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1123*758e9fbaSOystein Eftevaag 
1124*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_SetAuthPolicy(
1125*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1126*758e9fbaSOystein Eftevaag     TPMI_RH_PLATFORM authHandle,
1127*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1128*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *authPolicy,
1129*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH hashAlg,
1130*758e9fbaSOystein Eftevaag     TPMI_DH_PCR pcrNum,
1131*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1132*758e9fbaSOystein Eftevaag 
1133*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_SetAuthValue_Prepare(
1134*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1135*758e9fbaSOystein Eftevaag     TPMI_DH_PCR pcrHandle,
1136*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *auth);
1137*758e9fbaSOystein Eftevaag 
1138*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_SetAuthValue_Complete(
1139*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1140*758e9fbaSOystein Eftevaag 
1141*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_SetAuthValue(
1142*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1143*758e9fbaSOystein Eftevaag     TPMI_DH_PCR pcrHandle,
1144*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1145*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *auth,
1146*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1147*758e9fbaSOystein Eftevaag 
1148*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_Reset_Prepare(
1149*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1150*758e9fbaSOystein Eftevaag     TPMI_DH_PCR pcrHandle);
1151*758e9fbaSOystein Eftevaag 
1152*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_Reset_Complete(
1153*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1154*758e9fbaSOystein Eftevaag 
1155*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PCR_Reset(
1156*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1157*758e9fbaSOystein Eftevaag     TPMI_DH_PCR pcrHandle,
1158*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1159*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1160*758e9fbaSOystein Eftevaag 
1161*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicySigned_Prepare(
1162*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1163*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT authObject,
1164*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1165*758e9fbaSOystein Eftevaag     const TPM2B_NONCE *nonceTPM,
1166*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *cpHashA,
1167*758e9fbaSOystein Eftevaag     const TPM2B_NONCE *policyRef,
1168*758e9fbaSOystein Eftevaag     INT32 expiration,
1169*758e9fbaSOystein Eftevaag     const TPMT_SIGNATURE *auth);
1170*758e9fbaSOystein Eftevaag 
1171*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicySigned_Complete(
1172*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1173*758e9fbaSOystein Eftevaag     TPM2B_TIMEOUT *timeout,
1174*758e9fbaSOystein Eftevaag     TPMT_TK_AUTH *policyTicket);
1175*758e9fbaSOystein Eftevaag 
1176*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicySigned(
1177*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1178*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT authObject,
1179*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1180*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1181*758e9fbaSOystein Eftevaag     const TPM2B_NONCE *nonceTPM,
1182*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *cpHashA,
1183*758e9fbaSOystein Eftevaag     const TPM2B_NONCE *policyRef,
1184*758e9fbaSOystein Eftevaag     INT32 expiration,
1185*758e9fbaSOystein Eftevaag     const TPMT_SIGNATURE *auth,
1186*758e9fbaSOystein Eftevaag     TPM2B_TIMEOUT *timeout,
1187*758e9fbaSOystein Eftevaag     TPMT_TK_AUTH *policyTicket,
1188*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1189*758e9fbaSOystein Eftevaag 
1190*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicySecret_Prepare(
1191*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1192*758e9fbaSOystein Eftevaag     TPMI_DH_ENTITY authHandle,
1193*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1194*758e9fbaSOystein Eftevaag     const TPM2B_NONCE *nonceTPM,
1195*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *cpHashA,
1196*758e9fbaSOystein Eftevaag     const TPM2B_NONCE *policyRef,
1197*758e9fbaSOystein Eftevaag     INT32 expiration);
1198*758e9fbaSOystein Eftevaag 
1199*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicySecret_Complete(
1200*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1201*758e9fbaSOystein Eftevaag     TPM2B_TIMEOUT *timeout,
1202*758e9fbaSOystein Eftevaag     TPMT_TK_AUTH *policyTicket);
1203*758e9fbaSOystein Eftevaag 
1204*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicySecret(
1205*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1206*758e9fbaSOystein Eftevaag     TPMI_DH_ENTITY authHandle,
1207*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1208*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1209*758e9fbaSOystein Eftevaag     const TPM2B_NONCE *nonceTPM,
1210*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *cpHashA,
1211*758e9fbaSOystein Eftevaag     const TPM2B_NONCE *policyRef,
1212*758e9fbaSOystein Eftevaag     INT32 expiration,
1213*758e9fbaSOystein Eftevaag     TPM2B_TIMEOUT *timeout,
1214*758e9fbaSOystein Eftevaag     TPMT_TK_AUTH *policyTicket,
1215*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1216*758e9fbaSOystein Eftevaag 
1217*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyTicket_Prepare(
1218*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1219*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1220*758e9fbaSOystein Eftevaag     const TPM2B_TIMEOUT *timeout,
1221*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *cpHashA,
1222*758e9fbaSOystein Eftevaag     const TPM2B_NONCE *policyRef,
1223*758e9fbaSOystein Eftevaag     const TPM2B_NAME *authName,
1224*758e9fbaSOystein Eftevaag     const TPMT_TK_AUTH *ticket);
1225*758e9fbaSOystein Eftevaag 
1226*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyTicket_Complete(
1227*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1228*758e9fbaSOystein Eftevaag 
1229*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyTicket(
1230*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1231*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1232*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1233*758e9fbaSOystein Eftevaag     const TPM2B_TIMEOUT *timeout,
1234*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *cpHashA,
1235*758e9fbaSOystein Eftevaag     const TPM2B_NONCE *policyRef,
1236*758e9fbaSOystein Eftevaag     const TPM2B_NAME *authName,
1237*758e9fbaSOystein Eftevaag     const TPMT_TK_AUTH *ticket,
1238*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1239*758e9fbaSOystein Eftevaag 
1240*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyOR_Prepare(
1241*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1242*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1243*758e9fbaSOystein Eftevaag     const TPML_DIGEST *pHashList);
1244*758e9fbaSOystein Eftevaag 
1245*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyOR_Complete(
1246*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1247*758e9fbaSOystein Eftevaag 
1248*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyOR(
1249*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1250*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1251*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1252*758e9fbaSOystein Eftevaag     const TPML_DIGEST *pHashList,
1253*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1254*758e9fbaSOystein Eftevaag 
1255*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyPCR_Prepare(
1256*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1257*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1258*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *pcrDigest,
1259*758e9fbaSOystein Eftevaag     const TPML_PCR_SELECTION *pcrs);
1260*758e9fbaSOystein Eftevaag 
1261*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyPCR_Complete(
1262*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1263*758e9fbaSOystein Eftevaag 
1264*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyPCR(
1265*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1266*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1267*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1268*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *pcrDigest,
1269*758e9fbaSOystein Eftevaag     const TPML_PCR_SELECTION *pcrs,
1270*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1271*758e9fbaSOystein Eftevaag 
1272*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyLocality_Prepare(
1273*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1274*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1275*758e9fbaSOystein Eftevaag     TPMA_LOCALITY locality);
1276*758e9fbaSOystein Eftevaag 
1277*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyLocality_Complete(
1278*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1279*758e9fbaSOystein Eftevaag 
1280*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyLocality(
1281*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1282*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1283*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1284*758e9fbaSOystein Eftevaag     TPMA_LOCALITY locality,
1285*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1286*758e9fbaSOystein Eftevaag 
1287*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyNV_Prepare(
1288*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1289*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
1290*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
1291*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1292*758e9fbaSOystein Eftevaag     const TPM2B_OPERAND *operandB,
1293*758e9fbaSOystein Eftevaag     UINT16 offset,
1294*758e9fbaSOystein Eftevaag     TPM2_EO operation);
1295*758e9fbaSOystein Eftevaag 
1296*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyNV_Complete(
1297*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1298*758e9fbaSOystein Eftevaag 
1299*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyNV(
1300*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1301*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
1302*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
1303*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1304*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1305*758e9fbaSOystein Eftevaag     const TPM2B_OPERAND *operandB,
1306*758e9fbaSOystein Eftevaag     UINT16 offset,
1307*758e9fbaSOystein Eftevaag     TPM2_EO operation,
1308*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1309*758e9fbaSOystein Eftevaag 
1310*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyCounterTimer_Prepare(
1311*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1312*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1313*758e9fbaSOystein Eftevaag     const TPM2B_OPERAND *operandB,
1314*758e9fbaSOystein Eftevaag     UINT16 offset,
1315*758e9fbaSOystein Eftevaag     TPM2_EO operation);
1316*758e9fbaSOystein Eftevaag 
1317*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyCounterTimer_Complete(
1318*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1319*758e9fbaSOystein Eftevaag 
1320*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyCounterTimer(
1321*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1322*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1323*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1324*758e9fbaSOystein Eftevaag     const TPM2B_OPERAND *operandB,
1325*758e9fbaSOystein Eftevaag     UINT16 offset,
1326*758e9fbaSOystein Eftevaag     TPM2_EO operation,
1327*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1328*758e9fbaSOystein Eftevaag 
1329*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyCommandCode_Prepare(
1330*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1331*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1332*758e9fbaSOystein Eftevaag     TPM2_CC code);
1333*758e9fbaSOystein Eftevaag 
1334*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyCommandCode_Complete(
1335*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1336*758e9fbaSOystein Eftevaag 
1337*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyCommandCode(
1338*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1339*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1340*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1341*758e9fbaSOystein Eftevaag     TPM2_CC code,
1342*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1343*758e9fbaSOystein Eftevaag 
1344*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyPhysicalPresence_Prepare(
1345*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1346*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession);
1347*758e9fbaSOystein Eftevaag 
1348*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyPhysicalPresence_Complete(
1349*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1350*758e9fbaSOystein Eftevaag 
1351*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyPhysicalPresence(
1352*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1353*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1354*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1355*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1356*758e9fbaSOystein Eftevaag 
1357*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyCpHash_Prepare(
1358*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1359*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1360*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *cpHashA);
1361*758e9fbaSOystein Eftevaag 
1362*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyCpHash_Complete(
1363*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1364*758e9fbaSOystein Eftevaag 
1365*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyCpHash(
1366*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1367*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1368*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1369*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *cpHashA,
1370*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1371*758e9fbaSOystein Eftevaag 
1372*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyNameHash_Prepare(
1373*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1374*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1375*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *nameHash);
1376*758e9fbaSOystein Eftevaag 
1377*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyNameHash_Complete(
1378*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1379*758e9fbaSOystein Eftevaag 
1380*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyNameHash(
1381*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1382*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1383*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1384*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *nameHash,
1385*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1386*758e9fbaSOystein Eftevaag 
1387*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyDuplicationSelect_Prepare(
1388*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1389*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1390*758e9fbaSOystein Eftevaag     const TPM2B_NAME *objectName,
1391*758e9fbaSOystein Eftevaag     const TPM2B_NAME *newParentName,
1392*758e9fbaSOystein Eftevaag     TPMI_YES_NO includeObject);
1393*758e9fbaSOystein Eftevaag 
1394*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyDuplicationSelect_Complete(
1395*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1396*758e9fbaSOystein Eftevaag 
1397*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyDuplicationSelect(
1398*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1399*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1400*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1401*758e9fbaSOystein Eftevaag     const TPM2B_NAME *objectName,
1402*758e9fbaSOystein Eftevaag     const TPM2B_NAME *newParentName,
1403*758e9fbaSOystein Eftevaag     TPMI_YES_NO includeObject,
1404*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1405*758e9fbaSOystein Eftevaag 
1406*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyAuthorize_Prepare(
1407*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1408*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1409*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *approvedPolicy,
1410*758e9fbaSOystein Eftevaag     const TPM2B_NONCE *policyRef,
1411*758e9fbaSOystein Eftevaag     const TPM2B_NAME *keySign,
1412*758e9fbaSOystein Eftevaag     const TPMT_TK_VERIFIED *checkTicket);
1413*758e9fbaSOystein Eftevaag 
1414*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyAuthorize_Complete(
1415*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1416*758e9fbaSOystein Eftevaag 
1417*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyAuthorize(
1418*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1419*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1420*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1421*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *approvedPolicy,
1422*758e9fbaSOystein Eftevaag     const TPM2B_NONCE *policyRef,
1423*758e9fbaSOystein Eftevaag     const TPM2B_NAME *keySign,
1424*758e9fbaSOystein Eftevaag     const TPMT_TK_VERIFIED *checkTicket,
1425*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1426*758e9fbaSOystein Eftevaag 
1427*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyAuthValue_Prepare(
1428*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1429*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession);
1430*758e9fbaSOystein Eftevaag 
1431*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyAuthValue_Complete(
1432*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1433*758e9fbaSOystein Eftevaag 
1434*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyAuthValue(
1435*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1436*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1437*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1438*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1439*758e9fbaSOystein Eftevaag 
1440*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyPassword_Prepare(
1441*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1442*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession);
1443*758e9fbaSOystein Eftevaag 
1444*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyPassword_Complete(
1445*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1446*758e9fbaSOystein Eftevaag 
1447*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyPassword(
1448*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1449*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1450*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1451*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1452*758e9fbaSOystein Eftevaag 
1453*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyGetDigest_Prepare(
1454*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1455*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession);
1456*758e9fbaSOystein Eftevaag 
1457*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyGetDigest_Complete(
1458*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1459*758e9fbaSOystein Eftevaag     TPM2B_DIGEST *policyDigest);
1460*758e9fbaSOystein Eftevaag 
1461*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyGetDigest(
1462*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1463*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1464*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1465*758e9fbaSOystein Eftevaag     TPM2B_DIGEST *policyDigest,
1466*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1467*758e9fbaSOystein Eftevaag 
1468*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyNvWritten_Prepare(
1469*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1470*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1471*758e9fbaSOystein Eftevaag     TPMI_YES_NO writtenSet);
1472*758e9fbaSOystein Eftevaag 
1473*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyNvWritten_Complete(
1474*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1475*758e9fbaSOystein Eftevaag 
1476*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyNvWritten(
1477*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1478*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
1479*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1480*758e9fbaSOystein Eftevaag     TPMI_YES_NO writtenSet,
1481*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1482*758e9fbaSOystein Eftevaag 
1483*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_CreatePrimary_Prepare(
1484*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1485*758e9fbaSOystein Eftevaag     TPMI_RH_HIERARCHY primaryHandle,
1486*758e9fbaSOystein Eftevaag     const TPM2B_SENSITIVE_CREATE *inSensitive,
1487*758e9fbaSOystein Eftevaag     const TPM2B_PUBLIC *inPublic,
1488*758e9fbaSOystein Eftevaag     const TPM2B_DATA *outsideInfo,
1489*758e9fbaSOystein Eftevaag     const TPML_PCR_SELECTION *creationPCR);
1490*758e9fbaSOystein Eftevaag 
1491*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_CreatePrimary_Complete(
1492*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1493*758e9fbaSOystein Eftevaag     TPM2_HANDLE *objectHandle,
1494*758e9fbaSOystein Eftevaag     TPM2B_PUBLIC *outPublic,
1495*758e9fbaSOystein Eftevaag     TPM2B_CREATION_DATA *creationData,
1496*758e9fbaSOystein Eftevaag     TPM2B_DIGEST *creationHash,
1497*758e9fbaSOystein Eftevaag     TPMT_TK_CREATION *creationTicket,
1498*758e9fbaSOystein Eftevaag     TPM2B_NAME *name);
1499*758e9fbaSOystein Eftevaag 
1500*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_CreatePrimary(
1501*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1502*758e9fbaSOystein Eftevaag     TPMI_RH_HIERARCHY primaryHandle,
1503*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1504*758e9fbaSOystein Eftevaag     const TPM2B_SENSITIVE_CREATE *inSensitive,
1505*758e9fbaSOystein Eftevaag     const TPM2B_PUBLIC *inPublic,
1506*758e9fbaSOystein Eftevaag     const TPM2B_DATA *outsideInfo,
1507*758e9fbaSOystein Eftevaag     const TPML_PCR_SELECTION *creationPCR,
1508*758e9fbaSOystein Eftevaag     TPM2_HANDLE *objectHandle,
1509*758e9fbaSOystein Eftevaag     TPM2B_PUBLIC *outPublic,
1510*758e9fbaSOystein Eftevaag     TPM2B_CREATION_DATA *creationData,
1511*758e9fbaSOystein Eftevaag     TPM2B_DIGEST *creationHash,
1512*758e9fbaSOystein Eftevaag     TPMT_TK_CREATION *creationTicket,
1513*758e9fbaSOystein Eftevaag     TPM2B_NAME *name,
1514*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1515*758e9fbaSOystein Eftevaag 
1516*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_HierarchyControl_Prepare(
1517*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1518*758e9fbaSOystein Eftevaag     TPMI_RH_HIERARCHY authHandle,
1519*758e9fbaSOystein Eftevaag     TPMI_RH_ENABLES enable,
1520*758e9fbaSOystein Eftevaag     TPMI_YES_NO state);
1521*758e9fbaSOystein Eftevaag 
1522*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_HierarchyControl_Complete(
1523*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1524*758e9fbaSOystein Eftevaag 
1525*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_HierarchyControl(
1526*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1527*758e9fbaSOystein Eftevaag     TPMI_RH_HIERARCHY authHandle,
1528*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1529*758e9fbaSOystein Eftevaag     TPMI_RH_ENABLES enable,
1530*758e9fbaSOystein Eftevaag     TPMI_YES_NO state,
1531*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1532*758e9fbaSOystein Eftevaag 
1533*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SetPrimaryPolicy_Prepare(
1534*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1535*758e9fbaSOystein Eftevaag     TPMI_RH_HIERARCHY_AUTH authHandle,
1536*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *authPolicy,
1537*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH hashAlg);
1538*758e9fbaSOystein Eftevaag 
1539*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SetPrimaryPolicy_Complete(
1540*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1541*758e9fbaSOystein Eftevaag 
1542*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SetPrimaryPolicy(
1543*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1544*758e9fbaSOystein Eftevaag     TPMI_RH_HIERARCHY_AUTH authHandle,
1545*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1546*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *authPolicy,
1547*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH hashAlg,
1548*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1549*758e9fbaSOystein Eftevaag 
1550*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ChangePPS_Prepare(
1551*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1552*758e9fbaSOystein Eftevaag     TPMI_RH_PLATFORM authHandle);
1553*758e9fbaSOystein Eftevaag 
1554*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ChangePPS_Complete(
1555*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1556*758e9fbaSOystein Eftevaag 
1557*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ChangePPS(
1558*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1559*758e9fbaSOystein Eftevaag     TPMI_RH_PLATFORM authHandle,
1560*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1561*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1562*758e9fbaSOystein Eftevaag 
1563*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ChangeEPS_Prepare(
1564*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1565*758e9fbaSOystein Eftevaag     TPMI_RH_PLATFORM authHandle);
1566*758e9fbaSOystein Eftevaag 
1567*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ChangeEPS_Complete(
1568*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1569*758e9fbaSOystein Eftevaag 
1570*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ChangeEPS(
1571*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1572*758e9fbaSOystein Eftevaag     TPMI_RH_PLATFORM authHandle,
1573*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1574*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1575*758e9fbaSOystein Eftevaag 
1576*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Clear_Prepare(
1577*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1578*758e9fbaSOystein Eftevaag     TPMI_RH_CLEAR authHandle);
1579*758e9fbaSOystein Eftevaag 
1580*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Clear_Complete(
1581*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1582*758e9fbaSOystein Eftevaag 
1583*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Clear(
1584*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1585*758e9fbaSOystein Eftevaag     TPMI_RH_CLEAR authHandle,
1586*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1587*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1588*758e9fbaSOystein Eftevaag 
1589*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ClearControl_Prepare(
1590*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1591*758e9fbaSOystein Eftevaag     TPMI_RH_CLEAR auth,
1592*758e9fbaSOystein Eftevaag     TPMI_YES_NO disable);
1593*758e9fbaSOystein Eftevaag 
1594*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ClearControl_Complete(
1595*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1596*758e9fbaSOystein Eftevaag 
1597*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ClearControl(
1598*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1599*758e9fbaSOystein Eftevaag     TPMI_RH_CLEAR auth,
1600*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1601*758e9fbaSOystein Eftevaag     TPMI_YES_NO disable,
1602*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1603*758e9fbaSOystein Eftevaag 
1604*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_HierarchyChangeAuth_Prepare(
1605*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1606*758e9fbaSOystein Eftevaag     TPMI_RH_HIERARCHY_AUTH authHandle,
1607*758e9fbaSOystein Eftevaag     const TPM2B_AUTH *newAuth);
1608*758e9fbaSOystein Eftevaag 
1609*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_HierarchyChangeAuth_Complete(
1610*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1611*758e9fbaSOystein Eftevaag 
1612*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_HierarchyChangeAuth(
1613*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1614*758e9fbaSOystein Eftevaag     TPMI_RH_HIERARCHY_AUTH authHandle,
1615*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1616*758e9fbaSOystein Eftevaag     const TPM2B_AUTH *newAuth,
1617*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1618*758e9fbaSOystein Eftevaag 
1619*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_DictionaryAttackLockReset_Prepare(
1620*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1621*758e9fbaSOystein Eftevaag     TPMI_RH_LOCKOUT lockHandle);
1622*758e9fbaSOystein Eftevaag 
1623*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_DictionaryAttackLockReset_Complete(
1624*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1625*758e9fbaSOystein Eftevaag 
1626*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_DictionaryAttackLockReset(
1627*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1628*758e9fbaSOystein Eftevaag     TPMI_RH_LOCKOUT lockHandle,
1629*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1630*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1631*758e9fbaSOystein Eftevaag 
1632*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_DictionaryAttackParameters_Prepare(
1633*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1634*758e9fbaSOystein Eftevaag     TPMI_RH_LOCKOUT lockHandle,
1635*758e9fbaSOystein Eftevaag     UINT32 newMaxTries,
1636*758e9fbaSOystein Eftevaag     UINT32 newRecoveryTime,
1637*758e9fbaSOystein Eftevaag     UINT32 lockoutRecovery);
1638*758e9fbaSOystein Eftevaag 
1639*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_DictionaryAttackParameters_Complete(
1640*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1641*758e9fbaSOystein Eftevaag 
1642*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_DictionaryAttackParameters(
1643*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1644*758e9fbaSOystein Eftevaag     TPMI_RH_LOCKOUT lockHandle,
1645*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1646*758e9fbaSOystein Eftevaag     UINT32 newMaxTries,
1647*758e9fbaSOystein Eftevaag     UINT32 newRecoveryTime,
1648*758e9fbaSOystein Eftevaag     UINT32 lockoutRecovery,
1649*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1650*758e9fbaSOystein Eftevaag 
1651*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PP_Commands_Prepare(
1652*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1653*758e9fbaSOystein Eftevaag     TPMI_RH_PLATFORM auth,
1654*758e9fbaSOystein Eftevaag     const TPML_CC *setList,
1655*758e9fbaSOystein Eftevaag     const TPML_CC *clearList);
1656*758e9fbaSOystein Eftevaag 
1657*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PP_Commands_Complete(
1658*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1659*758e9fbaSOystein Eftevaag 
1660*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PP_Commands(
1661*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1662*758e9fbaSOystein Eftevaag     TPMI_RH_PLATFORM auth,
1663*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1664*758e9fbaSOystein Eftevaag     const TPML_CC *setList,
1665*758e9fbaSOystein Eftevaag     const TPML_CC *clearList,
1666*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1667*758e9fbaSOystein Eftevaag 
1668*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SetAlgorithmSet_Prepare(
1669*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1670*758e9fbaSOystein Eftevaag     TPMI_RH_PLATFORM authHandle,
1671*758e9fbaSOystein Eftevaag     UINT32 algorithmSet);
1672*758e9fbaSOystein Eftevaag 
1673*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SetAlgorithmSet_Complete(
1674*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1675*758e9fbaSOystein Eftevaag 
1676*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_SetAlgorithmSet(
1677*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1678*758e9fbaSOystein Eftevaag     TPMI_RH_PLATFORM authHandle,
1679*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1680*758e9fbaSOystein Eftevaag     UINT32 algorithmSet,
1681*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1682*758e9fbaSOystein Eftevaag 
1683*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_FieldUpgradeStart_Prepare(
1684*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1685*758e9fbaSOystein Eftevaag     TPMI_RH_PLATFORM authorization,
1686*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
1687*758e9fbaSOystein Eftevaag     TPM2B_DIGEST const *fuDigest,
1688*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE const *manifestSignature);
1689*758e9fbaSOystein Eftevaag 
1690*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_FieldUpgradeStart_Complete(
1691*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1692*758e9fbaSOystein Eftevaag 
1693*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_FieldUpgradeStart(
1694*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1695*758e9fbaSOystein Eftevaag     TPMI_RH_PLATFORM authorization,
1696*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT keyHandle,
1697*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1698*758e9fbaSOystein Eftevaag     TPM2B_DIGEST const *fuDigest,
1699*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE const *manifestSignature,
1700*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1701*758e9fbaSOystein Eftevaag 
1702*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_FieldUpgradeData_Prepare(
1703*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1704*758e9fbaSOystein Eftevaag     TPM2B_MAX_BUFFER const *fuData);
1705*758e9fbaSOystein Eftevaag 
1706*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_FieldUpgradeData_Complete(
1707*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1708*758e9fbaSOystein Eftevaag     TPMT_HA *nextDigest,
1709*758e9fbaSOystein Eftevaag     TPMT_HA *firstDigest);
1710*758e9fbaSOystein Eftevaag 
1711*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_FieldUpgradeData(
1712*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1713*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1714*758e9fbaSOystein Eftevaag     TPM2B_MAX_BUFFER const *fuData,
1715*758e9fbaSOystein Eftevaag     TPMT_HA *nextDigest,
1716*758e9fbaSOystein Eftevaag     TPMT_HA *firstDigest,
1717*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1718*758e9fbaSOystein Eftevaag 
1719*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_FirmwareRead_Prepare(
1720*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1721*758e9fbaSOystein Eftevaag     UINT32 sequenceNumber);
1722*758e9fbaSOystein Eftevaag 
1723*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_FirmwareRead_Complete(
1724*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1725*758e9fbaSOystein Eftevaag     TPM2B_MAX_BUFFER *fuData);
1726*758e9fbaSOystein Eftevaag 
1727*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_FirmwareRead(
1728*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1729*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1730*758e9fbaSOystein Eftevaag     UINT32 sequenceNumber,
1731*758e9fbaSOystein Eftevaag     TPM2B_MAX_BUFFER *fuData,
1732*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1733*758e9fbaSOystein Eftevaag 
1734*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ContextSave_Prepare(
1735*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1736*758e9fbaSOystein Eftevaag     TPMI_DH_CONTEXT saveHandle);
1737*758e9fbaSOystein Eftevaag 
1738*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ContextSave_Complete(
1739*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1740*758e9fbaSOystein Eftevaag     TPMS_CONTEXT *context);
1741*758e9fbaSOystein Eftevaag 
1742*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ContextSave(
1743*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1744*758e9fbaSOystein Eftevaag     TPMI_DH_CONTEXT saveHandle,
1745*758e9fbaSOystein Eftevaag     TPMS_CONTEXT *context);
1746*758e9fbaSOystein Eftevaag 
1747*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ContextLoad_Prepare(
1748*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1749*758e9fbaSOystein Eftevaag     const TPMS_CONTEXT *context);
1750*758e9fbaSOystein Eftevaag 
1751*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ContextLoad_Complete(
1752*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1753*758e9fbaSOystein Eftevaag     TPMI_DH_CONTEXT *loadedHandle);
1754*758e9fbaSOystein Eftevaag 
1755*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ContextLoad(
1756*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1757*758e9fbaSOystein Eftevaag     const TPMS_CONTEXT *context,
1758*758e9fbaSOystein Eftevaag     TPMI_DH_CONTEXT *loadedHandle);
1759*758e9fbaSOystein Eftevaag 
1760*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_FlushContext_Prepare(
1761*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1762*758e9fbaSOystein Eftevaag     TPMI_DH_CONTEXT flushHandle);
1763*758e9fbaSOystein Eftevaag 
1764*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_FlushContext_Complete(
1765*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1766*758e9fbaSOystein Eftevaag 
1767*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_FlushContext(
1768*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1769*758e9fbaSOystein Eftevaag     TPMI_DH_CONTEXT flushHandle);
1770*758e9fbaSOystein Eftevaag 
1771*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_EvictControl_Prepare(
1772*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1773*758e9fbaSOystein Eftevaag     TPMI_RH_PROVISION auth,
1774*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT objectHandle,
1775*758e9fbaSOystein Eftevaag     TPMI_DH_PERSISTENT persistentHandle);
1776*758e9fbaSOystein Eftevaag 
1777*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_EvictControl_Complete(
1778*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1779*758e9fbaSOystein Eftevaag 
1780*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_EvictControl(
1781*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1782*758e9fbaSOystein Eftevaag     TPMI_RH_PROVISION auth,
1783*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT objectHandle,
1784*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1785*758e9fbaSOystein Eftevaag     TPMI_DH_PERSISTENT persistentHandle,
1786*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1787*758e9fbaSOystein Eftevaag 
1788*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ReadClock_Prepare(
1789*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1790*758e9fbaSOystein Eftevaag 
1791*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ReadClock_Complete(
1792*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1793*758e9fbaSOystein Eftevaag     TPMS_TIME_INFO *currentTime);
1794*758e9fbaSOystein Eftevaag 
1795*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ReadClock(
1796*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1797*758e9fbaSOystein Eftevaag     TPMS_TIME_INFO *currentTime);
1798*758e9fbaSOystein Eftevaag 
1799*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ClockSet_Prepare(
1800*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1801*758e9fbaSOystein Eftevaag     TPMI_RH_PROVISION auth,
1802*758e9fbaSOystein Eftevaag     UINT64 newTime);
1803*758e9fbaSOystein Eftevaag 
1804*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ClockSet_Complete(
1805*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1806*758e9fbaSOystein Eftevaag 
1807*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ClockSet(
1808*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1809*758e9fbaSOystein Eftevaag     TPMI_RH_PROVISION auth,
1810*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1811*758e9fbaSOystein Eftevaag     UINT64 newTime,
1812*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1813*758e9fbaSOystein Eftevaag 
1814*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ClockRateAdjust_Prepare(
1815*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1816*758e9fbaSOystein Eftevaag     TPMI_RH_PROVISION auth,
1817*758e9fbaSOystein Eftevaag     TPM2_CLOCK_ADJUST rateAdjust);
1818*758e9fbaSOystein Eftevaag 
1819*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ClockRateAdjust_Complete(
1820*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1821*758e9fbaSOystein Eftevaag 
1822*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_ClockRateAdjust(
1823*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1824*758e9fbaSOystein Eftevaag     TPMI_RH_PROVISION auth,
1825*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1826*758e9fbaSOystein Eftevaag     TPM2_CLOCK_ADJUST rateAdjust,
1827*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1828*758e9fbaSOystein Eftevaag 
1829*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetCapability_Prepare(
1830*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1831*758e9fbaSOystein Eftevaag     TPM2_CAP capability,
1832*758e9fbaSOystein Eftevaag     UINT32 property,
1833*758e9fbaSOystein Eftevaag     UINT32 propertyCount);
1834*758e9fbaSOystein Eftevaag 
1835*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetCapability_Complete(
1836*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1837*758e9fbaSOystein Eftevaag     TPMI_YES_NO *moreData,
1838*758e9fbaSOystein Eftevaag     TPMS_CAPABILITY_DATA *capabilityData);
1839*758e9fbaSOystein Eftevaag 
1840*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_GetCapability(
1841*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1842*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1843*758e9fbaSOystein Eftevaag     TPM2_CAP capability,
1844*758e9fbaSOystein Eftevaag     UINT32 property,
1845*758e9fbaSOystein Eftevaag     UINT32 propertyCount,
1846*758e9fbaSOystein Eftevaag     TPMI_YES_NO *moreData,
1847*758e9fbaSOystein Eftevaag     TPMS_CAPABILITY_DATA *capabilityData,
1848*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1849*758e9fbaSOystein Eftevaag 
1850*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_TestParms_Prepare(
1851*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1852*758e9fbaSOystein Eftevaag     const TPMT_PUBLIC_PARMS *parameters);
1853*758e9fbaSOystein Eftevaag 
1854*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_TestParms_Complete(
1855*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1856*758e9fbaSOystein Eftevaag 
1857*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_TestParms(
1858*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1859*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1860*758e9fbaSOystein Eftevaag     const TPMT_PUBLIC_PARMS *parameters,
1861*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1862*758e9fbaSOystein Eftevaag 
1863*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_DefineSpace_Prepare(
1864*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1865*758e9fbaSOystein Eftevaag     TPMI_RH_PROVISION authHandle,
1866*758e9fbaSOystein Eftevaag     const TPM2B_AUTH *auth,
1867*758e9fbaSOystein Eftevaag     const TPM2B_NV_PUBLIC *publicInfo);
1868*758e9fbaSOystein Eftevaag 
1869*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_DefineSpace_Complete(
1870*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1871*758e9fbaSOystein Eftevaag 
1872*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_DefineSpace(
1873*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1874*758e9fbaSOystein Eftevaag     TPMI_RH_PROVISION authHandle,
1875*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1876*758e9fbaSOystein Eftevaag     const TPM2B_AUTH *auth,
1877*758e9fbaSOystein Eftevaag     const TPM2B_NV_PUBLIC *publicInfo,
1878*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1879*758e9fbaSOystein Eftevaag 
1880*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_UndefineSpace_Prepare(
1881*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1882*758e9fbaSOystein Eftevaag     TPMI_RH_PROVISION authHandle,
1883*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex);
1884*758e9fbaSOystein Eftevaag 
1885*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_UndefineSpace_Complete(
1886*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1887*758e9fbaSOystein Eftevaag 
1888*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_UndefineSpace(
1889*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1890*758e9fbaSOystein Eftevaag     TPMI_RH_PROVISION authHandle,
1891*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
1892*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1893*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1894*758e9fbaSOystein Eftevaag 
1895*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_UndefineSpaceSpecial_Prepare(
1896*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1897*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
1898*758e9fbaSOystein Eftevaag     TPMI_RH_PLATFORM platform);
1899*758e9fbaSOystein Eftevaag 
1900*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_UndefineSpaceSpecial_Complete(
1901*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1902*758e9fbaSOystein Eftevaag 
1903*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_UndefineSpaceSpecial(
1904*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1905*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
1906*758e9fbaSOystein Eftevaag     TPMI_RH_PLATFORM platform,
1907*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1908*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1909*758e9fbaSOystein Eftevaag 
1910*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_ReadPublic_Prepare(
1911*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1912*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex);
1913*758e9fbaSOystein Eftevaag 
1914*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_ReadPublic_Complete(
1915*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1916*758e9fbaSOystein Eftevaag     TPM2B_NV_PUBLIC *nvPublic,
1917*758e9fbaSOystein Eftevaag     TPM2B_NAME *nvName);
1918*758e9fbaSOystein Eftevaag 
1919*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_ReadPublic(
1920*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1921*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
1922*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1923*758e9fbaSOystein Eftevaag     TPM2B_NV_PUBLIC *nvPublic,
1924*758e9fbaSOystein Eftevaag     TPM2B_NAME *nvName,
1925*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1926*758e9fbaSOystein Eftevaag 
1927*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_Write_Prepare(
1928*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1929*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
1930*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
1931*758e9fbaSOystein Eftevaag     const TPM2B_MAX_NV_BUFFER *data,
1932*758e9fbaSOystein Eftevaag     UINT16 offset);
1933*758e9fbaSOystein Eftevaag 
1934*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_Write_Complete(
1935*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1936*758e9fbaSOystein Eftevaag 
1937*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_Write(
1938*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1939*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
1940*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
1941*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1942*758e9fbaSOystein Eftevaag     const TPM2B_MAX_NV_BUFFER *data,
1943*758e9fbaSOystein Eftevaag     UINT16 offset,
1944*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1945*758e9fbaSOystein Eftevaag 
1946*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_Increment_Prepare(
1947*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1948*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
1949*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex);
1950*758e9fbaSOystein Eftevaag 
1951*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_Increment_Complete(
1952*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1953*758e9fbaSOystein Eftevaag 
1954*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_Increment(
1955*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1956*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
1957*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
1958*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1959*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1960*758e9fbaSOystein Eftevaag 
1961*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_Extend_Prepare(
1962*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1963*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
1964*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
1965*758e9fbaSOystein Eftevaag     const TPM2B_MAX_NV_BUFFER *data);
1966*758e9fbaSOystein Eftevaag 
1967*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_Extend_Complete(
1968*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1969*758e9fbaSOystein Eftevaag 
1970*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_Extend(
1971*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1972*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
1973*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
1974*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1975*758e9fbaSOystein Eftevaag     const TPM2B_MAX_NV_BUFFER *data,
1976*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1977*758e9fbaSOystein Eftevaag 
1978*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_SetBits_Prepare(
1979*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1980*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
1981*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
1982*758e9fbaSOystein Eftevaag     UINT64 bits);
1983*758e9fbaSOystein Eftevaag 
1984*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_SetBits_Complete(
1985*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
1986*758e9fbaSOystein Eftevaag 
1987*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_SetBits(
1988*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1989*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
1990*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
1991*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
1992*758e9fbaSOystein Eftevaag     UINT64 bits,
1993*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
1994*758e9fbaSOystein Eftevaag 
1995*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_WriteLock_Prepare(
1996*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
1997*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
1998*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex);
1999*758e9fbaSOystein Eftevaag 
2000*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_WriteLock_Complete(
2001*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
2002*758e9fbaSOystein Eftevaag 
2003*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_WriteLock(
2004*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2005*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
2006*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
2007*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
2008*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
2009*758e9fbaSOystein Eftevaag 
2010*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_GlobalWriteLock_Prepare(
2011*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2012*758e9fbaSOystein Eftevaag     TPMI_RH_PROVISION authHandle);
2013*758e9fbaSOystein Eftevaag 
2014*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_GlobalWriteLock_Complete(
2015*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
2016*758e9fbaSOystein Eftevaag 
2017*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_GlobalWriteLock(
2018*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2019*758e9fbaSOystein Eftevaag     TPMI_RH_PROVISION authHandle,
2020*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
2021*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
2022*758e9fbaSOystein Eftevaag 
2023*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_Read_Prepare(
2024*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2025*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
2026*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
2027*758e9fbaSOystein Eftevaag     UINT16 size,
2028*758e9fbaSOystein Eftevaag     UINT16 offset);
2029*758e9fbaSOystein Eftevaag 
2030*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_Read_Complete(
2031*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2032*758e9fbaSOystein Eftevaag     TPM2B_MAX_NV_BUFFER *data);
2033*758e9fbaSOystein Eftevaag 
2034*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_Read(
2035*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2036*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
2037*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
2038*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
2039*758e9fbaSOystein Eftevaag     UINT16 size,
2040*758e9fbaSOystein Eftevaag     UINT16 offset,
2041*758e9fbaSOystein Eftevaag     TPM2B_MAX_NV_BUFFER *data,
2042*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
2043*758e9fbaSOystein Eftevaag 
2044*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_ReadLock_Prepare(
2045*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2046*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
2047*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex);
2048*758e9fbaSOystein Eftevaag 
2049*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_ReadLock_Complete(
2050*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
2051*758e9fbaSOystein Eftevaag 
2052*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_ReadLock(
2053*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2054*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
2055*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
2056*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
2057*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
2058*758e9fbaSOystein Eftevaag 
2059*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_ChangeAuth_Prepare(
2060*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2061*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
2062*758e9fbaSOystein Eftevaag     const TPM2B_AUTH *newAuth);
2063*758e9fbaSOystein Eftevaag 
2064*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_ChangeAuth_Complete(
2065*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
2066*758e9fbaSOystein Eftevaag 
2067*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_ChangeAuth(
2068*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2069*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
2070*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
2071*758e9fbaSOystein Eftevaag     const TPM2B_AUTH *newAuth,
2072*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
2073*758e9fbaSOystein Eftevaag 
2074*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_Certify_Prepare(
2075*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2076*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT signHandle,
2077*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
2078*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
2079*758e9fbaSOystein Eftevaag     const TPM2B_DATA *qualifyingData,
2080*758e9fbaSOystein Eftevaag     const TPMT_SIG_SCHEME *inScheme,
2081*758e9fbaSOystein Eftevaag     UINT16 size,
2082*758e9fbaSOystein Eftevaag     UINT16 offset);
2083*758e9fbaSOystein Eftevaag 
2084*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_Certify_Complete(
2085*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2086*758e9fbaSOystein Eftevaag     TPM2B_ATTEST *certifyInfo,
2087*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE *signature);
2088*758e9fbaSOystein Eftevaag 
2089*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_NV_Certify(
2090*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2091*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT signHandle,
2092*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
2093*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
2094*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
2095*758e9fbaSOystein Eftevaag     const TPM2B_DATA *qualifyingData,
2096*758e9fbaSOystein Eftevaag     const TPMT_SIG_SCHEME *inScheme,
2097*758e9fbaSOystein Eftevaag     UINT16 size,
2098*758e9fbaSOystein Eftevaag     UINT16 offset,
2099*758e9fbaSOystein Eftevaag     TPM2B_ATTEST *certifyInfo,
2100*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE *signature,
2101*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
2102*758e9fbaSOystein Eftevaag 
2103*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Vendor_TCG_Test_Prepare(
2104*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2105*758e9fbaSOystein Eftevaag     const TPM2B_DATA *inputData);
2106*758e9fbaSOystein Eftevaag 
2107*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Vendor_TCG_Test_Complete(
2108*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2109*758e9fbaSOystein Eftevaag     TPM2B_DATA *outputData);
2110*758e9fbaSOystein Eftevaag 
2111*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Vendor_TCG_Test(
2112*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2113*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
2114*758e9fbaSOystein Eftevaag     const TPM2B_DATA *inputData,
2115*758e9fbaSOystein Eftevaag     TPM2B_DATA *outputData,
2116*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
2117*758e9fbaSOystein Eftevaag 
2118*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_AC_GetCapability_Prepare(
2119*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2120*758e9fbaSOystein Eftevaag     TPMI_RH_AC ac,
2121*758e9fbaSOystein Eftevaag     TPM_AT capability,
2122*758e9fbaSOystein Eftevaag     UINT32 count);
2123*758e9fbaSOystein Eftevaag 
2124*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_AC_GetCapability_Complete(
2125*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2126*758e9fbaSOystein Eftevaag     TPMI_YES_NO *moreData,
2127*758e9fbaSOystein Eftevaag     TPML_AC_CAPABILITIES *capabilityData);
2128*758e9fbaSOystein Eftevaag 
2129*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_AC_GetCapability(
2130*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2131*758e9fbaSOystein Eftevaag     TPMI_RH_AC ac,
2132*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
2133*758e9fbaSOystein Eftevaag     TPM_AT capability,
2134*758e9fbaSOystein Eftevaag     UINT32 count,
2135*758e9fbaSOystein Eftevaag     TPMI_YES_NO *moreData,
2136*758e9fbaSOystein Eftevaag     TPML_AC_CAPABILITIES *capabilityData,
2137*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
2138*758e9fbaSOystein Eftevaag 
2139*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_AC_Send_Prepare(
2140*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2141*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT sendObject,
2142*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
2143*758e9fbaSOystein Eftevaag     TPMI_RH_AC ac,
2144*758e9fbaSOystein Eftevaag     TPM2B_MAX_BUFFER *acDataIn);
2145*758e9fbaSOystein Eftevaag 
2146*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_AC_Send_Complete(
2147*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2148*758e9fbaSOystein Eftevaag     TPMS_AC_OUTPUT *acDataOut);
2149*758e9fbaSOystein Eftevaag 
2150*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_AC_Send(
2151*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2152*758e9fbaSOystein Eftevaag     TPMI_DH_OBJECT sendObject,
2153*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
2154*758e9fbaSOystein Eftevaag     TPMI_RH_AC ac,
2155*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
2156*758e9fbaSOystein Eftevaag     TPM2B_MAX_BUFFER *acDataIn,
2157*758e9fbaSOystein Eftevaag     TPMS_AC_OUTPUT *acDataOut,
2158*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
2159*758e9fbaSOystein Eftevaag 
2160*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Policy_AC_SendSelect_Prepare(
2161*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2162*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
2163*758e9fbaSOystein Eftevaag     TPM2B_NAME *objectName,
2164*758e9fbaSOystein Eftevaag     TPM2B_NAME *authHandleName,
2165*758e9fbaSOystein Eftevaag     TPM2B_NAME *acName,
2166*758e9fbaSOystein Eftevaag     TPMI_YES_NO includeObject);
2167*758e9fbaSOystein Eftevaag 
2168*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Policy_AC_SendSelect_Complete(
2169*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
2170*758e9fbaSOystein Eftevaag 
2171*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_Policy_AC_SendSelect(
2172*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2173*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
2174*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
2175*758e9fbaSOystein Eftevaag     TPM2B_NAME *objectName,
2176*758e9fbaSOystein Eftevaag     TPM2B_NAME *authHandleName,
2177*758e9fbaSOystein Eftevaag     TPM2B_NAME *acName,
2178*758e9fbaSOystein Eftevaag     TPMI_YES_NO includeObject,
2179*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
2180*758e9fbaSOystein Eftevaag 
2181*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyTemplate_Prepare(
2182*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2183*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
2184*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *templateHash);
2185*758e9fbaSOystein Eftevaag 
2186*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyTemplate_Complete(
2187*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
2188*758e9fbaSOystein Eftevaag 
2189*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyTemplate(
2190*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2191*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
2192*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
2193*758e9fbaSOystein Eftevaag     const TPM2B_DIGEST *templateHash,
2194*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
2195*758e9fbaSOystein Eftevaag 
2196*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_CreateLoaded_Prepare(
2197*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2198*758e9fbaSOystein Eftevaag     TPMI_RH_HIERARCHY parentHandle,
2199*758e9fbaSOystein Eftevaag     const TPM2B_SENSITIVE_CREATE *inSensitive,
2200*758e9fbaSOystein Eftevaag     const TPM2B_TEMPLATE *inPublic);
2201*758e9fbaSOystein Eftevaag 
2202*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_CreateLoaded_Complete(
2203*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2204*758e9fbaSOystein Eftevaag     TPM2_HANDLE *objectHandle,
2205*758e9fbaSOystein Eftevaag     TPM2B_PRIVATE *outPrivate,
2206*758e9fbaSOystein Eftevaag     TPM2B_PUBLIC *outPublic,
2207*758e9fbaSOystein Eftevaag     TPM2B_NAME *name);
2208*758e9fbaSOystein Eftevaag 
2209*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_CreateLoaded(
2210*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2211*758e9fbaSOystein Eftevaag     TPMI_RH_HIERARCHY parentHandle,
2212*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
2213*758e9fbaSOystein Eftevaag     const TPM2B_SENSITIVE_CREATE *inSensitive,
2214*758e9fbaSOystein Eftevaag     const TPM2B_TEMPLATE *inPublic,
2215*758e9fbaSOystein Eftevaag     TPM2_HANDLE *objectHandle,
2216*758e9fbaSOystein Eftevaag     TPM2B_PRIVATE *outPrivate,
2217*758e9fbaSOystein Eftevaag     TPM2B_PUBLIC *outPublic,
2218*758e9fbaSOystein Eftevaag     TPM2B_NAME *name,
2219*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
2220*758e9fbaSOystein Eftevaag 
2221*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyAuthorizeNV_Prepare(
2222*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2223*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
2224*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
2225*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession);
2226*758e9fbaSOystein Eftevaag 
2227*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyAuthorizeNV_Complete(
2228*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext);
2229*758e9fbaSOystein Eftevaag 
2230*758e9fbaSOystein Eftevaag TSS2_RC Tss2_Sys_PolicyAuthorizeNV(
2231*758e9fbaSOystein Eftevaag     TSS2_SYS_CONTEXT *sysContext,
2232*758e9fbaSOystein Eftevaag     TPMI_RH_NV_AUTH authHandle,
2233*758e9fbaSOystein Eftevaag     TPMI_RH_NV_INDEX nvIndex,
2234*758e9fbaSOystein Eftevaag     TPMI_SH_POLICY policySession,
2235*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_COMMAND const *cmdAuthsArray,
2236*758e9fbaSOystein Eftevaag     TSS2L_SYS_AUTH_RESPONSE *rspAuthsArray);
2237*758e9fbaSOystein Eftevaag 
2238*758e9fbaSOystein Eftevaag #ifdef __cplusplus
2239*758e9fbaSOystein Eftevaag }
2240*758e9fbaSOystein Eftevaag #endif
2241*758e9fbaSOystein Eftevaag #endif /* TSS2_SYS_H */
2242