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