1) TSS.JS/Java/Py: Removed unnecessary constatnt tag member from tagged structures.

2) TSS.JS/Java/Py: Replaced manual member-by-member initialization of the command structure with initialization list.
3) TSS.Java: Eliminated empty handle lists, and fixed pretty-printed types of some data structure members.
4) TSS.JS: Eliminated empty response data structures (replaced them with just 'void').
5) TSS.Net: Eliminated elementary and duplicate types in the [KnownType()] class attributes.
This commit is contained in:
amarochk 2020-03-21 22:20:12 -07:00
Родитель 0c52b703d0
Коммит 397762fe6c
46 изменённых файлов: 3360 добавлений и 3656 удалений

Просмотреть файл

@ -28750,6 +28750,59 @@ void TpmTypeInfo::Init()
pei->ConstNames[TPM_SPEC::YEAR] = "YEAR";
pei->ConstNames[TPM_SPEC::DAY_OF_YEAR] = "DAY_OF_YEAR";
// ======== ALG_ID_VALUE ========
pei = new TpmEnumInfo();
TypeMap[TpmTypeId::ALG_ID_VALUE_ID] = pei;
pei->Kind = TpmEntity::Enum;
pei->Name = "ALG_ID_VALUE";
pei->Size = sizeof(UINT16);
pei->ConstNames.clear();
pei->ConstNames[0x0000] = "ERROR_VALUE";
pei->ConstNames[0x0001] = "FIRST_VALUE";
pei->ConstNames[0x0001] = "RSA_VALUE";
pei->ConstNames[0x0003] = "TDES_VALUE";
pei->ConstNames[0x0004] = "SHA_VALUE";
pei->ConstNames[0x0004] = "SHA1_VALUE";
pei->ConstNames[0x0005] = "HMAC_VALUE";
pei->ConstNames[0x0006] = "AES_VALUE";
pei->ConstNames[0x0007] = "MGF1_VALUE";
pei->ConstNames[0x0008] = "KEYEDHASH_VALUE";
pei->ConstNames[0x000A] = "XOR_VALUE";
pei->ConstNames[0x000B] = "SHA256_VALUE";
pei->ConstNames[0x000C] = "SHA384_VALUE";
pei->ConstNames[0x000D] = "SHA512_VALUE";
pei->ConstNames[0x0010] = "NULL_VALUE";
pei->ConstNames[0x0012] = "SM3_256_VALUE";
pei->ConstNames[0x0013] = "SM4_VALUE";
pei->ConstNames[0x0014] = "RSASSA_VALUE";
pei->ConstNames[0x0015] = "RSAES_VALUE";
pei->ConstNames[0x0016] = "RSAPSS_VALUE";
pei->ConstNames[0x0017] = "OAEP_VALUE";
pei->ConstNames[0x0018] = "ECDSA_VALUE";
pei->ConstNames[0x0019] = "ECDH_VALUE";
pei->ConstNames[0x001A] = "ECDAA_VALUE";
pei->ConstNames[0x001B] = "SM2_VALUE";
pei->ConstNames[0x001C] = "ECSCHNORR_VALUE";
pei->ConstNames[0x001D] = "ECMQV_VALUE";
pei->ConstNames[0x0020] = "KDF1_SP800_56A_VALUE";
pei->ConstNames[0x0021] = "KDF2_VALUE";
pei->ConstNames[0x0022] = "KDF1_SP800_108_VALUE";
pei->ConstNames[0x0023] = "ECC_VALUE";
pei->ConstNames[0x0025] = "SYMCIPHER_VALUE";
pei->ConstNames[0x0026] = "CAMELLIA_VALUE";
pei->ConstNames[0x0027] = "SHA3_256_VALUE";
pei->ConstNames[0x0028] = "SHA3_384_VALUE";
pei->ConstNames[0x0029] = "SHA3_512_VALUE";
pei->ConstNames[0x003F] = "CMAC_VALUE";
pei->ConstNames[0x0040] = "CTR_VALUE";
pei->ConstNames[0x0041] = "OFB_VALUE";
pei->ConstNames[0x0042] = "CBC_VALUE";
pei->ConstNames[0x0043] = "CFB_VALUE";
pei->ConstNames[0x0044] = "ECB_VALUE";
pei->ConstNames[0x0044] = "LAST_VALUE";
pei->ConstNames[0x7FFF] = "ANY_VALUE";
pei->ConstNames[0x7FFE] = "ANY2_VALUE";
// ======== Implementation ========
pei = new TpmEnumInfo();
TypeMap[TpmTypeId::Implementation_ID] = pei;
@ -28849,59 +28902,6 @@ void TpmTypeInfo::Init()
pei->ConstNames[(TPM_HC::HR_AC + 0)] = "AC_FIRST";
pei->ConstNames[(TPM_HC::HR_AC + 0x0000FFFF)] = "AC_LAST";
// ======== ALG_ID_VALUE ========
pei = new TpmEnumInfo();
TypeMap[TpmTypeId::ALG_ID_VALUE_ID] = pei;
pei->Kind = TpmEntity::Enum;
pei->Name = "ALG_ID_VALUE";
pei->Size = sizeof(UINT16);
pei->ConstNames.clear();
pei->ConstNames[0x0000] = "ERROR_VALUE";
pei->ConstNames[0x0001] = "FIRST_VALUE";
pei->ConstNames[0x0001] = "RSA_VALUE";
pei->ConstNames[0x0003] = "TDES_VALUE";
pei->ConstNames[0x0004] = "SHA_VALUE";
pei->ConstNames[0x0004] = "SHA1_VALUE";
pei->ConstNames[0x0005] = "HMAC_VALUE";
pei->ConstNames[0x0006] = "AES_VALUE";
pei->ConstNames[0x0007] = "MGF1_VALUE";
pei->ConstNames[0x0008] = "KEYEDHASH_VALUE";
pei->ConstNames[0x000A] = "XOR_VALUE";
pei->ConstNames[0x000B] = "SHA256_VALUE";
pei->ConstNames[0x000C] = "SHA384_VALUE";
pei->ConstNames[0x000D] = "SHA512_VALUE";
pei->ConstNames[0x0010] = "NULL_VALUE";
pei->ConstNames[0x0012] = "SM3_256_VALUE";
pei->ConstNames[0x0013] = "SM4_VALUE";
pei->ConstNames[0x0014] = "RSASSA_VALUE";
pei->ConstNames[0x0015] = "RSAES_VALUE";
pei->ConstNames[0x0016] = "RSAPSS_VALUE";
pei->ConstNames[0x0017] = "OAEP_VALUE";
pei->ConstNames[0x0018] = "ECDSA_VALUE";
pei->ConstNames[0x0019] = "ECDH_VALUE";
pei->ConstNames[0x001A] = "ECDAA_VALUE";
pei->ConstNames[0x001B] = "SM2_VALUE";
pei->ConstNames[0x001C] = "ECSCHNORR_VALUE";
pei->ConstNames[0x001D] = "ECMQV_VALUE";
pei->ConstNames[0x0020] = "KDF1_SP800_56A_VALUE";
pei->ConstNames[0x0021] = "KDF2_VALUE";
pei->ConstNames[0x0022] = "KDF1_SP800_108_VALUE";
pei->ConstNames[0x0023] = "ECC_VALUE";
pei->ConstNames[0x0025] = "SYMCIPHER_VALUE";
pei->ConstNames[0x0026] = "CAMELLIA_VALUE";
pei->ConstNames[0x0027] = "SHA3_256_VALUE";
pei->ConstNames[0x0028] = "SHA3_384_VALUE";
pei->ConstNames[0x0029] = "SHA3_512_VALUE";
pei->ConstNames[0x003F] = "CMAC_VALUE";
pei->ConstNames[0x0040] = "CTR_VALUE";
pei->ConstNames[0x0041] = "OFB_VALUE";
pei->ConstNames[0x0042] = "CBC_VALUE";
pei->ConstNames[0x0043] = "CFB_VALUE";
pei->ConstNames[0x0044] = "ECB_VALUE";
pei->ConstNames[0x0044] = "LAST_VALUE";
pei->ConstNames[0x7FFF] = "ANY_VALUE";
pei->ConstNames[0x7FFE] = "ANY2_VALUE";
TpmTypedefInfo* pti;

Просмотреть файл

@ -313,254 +313,254 @@ enum class TpmTypeId
TPMS_AC_OUTPUT_ID = 274,
TPML_AC_CAPABILITIES_ID = 275,
PLATFORM_ID = 276,
CONTEXT_SLOT_ID = 277,
Implementation_ID = 278,
TPM_HC_ID = 279,
TPM2_Startup_REQUEST_ID = 280,
StartupResponse_ID = 281,
TPM2_Shutdown_REQUEST_ID = 282,
ShutdownResponse_ID = 283,
TPM2_SelfTest_REQUEST_ID = 284,
SelfTestResponse_ID = 285,
TPM2_IncrementalSelfTest_REQUEST_ID = 286,
IncrementalSelfTestResponse_ID = 287,
TPM2_GetTestResult_REQUEST_ID = 288,
GetTestResultResponse_ID = 289,
TPM2_StartAuthSession_REQUEST_ID = 290,
StartAuthSessionResponse_ID = 291,
TPM2_PolicyRestart_REQUEST_ID = 292,
PolicyRestartResponse_ID = 293,
TPM2_Create_REQUEST_ID = 294,
CreateResponse_ID = 295,
TPM2_Load_REQUEST_ID = 296,
LoadResponse_ID = 297,
TPM2_LoadExternal_REQUEST_ID = 298,
LoadExternalResponse_ID = 299,
TPM2_ReadPublic_REQUEST_ID = 300,
ReadPublicResponse_ID = 301,
TPM2_ActivateCredential_REQUEST_ID = 302,
ActivateCredentialResponse_ID = 303,
TPM2_MakeCredential_REQUEST_ID = 304,
MakeCredentialResponse_ID = 305,
TPM2_Unseal_REQUEST_ID = 306,
UnsealResponse_ID = 307,
TPM2_ObjectChangeAuth_REQUEST_ID = 308,
ObjectChangeAuthResponse_ID = 309,
TPM2_CreateLoaded_REQUEST_ID = 310,
CreateLoadedResponse_ID = 311,
TPM2_Duplicate_REQUEST_ID = 312,
DuplicateResponse_ID = 313,
TPM2_Rewrap_REQUEST_ID = 314,
RewrapResponse_ID = 315,
TPM2_Import_REQUEST_ID = 316,
ImportResponse_ID = 317,
TPM2_RSA_Encrypt_REQUEST_ID = 318,
RSA_EncryptResponse_ID = 319,
TPM2_RSA_Decrypt_REQUEST_ID = 320,
RSA_DecryptResponse_ID = 321,
TPM2_ECDH_KeyGen_REQUEST_ID = 322,
ECDH_KeyGenResponse_ID = 323,
TPM2_ECDH_ZGen_REQUEST_ID = 324,
ECDH_ZGenResponse_ID = 325,
TPM2_ECC_Parameters_REQUEST_ID = 326,
ECC_ParametersResponse_ID = 327,
TPM2_ZGen_2Phase_REQUEST_ID = 328,
ZGen_2PhaseResponse_ID = 329,
TPM2_ECC_Encrypt_REQUEST_ID = 330,
ECC_EncryptResponse_ID = 331,
TPM2_ECC_Decrypt_REQUEST_ID = 332,
ECC_DecryptResponse_ID = 333,
TPM2_EncryptDecrypt_REQUEST_ID = 334,
EncryptDecryptResponse_ID = 335,
TPM2_EncryptDecrypt2_REQUEST_ID = 336,
EncryptDecrypt2Response_ID = 337,
TPM2_Hash_REQUEST_ID = 338,
HashResponse_ID = 339,
TPM2_HMAC_REQUEST_ID = 340,
HMACResponse_ID = 341,
TPM2_MAC_REQUEST_ID = 342,
MACResponse_ID = 343,
TPM2_GetRandom_REQUEST_ID = 344,
GetRandomResponse_ID = 345,
TPM2_StirRandom_REQUEST_ID = 346,
StirRandomResponse_ID = 347,
TPM2_HMAC_Start_REQUEST_ID = 348,
HMAC_StartResponse_ID = 349,
TPM2_MAC_Start_REQUEST_ID = 350,
MAC_StartResponse_ID = 351,
TPM2_HashSequenceStart_REQUEST_ID = 352,
HashSequenceStartResponse_ID = 353,
TPM2_SequenceUpdate_REQUEST_ID = 354,
SequenceUpdateResponse_ID = 355,
TPM2_SequenceComplete_REQUEST_ID = 356,
SequenceCompleteResponse_ID = 357,
TPM2_EventSequenceComplete_REQUEST_ID = 358,
EventSequenceCompleteResponse_ID = 359,
TPM2_Certify_REQUEST_ID = 360,
CertifyResponse_ID = 361,
TPM2_CertifyCreation_REQUEST_ID = 362,
CertifyCreationResponse_ID = 363,
TPM2_Quote_REQUEST_ID = 364,
QuoteResponse_ID = 365,
TPM2_GetSessionAuditDigest_REQUEST_ID = 366,
GetSessionAuditDigestResponse_ID = 367,
TPM2_GetCommandAuditDigest_REQUEST_ID = 368,
GetCommandAuditDigestResponse_ID = 369,
TPM2_GetTime_REQUEST_ID = 370,
GetTimeResponse_ID = 371,
TPM2_CertifyX509_REQUEST_ID = 372,
CertifyX509Response_ID = 373,
TPM2_Commit_REQUEST_ID = 374,
CommitResponse_ID = 375,
TPM2_EC_Ephemeral_REQUEST_ID = 376,
EC_EphemeralResponse_ID = 377,
TPM2_VerifySignature_REQUEST_ID = 378,
VerifySignatureResponse_ID = 379,
TPM2_Sign_REQUEST_ID = 380,
SignResponse_ID = 381,
TPM2_SetCommandCodeAuditStatus_REQUEST_ID = 382,
SetCommandCodeAuditStatusResponse_ID = 383,
TPM2_PCR_Extend_REQUEST_ID = 384,
PCR_ExtendResponse_ID = 385,
TPM2_PCR_Event_REQUEST_ID = 386,
PCR_EventResponse_ID = 387,
TPM2_PCR_Read_REQUEST_ID = 388,
PCR_ReadResponse_ID = 389,
TPM2_PCR_Allocate_REQUEST_ID = 390,
PCR_AllocateResponse_ID = 391,
TPM2_PCR_SetAuthPolicy_REQUEST_ID = 392,
PCR_SetAuthPolicyResponse_ID = 393,
TPM2_PCR_SetAuthValue_REQUEST_ID = 394,
PCR_SetAuthValueResponse_ID = 395,
TPM2_PCR_Reset_REQUEST_ID = 396,
PCR_ResetResponse_ID = 397,
TPM2_PolicySigned_REQUEST_ID = 398,
PolicySignedResponse_ID = 399,
TPM2_PolicySecret_REQUEST_ID = 400,
PolicySecretResponse_ID = 401,
TPM2_PolicyTicket_REQUEST_ID = 402,
PolicyTicketResponse_ID = 403,
TPM2_PolicyOR_REQUEST_ID = 404,
PolicyORResponse_ID = 405,
TPM2_PolicyPCR_REQUEST_ID = 406,
PolicyPCRResponse_ID = 407,
TPM2_PolicyLocality_REQUEST_ID = 408,
PolicyLocalityResponse_ID = 409,
TPM2_PolicyNV_REQUEST_ID = 410,
PolicyNVResponse_ID = 411,
TPM2_PolicyCounterTimer_REQUEST_ID = 412,
PolicyCounterTimerResponse_ID = 413,
TPM2_PolicyCommandCode_REQUEST_ID = 414,
PolicyCommandCodeResponse_ID = 415,
TPM2_PolicyPhysicalPresence_REQUEST_ID = 416,
PolicyPhysicalPresenceResponse_ID = 417,
TPM2_PolicyCpHash_REQUEST_ID = 418,
PolicyCpHashResponse_ID = 419,
TPM2_PolicyNameHash_REQUEST_ID = 420,
PolicyNameHashResponse_ID = 421,
TPM2_PolicyDuplicationSelect_REQUEST_ID = 422,
PolicyDuplicationSelectResponse_ID = 423,
TPM2_PolicyAuthorize_REQUEST_ID = 424,
PolicyAuthorizeResponse_ID = 425,
TPM2_PolicyAuthValue_REQUEST_ID = 426,
PolicyAuthValueResponse_ID = 427,
TPM2_PolicyPassword_REQUEST_ID = 428,
PolicyPasswordResponse_ID = 429,
TPM2_PolicyGetDigest_REQUEST_ID = 430,
PolicyGetDigestResponse_ID = 431,
TPM2_PolicyNvWritten_REQUEST_ID = 432,
PolicyNvWrittenResponse_ID = 433,
TPM2_PolicyTemplate_REQUEST_ID = 434,
PolicyTemplateResponse_ID = 435,
TPM2_PolicyAuthorizeNV_REQUEST_ID = 436,
PolicyAuthorizeNVResponse_ID = 437,
TPM2_CreatePrimary_REQUEST_ID = 438,
CreatePrimaryResponse_ID = 439,
TPM2_HierarchyControl_REQUEST_ID = 440,
HierarchyControlResponse_ID = 441,
TPM2_SetPrimaryPolicy_REQUEST_ID = 442,
SetPrimaryPolicyResponse_ID = 443,
TPM2_ChangePPS_REQUEST_ID = 444,
ChangePPSResponse_ID = 445,
TPM2_ChangeEPS_REQUEST_ID = 446,
ChangeEPSResponse_ID = 447,
TPM2_Clear_REQUEST_ID = 448,
ClearResponse_ID = 449,
TPM2_ClearControl_REQUEST_ID = 450,
ClearControlResponse_ID = 451,
TPM2_HierarchyChangeAuth_REQUEST_ID = 452,
HierarchyChangeAuthResponse_ID = 453,
TPM2_DictionaryAttackLockReset_REQUEST_ID = 454,
DictionaryAttackLockResetResponse_ID = 455,
TPM2_DictionaryAttackParameters_REQUEST_ID = 456,
DictionaryAttackParametersResponse_ID = 457,
TPM2_PP_Commands_REQUEST_ID = 458,
PP_CommandsResponse_ID = 459,
TPM2_SetAlgorithmSet_REQUEST_ID = 460,
SetAlgorithmSetResponse_ID = 461,
TPM2_FieldUpgradeStart_REQUEST_ID = 462,
FieldUpgradeStartResponse_ID = 463,
TPM2_FieldUpgradeData_REQUEST_ID = 464,
FieldUpgradeDataResponse_ID = 465,
TPM2_FirmwareRead_REQUEST_ID = 466,
FirmwareReadResponse_ID = 467,
TPM2_ContextSave_REQUEST_ID = 468,
ContextSaveResponse_ID = 469,
TPM2_ContextLoad_REQUEST_ID = 470,
ContextLoadResponse_ID = 471,
TPM2_FlushContext_REQUEST_ID = 472,
FlushContextResponse_ID = 473,
TPM2_EvictControl_REQUEST_ID = 474,
EvictControlResponse_ID = 475,
TPM2_ReadClock_REQUEST_ID = 476,
ReadClockResponse_ID = 477,
TPM2_ClockSet_REQUEST_ID = 478,
ClockSetResponse_ID = 479,
TPM2_ClockRateAdjust_REQUEST_ID = 480,
ClockRateAdjustResponse_ID = 481,
TPM2_GetCapability_REQUEST_ID = 482,
GetCapabilityResponse_ID = 483,
TPM2_TestParms_REQUEST_ID = 484,
TestParmsResponse_ID = 485,
TPM2_NV_DefineSpace_REQUEST_ID = 486,
NV_DefineSpaceResponse_ID = 487,
TPM2_NV_UndefineSpace_REQUEST_ID = 488,
NV_UndefineSpaceResponse_ID = 489,
TPM2_NV_UndefineSpaceSpecial_REQUEST_ID = 490,
NV_UndefineSpaceSpecialResponse_ID = 491,
TPM2_NV_ReadPublic_REQUEST_ID = 492,
NV_ReadPublicResponse_ID = 493,
TPM2_NV_Write_REQUEST_ID = 494,
NV_WriteResponse_ID = 495,
TPM2_NV_Increment_REQUEST_ID = 496,
NV_IncrementResponse_ID = 497,
TPM2_NV_Extend_REQUEST_ID = 498,
NV_ExtendResponse_ID = 499,
TPM2_NV_SetBits_REQUEST_ID = 500,
NV_SetBitsResponse_ID = 501,
TPM2_NV_WriteLock_REQUEST_ID = 502,
NV_WriteLockResponse_ID = 503,
TPM2_NV_GlobalWriteLock_REQUEST_ID = 504,
NV_GlobalWriteLockResponse_ID = 505,
TPM2_NV_Read_REQUEST_ID = 506,
NV_ReadResponse_ID = 507,
TPM2_NV_ReadLock_REQUEST_ID = 508,
NV_ReadLockResponse_ID = 509,
TPM2_NV_ChangeAuth_REQUEST_ID = 510,
NV_ChangeAuthResponse_ID = 511,
TPM2_NV_Certify_REQUEST_ID = 512,
NV_CertifyResponse_ID = 513,
TPM2_AC_GetCapability_REQUEST_ID = 514,
AC_GetCapabilityResponse_ID = 515,
TPM2_AC_Send_REQUEST_ID = 516,
AC_SendResponse_ID = 517,
TPM2_Policy_AC_SendSelect_REQUEST_ID = 518,
Policy_AC_SendSelectResponse_ID = 519,
TPM2_ACT_SetTimeout_REQUEST_ID = 520,
ACT_SetTimeoutResponse_ID = 521,
TPM2_Vendor_TCG_Test_REQUEST_ID = 522,
Vendor_TCG_TestResponse_ID = 523,
ALG_ID_VALUE_ID = 524,
ALG_ID_VALUE_ID = 277,
CONTEXT_SLOT_ID = 278,
Implementation_ID = 279,
TPM_HC_ID = 280,
TPM2_Startup_REQUEST_ID = 281,
StartupResponse_ID = 282,
TPM2_Shutdown_REQUEST_ID = 283,
ShutdownResponse_ID = 284,
TPM2_SelfTest_REQUEST_ID = 285,
SelfTestResponse_ID = 286,
TPM2_IncrementalSelfTest_REQUEST_ID = 287,
IncrementalSelfTestResponse_ID = 288,
TPM2_GetTestResult_REQUEST_ID = 289,
GetTestResultResponse_ID = 290,
TPM2_StartAuthSession_REQUEST_ID = 291,
StartAuthSessionResponse_ID = 292,
TPM2_PolicyRestart_REQUEST_ID = 293,
PolicyRestartResponse_ID = 294,
TPM2_Create_REQUEST_ID = 295,
CreateResponse_ID = 296,
TPM2_Load_REQUEST_ID = 297,
LoadResponse_ID = 298,
TPM2_LoadExternal_REQUEST_ID = 299,
LoadExternalResponse_ID = 300,
TPM2_ReadPublic_REQUEST_ID = 301,
ReadPublicResponse_ID = 302,
TPM2_ActivateCredential_REQUEST_ID = 303,
ActivateCredentialResponse_ID = 304,
TPM2_MakeCredential_REQUEST_ID = 305,
MakeCredentialResponse_ID = 306,
TPM2_Unseal_REQUEST_ID = 307,
UnsealResponse_ID = 308,
TPM2_ObjectChangeAuth_REQUEST_ID = 309,
ObjectChangeAuthResponse_ID = 310,
TPM2_CreateLoaded_REQUEST_ID = 311,
CreateLoadedResponse_ID = 312,
TPM2_Duplicate_REQUEST_ID = 313,
DuplicateResponse_ID = 314,
TPM2_Rewrap_REQUEST_ID = 315,
RewrapResponse_ID = 316,
TPM2_Import_REQUEST_ID = 317,
ImportResponse_ID = 318,
TPM2_RSA_Encrypt_REQUEST_ID = 319,
RSA_EncryptResponse_ID = 320,
TPM2_RSA_Decrypt_REQUEST_ID = 321,
RSA_DecryptResponse_ID = 322,
TPM2_ECDH_KeyGen_REQUEST_ID = 323,
ECDH_KeyGenResponse_ID = 324,
TPM2_ECDH_ZGen_REQUEST_ID = 325,
ECDH_ZGenResponse_ID = 326,
TPM2_ECC_Parameters_REQUEST_ID = 327,
ECC_ParametersResponse_ID = 328,
TPM2_ZGen_2Phase_REQUEST_ID = 329,
ZGen_2PhaseResponse_ID = 330,
TPM2_ECC_Encrypt_REQUEST_ID = 331,
ECC_EncryptResponse_ID = 332,
TPM2_ECC_Decrypt_REQUEST_ID = 333,
ECC_DecryptResponse_ID = 334,
TPM2_EncryptDecrypt_REQUEST_ID = 335,
EncryptDecryptResponse_ID = 336,
TPM2_EncryptDecrypt2_REQUEST_ID = 337,
EncryptDecrypt2Response_ID = 338,
TPM2_Hash_REQUEST_ID = 339,
HashResponse_ID = 340,
TPM2_HMAC_REQUEST_ID = 341,
HMACResponse_ID = 342,
TPM2_MAC_REQUEST_ID = 343,
MACResponse_ID = 344,
TPM2_GetRandom_REQUEST_ID = 345,
GetRandomResponse_ID = 346,
TPM2_StirRandom_REQUEST_ID = 347,
StirRandomResponse_ID = 348,
TPM2_HMAC_Start_REQUEST_ID = 349,
HMAC_StartResponse_ID = 350,
TPM2_MAC_Start_REQUEST_ID = 351,
MAC_StartResponse_ID = 352,
TPM2_HashSequenceStart_REQUEST_ID = 353,
HashSequenceStartResponse_ID = 354,
TPM2_SequenceUpdate_REQUEST_ID = 355,
SequenceUpdateResponse_ID = 356,
TPM2_SequenceComplete_REQUEST_ID = 357,
SequenceCompleteResponse_ID = 358,
TPM2_EventSequenceComplete_REQUEST_ID = 359,
EventSequenceCompleteResponse_ID = 360,
TPM2_Certify_REQUEST_ID = 361,
CertifyResponse_ID = 362,
TPM2_CertifyCreation_REQUEST_ID = 363,
CertifyCreationResponse_ID = 364,
TPM2_Quote_REQUEST_ID = 365,
QuoteResponse_ID = 366,
TPM2_GetSessionAuditDigest_REQUEST_ID = 367,
GetSessionAuditDigestResponse_ID = 368,
TPM2_GetCommandAuditDigest_REQUEST_ID = 369,
GetCommandAuditDigestResponse_ID = 370,
TPM2_GetTime_REQUEST_ID = 371,
GetTimeResponse_ID = 372,
TPM2_CertifyX509_REQUEST_ID = 373,
CertifyX509Response_ID = 374,
TPM2_Commit_REQUEST_ID = 375,
CommitResponse_ID = 376,
TPM2_EC_Ephemeral_REQUEST_ID = 377,
EC_EphemeralResponse_ID = 378,
TPM2_VerifySignature_REQUEST_ID = 379,
VerifySignatureResponse_ID = 380,
TPM2_Sign_REQUEST_ID = 381,
SignResponse_ID = 382,
TPM2_SetCommandCodeAuditStatus_REQUEST_ID = 383,
SetCommandCodeAuditStatusResponse_ID = 384,
TPM2_PCR_Extend_REQUEST_ID = 385,
PCR_ExtendResponse_ID = 386,
TPM2_PCR_Event_REQUEST_ID = 387,
PCR_EventResponse_ID = 388,
TPM2_PCR_Read_REQUEST_ID = 389,
PCR_ReadResponse_ID = 390,
TPM2_PCR_Allocate_REQUEST_ID = 391,
PCR_AllocateResponse_ID = 392,
TPM2_PCR_SetAuthPolicy_REQUEST_ID = 393,
PCR_SetAuthPolicyResponse_ID = 394,
TPM2_PCR_SetAuthValue_REQUEST_ID = 395,
PCR_SetAuthValueResponse_ID = 396,
TPM2_PCR_Reset_REQUEST_ID = 397,
PCR_ResetResponse_ID = 398,
TPM2_PolicySigned_REQUEST_ID = 399,
PolicySignedResponse_ID = 400,
TPM2_PolicySecret_REQUEST_ID = 401,
PolicySecretResponse_ID = 402,
TPM2_PolicyTicket_REQUEST_ID = 403,
PolicyTicketResponse_ID = 404,
TPM2_PolicyOR_REQUEST_ID = 405,
PolicyORResponse_ID = 406,
TPM2_PolicyPCR_REQUEST_ID = 407,
PolicyPCRResponse_ID = 408,
TPM2_PolicyLocality_REQUEST_ID = 409,
PolicyLocalityResponse_ID = 410,
TPM2_PolicyNV_REQUEST_ID = 411,
PolicyNVResponse_ID = 412,
TPM2_PolicyCounterTimer_REQUEST_ID = 413,
PolicyCounterTimerResponse_ID = 414,
TPM2_PolicyCommandCode_REQUEST_ID = 415,
PolicyCommandCodeResponse_ID = 416,
TPM2_PolicyPhysicalPresence_REQUEST_ID = 417,
PolicyPhysicalPresenceResponse_ID = 418,
TPM2_PolicyCpHash_REQUEST_ID = 419,
PolicyCpHashResponse_ID = 420,
TPM2_PolicyNameHash_REQUEST_ID = 421,
PolicyNameHashResponse_ID = 422,
TPM2_PolicyDuplicationSelect_REQUEST_ID = 423,
PolicyDuplicationSelectResponse_ID = 424,
TPM2_PolicyAuthorize_REQUEST_ID = 425,
PolicyAuthorizeResponse_ID = 426,
TPM2_PolicyAuthValue_REQUEST_ID = 427,
PolicyAuthValueResponse_ID = 428,
TPM2_PolicyPassword_REQUEST_ID = 429,
PolicyPasswordResponse_ID = 430,
TPM2_PolicyGetDigest_REQUEST_ID = 431,
PolicyGetDigestResponse_ID = 432,
TPM2_PolicyNvWritten_REQUEST_ID = 433,
PolicyNvWrittenResponse_ID = 434,
TPM2_PolicyTemplate_REQUEST_ID = 435,
PolicyTemplateResponse_ID = 436,
TPM2_PolicyAuthorizeNV_REQUEST_ID = 437,
PolicyAuthorizeNVResponse_ID = 438,
TPM2_CreatePrimary_REQUEST_ID = 439,
CreatePrimaryResponse_ID = 440,
TPM2_HierarchyControl_REQUEST_ID = 441,
HierarchyControlResponse_ID = 442,
TPM2_SetPrimaryPolicy_REQUEST_ID = 443,
SetPrimaryPolicyResponse_ID = 444,
TPM2_ChangePPS_REQUEST_ID = 445,
ChangePPSResponse_ID = 446,
TPM2_ChangeEPS_REQUEST_ID = 447,
ChangeEPSResponse_ID = 448,
TPM2_Clear_REQUEST_ID = 449,
ClearResponse_ID = 450,
TPM2_ClearControl_REQUEST_ID = 451,
ClearControlResponse_ID = 452,
TPM2_HierarchyChangeAuth_REQUEST_ID = 453,
HierarchyChangeAuthResponse_ID = 454,
TPM2_DictionaryAttackLockReset_REQUEST_ID = 455,
DictionaryAttackLockResetResponse_ID = 456,
TPM2_DictionaryAttackParameters_REQUEST_ID = 457,
DictionaryAttackParametersResponse_ID = 458,
TPM2_PP_Commands_REQUEST_ID = 459,
PP_CommandsResponse_ID = 460,
TPM2_SetAlgorithmSet_REQUEST_ID = 461,
SetAlgorithmSetResponse_ID = 462,
TPM2_FieldUpgradeStart_REQUEST_ID = 463,
FieldUpgradeStartResponse_ID = 464,
TPM2_FieldUpgradeData_REQUEST_ID = 465,
FieldUpgradeDataResponse_ID = 466,
TPM2_FirmwareRead_REQUEST_ID = 467,
FirmwareReadResponse_ID = 468,
TPM2_ContextSave_REQUEST_ID = 469,
ContextSaveResponse_ID = 470,
TPM2_ContextLoad_REQUEST_ID = 471,
ContextLoadResponse_ID = 472,
TPM2_FlushContext_REQUEST_ID = 473,
FlushContextResponse_ID = 474,
TPM2_EvictControl_REQUEST_ID = 475,
EvictControlResponse_ID = 476,
TPM2_ReadClock_REQUEST_ID = 477,
ReadClockResponse_ID = 478,
TPM2_ClockSet_REQUEST_ID = 479,
ClockSetResponse_ID = 480,
TPM2_ClockRateAdjust_REQUEST_ID = 481,
ClockRateAdjustResponse_ID = 482,
TPM2_GetCapability_REQUEST_ID = 483,
GetCapabilityResponse_ID = 484,
TPM2_TestParms_REQUEST_ID = 485,
TestParmsResponse_ID = 486,
TPM2_NV_DefineSpace_REQUEST_ID = 487,
NV_DefineSpaceResponse_ID = 488,
TPM2_NV_UndefineSpace_REQUEST_ID = 489,
NV_UndefineSpaceResponse_ID = 490,
TPM2_NV_UndefineSpaceSpecial_REQUEST_ID = 491,
NV_UndefineSpaceSpecialResponse_ID = 492,
TPM2_NV_ReadPublic_REQUEST_ID = 493,
NV_ReadPublicResponse_ID = 494,
TPM2_NV_Write_REQUEST_ID = 495,
NV_WriteResponse_ID = 496,
TPM2_NV_Increment_REQUEST_ID = 497,
NV_IncrementResponse_ID = 498,
TPM2_NV_Extend_REQUEST_ID = 499,
NV_ExtendResponse_ID = 500,
TPM2_NV_SetBits_REQUEST_ID = 501,
NV_SetBitsResponse_ID = 502,
TPM2_NV_WriteLock_REQUEST_ID = 503,
NV_WriteLockResponse_ID = 504,
TPM2_NV_GlobalWriteLock_REQUEST_ID = 505,
NV_GlobalWriteLockResponse_ID = 506,
TPM2_NV_Read_REQUEST_ID = 507,
NV_ReadResponse_ID = 508,
TPM2_NV_ReadLock_REQUEST_ID = 509,
NV_ReadLockResponse_ID = 510,
TPM2_NV_ChangeAuth_REQUEST_ID = 511,
NV_ChangeAuthResponse_ID = 512,
TPM2_NV_Certify_REQUEST_ID = 513,
NV_CertifyResponse_ID = 514,
TPM2_AC_GetCapability_REQUEST_ID = 515,
AC_GetCapabilityResponse_ID = 516,
TPM2_AC_Send_REQUEST_ID = 517,
AC_SendResponse_ID = 518,
TPM2_Policy_AC_SendSelect_REQUEST_ID = 519,
Policy_AC_SendSelectResponse_ID = 520,
TPM2_ACT_SetTimeout_REQUEST_ID = 521,
ACT_SetTimeoutResponse_ID = 522,
TPM2_Vendor_TCG_Test_REQUEST_ID = 523,
Vendor_TCG_TestResponse_ID = 524,
TPMS_SCHEME_RSASSA_ID = TPMS_SIG_SCHEME_RSASSA_ID,
TPMS_SCHEME_RSAPSS_ID = TPMS_SIG_SCHEME_RSAPSS_ID,
TPMS_SCHEME_ECDSA_ID = TPMS_SIG_SCHEME_ECDSA_ID,
@ -2038,6 +2038,104 @@ struct PLATFORM : public TpmEnum<UINT32>
TPM_ENUM_EPILOGUE(PLATFORM)
};
/// <summary> Proxy constants for TPM_ALG_ID enum </summary>
struct ALG_ID_VALUE : public TpmEnum<UINT16>
{
TPM_ENUM_PROLOGUE(ALG_ID_VALUE)
/// <summary> should not occur </summary>
ERROR_VALUE = 0x0000,
/// <summary> an object type that contains an RSA key </summary>
FIRST_VALUE = 0x0001,
/// <summary> an object type that contains an RSA key </summary>
RSA_VALUE = 0x0001,
/// <summary> block cipher with various key sizes (Triple Data Encryption Algorithm, commonly called Triple Data Encryption Standard) </summary>
TDES_VALUE = 0x0003,
/// <summary> hash algorithm producing a 160-bit digest </summary>
SHA_VALUE = 0x0004,
/// <summary> redefinition for documentation consistency </summary>
SHA1_VALUE = 0x0004,
/// <summary> Hash Message Authentication Code (HMAC) algorithm </summary>
HMAC_VALUE = 0x0005,
/// <summary> block cipher with various key sizes </summary>
AES_VALUE = 0x0006,
/// <summary> hash-based mask-generation function </summary>
MGF1_VALUE = 0x0007,
/// <summary> an object type that may use XOR for encryption or an HMAC for signing and may also refer to a data object that is neither signing nor encrypting </summary>
KEYEDHASH_VALUE = 0x0008,
/// <summary> hash-based stream cipher </summary>
XOR_VALUE = 0x000A,
/// <summary> hash algorithm producing a 256-bit digest </summary>
SHA256_VALUE = 0x000B,
/// <summary> hash algorithm producing a 384-bit digest </summary>
SHA384_VALUE = 0x000C,
/// <summary> hash algorithm producing a 512-bit digest </summary>
SHA512_VALUE = 0x000D,
/// <summary> Indication that no algorithm is selected </summary>
NULL_VALUE = 0x0010,
/// <summary> hash algorithm producing a 256-bit digest </summary>
SM3_256_VALUE = 0x0012,
/// <summary> symmetric block cipher with 128 bit key </summary>
SM4_VALUE = 0x0013,
/// <summary> a signature algorithm defined in section 8.2 (RSASSA-PKCS1-v1_5) </summary>
RSASSA_VALUE = 0x0014,
/// <summary> a padding algorithm defined in section 7.2 (RSAES-PKCS1-v1_5) </summary>
RSAES_VALUE = 0x0015,
/// <summary> a signature algorithm defined in section 8.1 (RSASSA-PSS) </summary>
RSAPSS_VALUE = 0x0016,
/// <summary> a padding algorithm defined in Section 7.1 (RSAES_OAEP) </summary>
OAEP_VALUE = 0x0017,
/// <summary> signature algorithm using elliptic curve cryptography (ECC) </summary>
ECDSA_VALUE = 0x0018,
/// <summary> secret sharing using ECC Based on context, this can be either One-Pass Diffie-Hellman, C(1, 1, ECC CDH) defined in 6.2.2.2 or Full Unified Model C(2, 2, ECC CDH) defined in 6.1.1.2 </summary>
ECDH_VALUE = 0x0019,
/// <summary> elliptic-curve based, anonymous signing scheme </summary>
ECDAA_VALUE = 0x001A,
/// <summary> depending on context, either an elliptic-curve-based signature algorithm, encryption algorithm, or key exchange protocol </summary>
SM2_VALUE = 0x001B,
/// <summary> elliptic-curve based Schnorr signature </summary>
ECSCHNORR_VALUE = 0x001C,
/// <summary> two-phase elliptic-curve key exchange C(2, 2, ECC MQV) Section 6.1.1.4 </summary>
ECMQV_VALUE = 0x001D,
/// <summary> concatenation key derivation function (approved alternative 1) Section 5.8.1 </summary>
KDF1_SP800_56A_VALUE = 0x0020,
/// <summary> key derivation function KDF2 Section 13.2 </summary>
KDF2_VALUE = 0x0021,
/// <summary> a key derivation method SP800-108, Section 5.1 KDF in Counter Mode </summary>
KDF1_SP800_108_VALUE = 0x0022,
/// <summary> prime field ECC </summary>
ECC_VALUE = 0x0023,
/// <summary> the object type for a symmetric block cipher key </summary>
SYMCIPHER_VALUE = 0x0025,
/// <summary> symmetric block cipher with various key sizes </summary>
CAMELLIA_VALUE = 0x0026,
/// <summary> Hash algorithm producing a 256-bit digest </summary>
SHA3_256_VALUE = 0x0027,
/// <summary> Hash algorithm producing a 384-bit digest </summary>
SHA3_384_VALUE = 0x0028,
/// <summary> Hash algorithm producing a 512-bit digest </summary>
SHA3_512_VALUE = 0x0029,
CMAC_VALUE = 0x003F,
/// <summary> Counter mode if implemented, all symmetric block ciphers (S type) implemented shall be capable of using this mode. </summary>
CTR_VALUE = 0x0040,
/// <summary> Output Feedback mode if implemented, all symmetric block ciphers (S type) implemented shall be capable of using this mode. </summary>
OFB_VALUE = 0x0041,
/// <summary> Cipher Block Chaining mode if implemented, all symmetric block ciphers (S type) implemented shall be capable of using this mode. </summary>
CBC_VALUE = 0x0042,
/// <summary> Cipher Feedback mode if implemented, all symmetric block ciphers (S type) implemented shall be capable of using this mode. </summary>
CFB_VALUE = 0x0043,
/// <summary>
/// Electronic Codebook mode if implemented, all implemented symmetric block ciphers (S type) shall be capable of using this mode.
/// NOTE This mode is not recommended for uses unless the key is frequently rotated such as in video codecs
/// </summary>
ECB_VALUE = 0x0044,
LAST_VALUE = 0x0044,
/// <summary> Phony alg ID to be used for the first union member with no selector </summary>
ANY_VALUE = 0x7FFF,
/// <summary> Phony alg ID to be used for the second union member with no selector </summary>
ANY2_VALUE = 0x7FFE
TPM_ENUM_EPILOGUE(ALG_ID_VALUE)
};
/// <summary> This table contains a collection of values used in various parts of the reference code. The values shown are illustrative. </summary>
struct Implementation : public TpmEnum<UINT32>
{
@ -2108,7 +2206,7 @@ struct Implementation : public TpmEnum<UINT32>
/// context encryption algorithm
/// Just use the root so that the macros in GpMacros.h will work correctly.
/// </summary>
CONTEXT_ENCRYPT_ALGORITHM = 0x6/*ALG_ID_VALUE::AES_VALUE*/,
CONTEXT_ENCRYPT_ALGORITHM = ALG_ID_VALUE::AES_VALUE,
/// <summary>
/// the update interval expressed as a power of 2 seconds
/// A value of 12 is 4,096 seconds (~68 minutes).
@ -2215,104 +2313,6 @@ struct TPM_HC : public TpmEnum<UINT32>
TPM_ENUM_EPILOGUE(TPM_HC)
};
/// <summary> Proxy constants for TPM_ALG_ID enum </summary>
struct ALG_ID_VALUE : public TpmEnum<UINT16>
{
TPM_ENUM_PROLOGUE(ALG_ID_VALUE)
/// <summary> should not occur </summary>
ERROR_VALUE = 0x0000,
/// <summary> an object type that contains an RSA key </summary>
FIRST_VALUE = 0x0001,
/// <summary> an object type that contains an RSA key </summary>
RSA_VALUE = 0x0001,
/// <summary> block cipher with various key sizes (Triple Data Encryption Algorithm, commonly called Triple Data Encryption Standard) </summary>
TDES_VALUE = 0x0003,
/// <summary> hash algorithm producing a 160-bit digest </summary>
SHA_VALUE = 0x0004,
/// <summary> redefinition for documentation consistency </summary>
SHA1_VALUE = 0x0004,
/// <summary> Hash Message Authentication Code (HMAC) algorithm </summary>
HMAC_VALUE = 0x0005,
/// <summary> block cipher with various key sizes </summary>
AES_VALUE = 0x0006,
/// <summary> hash-based mask-generation function </summary>
MGF1_VALUE = 0x0007,
/// <summary> an object type that may use XOR for encryption or an HMAC for signing and may also refer to a data object that is neither signing nor encrypting </summary>
KEYEDHASH_VALUE = 0x0008,
/// <summary> hash-based stream cipher </summary>
XOR_VALUE = 0x000A,
/// <summary> hash algorithm producing a 256-bit digest </summary>
SHA256_VALUE = 0x000B,
/// <summary> hash algorithm producing a 384-bit digest </summary>
SHA384_VALUE = 0x000C,
/// <summary> hash algorithm producing a 512-bit digest </summary>
SHA512_VALUE = 0x000D,
/// <summary> Indication that no algorithm is selected </summary>
NULL_VALUE = 0x0010,
/// <summary> hash algorithm producing a 256-bit digest </summary>
SM3_256_VALUE = 0x0012,
/// <summary> symmetric block cipher with 128 bit key </summary>
SM4_VALUE = 0x0013,
/// <summary> a signature algorithm defined in section 8.2 (RSASSA-PKCS1-v1_5) </summary>
RSASSA_VALUE = 0x0014,
/// <summary> a padding algorithm defined in section 7.2 (RSAES-PKCS1-v1_5) </summary>
RSAES_VALUE = 0x0015,
/// <summary> a signature algorithm defined in section 8.1 (RSASSA-PSS) </summary>
RSAPSS_VALUE = 0x0016,
/// <summary> a padding algorithm defined in Section 7.1 (RSAES_OAEP) </summary>
OAEP_VALUE = 0x0017,
/// <summary> signature algorithm using elliptic curve cryptography (ECC) </summary>
ECDSA_VALUE = 0x0018,
/// <summary> secret sharing using ECC Based on context, this can be either One-Pass Diffie-Hellman, C(1, 1, ECC CDH) defined in 6.2.2.2 or Full Unified Model C(2, 2, ECC CDH) defined in 6.1.1.2 </summary>
ECDH_VALUE = 0x0019,
/// <summary> elliptic-curve based, anonymous signing scheme </summary>
ECDAA_VALUE = 0x001A,
/// <summary> depending on context, either an elliptic-curve-based signature algorithm, encryption algorithm, or key exchange protocol </summary>
SM2_VALUE = 0x001B,
/// <summary> elliptic-curve based Schnorr signature </summary>
ECSCHNORR_VALUE = 0x001C,
/// <summary> two-phase elliptic-curve key exchange C(2, 2, ECC MQV) Section 6.1.1.4 </summary>
ECMQV_VALUE = 0x001D,
/// <summary> concatenation key derivation function (approved alternative 1) Section 5.8.1 </summary>
KDF1_SP800_56A_VALUE = 0x0020,
/// <summary> key derivation function KDF2 Section 13.2 </summary>
KDF2_VALUE = 0x0021,
/// <summary> a key derivation method SP800-108, Section 5.1 KDF in Counter Mode </summary>
KDF1_SP800_108_VALUE = 0x0022,
/// <summary> prime field ECC </summary>
ECC_VALUE = 0x0023,
/// <summary> the object type for a symmetric block cipher key </summary>
SYMCIPHER_VALUE = 0x0025,
/// <summary> symmetric block cipher with various key sizes </summary>
CAMELLIA_VALUE = 0x0026,
/// <summary> Hash algorithm producing a 256-bit digest </summary>
SHA3_256_VALUE = 0x0027,
/// <summary> Hash algorithm producing a 384-bit digest </summary>
SHA3_384_VALUE = 0x0028,
/// <summary> Hash algorithm producing a 512-bit digest </summary>
SHA3_512_VALUE = 0x0029,
CMAC_VALUE = 0x003F,
/// <summary> Counter mode if implemented, all symmetric block ciphers (S type) implemented shall be capable of using this mode. </summary>
CTR_VALUE = 0x0040,
/// <summary> Output Feedback mode if implemented, all symmetric block ciphers (S type) implemented shall be capable of using this mode. </summary>
OFB_VALUE = 0x0041,
/// <summary> Cipher Block Chaining mode if implemented, all symmetric block ciphers (S type) implemented shall be capable of using this mode. </summary>
CBC_VALUE = 0x0042,
/// <summary> Cipher Feedback mode if implemented, all symmetric block ciphers (S type) implemented shall be capable of using this mode. </summary>
CFB_VALUE = 0x0043,
/// <summary>
/// Electronic Codebook mode if implemented, all implemented symmetric block ciphers (S type) shall be capable of using this mode.
/// NOTE This mode is not recommended for uses unless the key is frequently rotated such as in video codecs
/// </summary>
ECB_VALUE = 0x0044,
LAST_VALUE = 0x0044,
/// <summary> Phony alg ID to be used for the first union member with no selector </summary>
ANY_VALUE = 0x7FFF,
/// <summary> Phony alg ID to be used for the second union member with no selector </summary>
ANY2_VALUE = 0x7FFE
TPM_ENUM_EPILOGUE(ALG_ID_VALUE)
};
/// <summary> This structure defines the attributes of an algorithm. </summary>
struct TPMA_ALGORITHM : public TpmEnum<UINT32>
{

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Просмотреть файл

@ -1,168 +1,167 @@
/*
This file contains source-code snippets that the code-generator inserts into the
appropriate class definition file.
*/
>> TPM_HANDLE
/**
* Represents TPM_RH.NULL handle constant
*/
public static readonly NULL: TPM_HANDLE = new TPM_HANDLE(TPM_RH.NULL);
/**
* Authorization value associated with this handle object.
*/
public authValue: Buffer = null;
/**
* Name of the TPM entity represented by this handle object.
*/
public name: Buffer = null;
/**
* Creates a TPM handle from an arbitrary int value
*
* @param val An int value to be used as a TPM handle
* @return New TPM_HANDLE object
*/
public static from(val: number): TPM_HANDLE
{
return new TPM_HANDLE(val);
}
/**
* Creates a TPM_HANDLE from an offset into the reserved handle space
*
* @param handleOffset The reserved handle offset
* @return The new TPM_HANDLE
*/
public static persistent(handleOffset: number): TPM_HANDLE
{
return new TPM_HANDLE((TPM_HT.PERSISTENT << 24) + handleOffset);
};
/**
* Creates a TPM_HANDLE object for a PCR
*
* @param PcrIndex The PCR index
* @return The new TPM_HANDLE
*/
public static pcr(pcrIndex: number): TPM_HANDLE
{
return new TPM_HANDLE(pcrIndex);
}
/**
* Creates a TPM_HANDLE for an NV slot
*
* @param NvSlot The NV index
* @return The new TPM_HANDLE
*/
public static nv(nvIndex: number): TPM_HANDLE
{
return new TPM_HANDLE((TPM_HT.NV_INDEX << 24) + nvIndex);
};
/**
* Creates a password session handle with the associated authorization value
*
* @param authValue The authorization value
* @return The new TPM_HANDLE
*/
public static pwSession(authValue: Buffer): TPM_HANDLE
{
let pwapHandle: TPM_HANDLE = new TPM_HANDLE(TPM_RH.RS_PW);
pwapHandle.authValue = authValue;
return pwapHandle;
}
/**
* Returns the handle type
*
* @return The handle type
*/
public getType(): TPM_HT
{
return (this.handle >> 24) as TPM_HT;
};
/**
* Gets the TPM-name associated with this handle
*
* @return The name
*/
public getName(): Buffer
{
switch (this.getType())
{
case 0:
case 2:
case 3:
case 0x40:
this.name = this.asTpm();
return this.name;
case 1:
case 0x80:
case 0x81:
return this.name;
default:
throw new Error("TPM_HANDLE.getName(): Unknown handle type");
}
}
>> TPMT_PUBLIC
/**
* Returns the TPM name of this object. The name is the alg-prepended hash of the public area.
*
* @return The TPM object name
*/
public getName(): Buffer
{
let pub = super.asTpm();
let pubHash = Crypto.hash(this.nameAlg, pub);
let algBuf = new Buffer(2);
algBuf.writeInt16BE(this.nameAlg, 0);
return Buffer.concat([algBuf, pubHash]);
}
>> TPMT_TK_HASHCHECK
/**
* Create a NULL ticket (e.g. used for signing data with non-restricted keys)
*
* @return The null ticket
*/
public static nullTicket(): TPMT_TK_HASHCHECK
{
let t = new TPMT_TK_HASHCHECK();
t.tag = TPM_ST.HASHCHECK;
t.hierarchy = TPM_HANDLE.from(TPM_RH.OWNER);
return t;
}
>> TPMT_SYM_DEF
/**
* Create a NULL TPMT_SYM_DEF object
*
* @return The null object
*/
public static nullObject(): TPMT_SYM_DEF
{
return new TPMT_SYM_DEF(TPM_ALG_ID.NULL, 0, TPM_ALG_ID.NULL);
}
>> TPMT_SYM_DEF_OBJECT
/**
* Create a NULL TPMT_SYM_DEF_OBJECT object
*
* @return The null object
*/
public static nullObject(): TPMT_SYM_DEF_OBJECT
{
return new TPMT_SYM_DEF_OBJECT(TPM_ALG_ID.NULL, 0, TPM_ALG_ID.NULL);
}
/*
This file contains source-code snippets that the code-generator inserts into the
appropriate class definition file.
*/
>> TPM_HANDLE
/**
* Represents TPM_RH.NULL handle constant
*/
public static readonly NULL: TPM_HANDLE = new TPM_HANDLE(TPM_RH.NULL);
/**
* Authorization value associated with this handle object.
*/
public authValue: Buffer = null;
/**
* Name of the TPM entity represented by this handle object.
*/
public name: Buffer = null;
/**
* Creates a TPM handle from an arbitrary int value
*
* @param val An int value to be used as a TPM handle
* @return New TPM_HANDLE object
*/
public static from(val: number): TPM_HANDLE
{
return new TPM_HANDLE(val);
}
/**
* Creates a TPM_HANDLE from an offset into the reserved handle space
*
* @param handleOffset The reserved handle offset
* @return The new TPM_HANDLE
*/
public static persistent(handleOffset: number): TPM_HANDLE
{
return new TPM_HANDLE((TPM_HT.PERSISTENT << 24) + handleOffset);
};
/**
* Creates a TPM_HANDLE object for a PCR
*
* @param PcrIndex The PCR index
* @return The new TPM_HANDLE
*/
public static pcr(pcrIndex: number): TPM_HANDLE
{
return new TPM_HANDLE(pcrIndex);
}
/**
* Creates a TPM_HANDLE for an NV slot
*
* @param NvSlot The NV index
* @return The new TPM_HANDLE
*/
public static nv(nvIndex: number): TPM_HANDLE
{
return new TPM_HANDLE((TPM_HT.NV_INDEX << 24) + nvIndex);
};
/**
* Creates a password session handle with the associated authorization value
*
* @param authValue The authorization value
* @return The new TPM_HANDLE
*/
public static pwSession(authValue: Buffer): TPM_HANDLE
{
let pwapHandle: TPM_HANDLE = new TPM_HANDLE(TPM_RH.RS_PW);
pwapHandle.authValue = authValue;
return pwapHandle;
}
/**
* Returns the handle type
*
* @return The handle type
*/
public getType(): TPM_HT
{
return (this.handle >> 24) as TPM_HT;
};
/**
* Gets the TPM-name associated with this handle
*
* @return The name
*/
public getName(): Buffer
{
switch (this.getType())
{
case 0:
case 2:
case 3:
case 0x40:
this.name = this.asTpm();
return this.name;
case 1:
case 0x80:
case 0x81:
return this.name;
default:
throw new Error("TPM_HANDLE.getName(): Unknown handle type");
}
}
>> TPMT_PUBLIC
/**
* Returns the TPM name of this object. The name is the alg-prepended hash of the public area.
*
* @return The TPM object name
*/
public getName(): Buffer
{
let pub = super.asTpm();
let pubHash = Crypto.hash(this.nameAlg, pub);
let algBuf = new Buffer(2);
algBuf.writeInt16BE(this.nameAlg, 0);
return Buffer.concat([algBuf, pubHash]);
}
>> TPMT_TK_HASHCHECK
/**
* Create a NULL ticket (e.g. used for signing data with non-restricted keys)
*
* @return The null ticket
*/
public static nullTicket(): TPMT_TK_HASHCHECK
{
let t = new TPMT_TK_HASHCHECK();
t.hierarchy = TPM_HANDLE.from(TPM_RH.OWNER);
return t;
}
>> TPMT_SYM_DEF
/**
* Create a NULL TPMT_SYM_DEF object
*
* @return The null object
*/
public static nullObject(): TPMT_SYM_DEF
{
return new TPMT_SYM_DEF(TPM_ALG_ID.NULL, 0, TPM_ALG_ID.NULL);
}
>> TPMT_SYM_DEF_OBJECT
/**
* Create a NULL TPMT_SYM_DEF_OBJECT object
*
* @return The null object
*/
public static nullObject(): TPMT_SYM_DEF_OBJECT
{
return new TPMT_SYM_DEF_OBJECT(TPM_ALG_ID.NULL, 0, TPM_ALG_ID.NULL);
}

Просмотреть файл

@ -2754,6 +2754,231 @@ export enum PLATFORM // UINT32
DAY_OF_YEAR = TPM_SPEC.DAY_OF_YEAR
}; // enum PLATFORM
/**
* Proxy constants for TPM_ALG_ID enum
*/
export enum ALG_ID_VALUE // UINT16
{
/**
* should not occur
*/
ERROR_VALUE = 0x0000,
/**
* an object type that contains an RSA key
*/
FIRST_VALUE = 0x0001,
/**
* an object type that contains an RSA key
*/
RSA_VALUE = 0x0001,
/**
* block cipher with various key sizes (Triple Data Encryption Algorithm, commonly called Triple Data Encryption Standard)
*/
TDES_VALUE = 0x0003,
/**
* hash algorithm producing a 160-bit digest
*/
SHA_VALUE = 0x0004,
/**
* redefinition for documentation consistency
*/
SHA1_VALUE = 0x0004,
/**
* Hash Message Authentication Code (HMAC) algorithm
*/
HMAC_VALUE = 0x0005,
/**
* block cipher with various key sizes
*/
AES_VALUE = 0x0006,
/**
* hash-based mask-generation function
*/
MGF1_VALUE = 0x0007,
/**
* an object type that may use XOR for encryption or an HMAC for signing and may also refer to a data object that is neither signing nor encrypting
*/
KEYEDHASH_VALUE = 0x0008,
/**
* hash-based stream cipher
*/
XOR_VALUE = 0x000A,
/**
* hash algorithm producing a 256-bit digest
*/
SHA256_VALUE = 0x000B,
/**
* hash algorithm producing a 384-bit digest
*/
SHA384_VALUE = 0x000C,
/**
* hash algorithm producing a 512-bit digest
*/
SHA512_VALUE = 0x000D,
/**
* Indication that no algorithm is selected
*/
NULL_VALUE = 0x0010,
/**
* hash algorithm producing a 256-bit digest
*/
SM3_256_VALUE = 0x0012,
/**
* symmetric block cipher with 128 bit key
*/
SM4_VALUE = 0x0013,
/**
* a signature algorithm defined in section 8.2 (RSASSA-PKCS1-v1_5)
*/
RSASSA_VALUE = 0x0014,
/**
* a padding algorithm defined in section 7.2 (RSAES-PKCS1-v1_5)
*/
RSAES_VALUE = 0x0015,
/**
* a signature algorithm defined in section 8.1 (RSASSA-PSS)
*/
RSAPSS_VALUE = 0x0016,
/**
* a padding algorithm defined in Section 7.1 (RSAES_OAEP)
*/
OAEP_VALUE = 0x0017,
/**
* signature algorithm using elliptic curve cryptography (ECC)
*/
ECDSA_VALUE = 0x0018,
/**
* secret sharing using ECC Based on context, this can be either One-Pass Diffie-Hellman, C(1, 1, ECC CDH) defined in 6.2.2.2 or Full Unified Model C(2, 2, ECC CDH) defined in 6.1.1.2
*/
ECDH_VALUE = 0x0019,
/**
* elliptic-curve based, anonymous signing scheme
*/
ECDAA_VALUE = 0x001A,
/**
* depending on context, either an elliptic-curve-based signature algorithm, encryption algorithm, or key exchange protocol
*/
SM2_VALUE = 0x001B,
/**
* elliptic-curve based Schnorr signature
*/
ECSCHNORR_VALUE = 0x001C,
/**
* two-phase elliptic-curve key exchange C(2, 2, ECC MQV) Section 6.1.1.4
*/
ECMQV_VALUE = 0x001D,
/**
* concatenation key derivation function (approved alternative 1) Section 5.8.1
*/
KDF1_SP800_56A_VALUE = 0x0020,
/**
* key derivation function KDF2 Section 13.2
*/
KDF2_VALUE = 0x0021,
/**
* a key derivation method SP800-108, Section 5.1 KDF in Counter Mode
*/
KDF1_SP800_108_VALUE = 0x0022,
/**
* prime field ECC
*/
ECC_VALUE = 0x0023,
/**
* the object type for a symmetric block cipher key
*/
SYMCIPHER_VALUE = 0x0025,
/**
* symmetric block cipher with various key sizes
*/
CAMELLIA_VALUE = 0x0026,
/**
* Hash algorithm producing a 256-bit digest
*/
SHA3_256_VALUE = 0x0027,
/**
* Hash algorithm producing a 384-bit digest
*/
SHA3_384_VALUE = 0x0028,
/**
* Hash algorithm producing a 512-bit digest
*/
SHA3_512_VALUE = 0x0029,
CMAC_VALUE = 0x003F,
/**
* Counter mode if implemented, all symmetric block ciphers (S type) implemented shall be capable of using this mode.
*/
CTR_VALUE = 0x0040,
/**
* Output Feedback mode if implemented, all symmetric block ciphers (S type) implemented shall be capable of using this mode.
*/
OFB_VALUE = 0x0041,
/**
* Cipher Block Chaining mode if implemented, all symmetric block ciphers (S type) implemented shall be capable of using this mode.
*/
CBC_VALUE = 0x0042,
/**
* Cipher Feedback mode if implemented, all symmetric block ciphers (S type) implemented shall be capable of using this mode.
*/
CFB_VALUE = 0x0043,
/**
* Electronic Codebook mode if implemented, all implemented symmetric block ciphers (S type) shall be capable of using this mode. NOTE This mode is not recommended for uses unless the key is frequently rotated such as in video codecs
*/
ECB_VALUE = 0x0044,
LAST_VALUE = 0x0044,
/**
* Phony alg ID to be used for the first union member with no selector
*/
ANY_VALUE = 0x7FFF,
/**
* Phony alg ID to be used for the second union member with no selector
*/
ANY2_VALUE = 0x7FFE
}; // enum ALG_ID_VALUE
/**
* This table contains a collection of values used in various parts of the reference code. The values shown are illustrative.
*/
@ -2892,7 +3117,7 @@ export enum Implementation // UINT32
/**
* context encryption algorithm Just use the root so that the macros in GpMacros.h will work correctly.
*/
CONTEXT_ENCRYPT_ALGORITHM = 0x0006,
CONTEXT_ENCRYPT_ALGORITHM = ALG_ID_VALUE.AES_VALUE,
/**
* the update interval expressed as a power of 2 seconds A value of 12 is 4,096 seconds (~68 minutes).
@ -3118,231 +3343,6 @@ export enum TPM_HC // TPM_HANDLE
AC_LAST = (TPM_HC.HR_AC + 0x0000FFFF)
}; // enum TPM_HC
/**
* Proxy constants for TPM_ALG_ID enum
*/
export enum ALG_ID_VALUE // UINT16
{
/**
* should not occur
*/
ERROR_VALUE = 0x0000,
/**
* an object type that contains an RSA key
*/
FIRST_VALUE = 0x0001,
/**
* an object type that contains an RSA key
*/
RSA_VALUE = 0x0001,
/**
* block cipher with various key sizes (Triple Data Encryption Algorithm, commonly called Triple Data Encryption Standard)
*/
TDES_VALUE = 0x0003,
/**
* hash algorithm producing a 160-bit digest
*/
SHA_VALUE = 0x0004,
/**
* redefinition for documentation consistency
*/
SHA1_VALUE = 0x0004,
/**
* Hash Message Authentication Code (HMAC) algorithm
*/
HMAC_VALUE = 0x0005,
/**
* block cipher with various key sizes
*/
AES_VALUE = 0x0006,
/**
* hash-based mask-generation function
*/
MGF1_VALUE = 0x0007,
/**
* an object type that may use XOR for encryption or an HMAC for signing and may also refer to a data object that is neither signing nor encrypting
*/
KEYEDHASH_VALUE = 0x0008,
/**
* hash-based stream cipher
*/
XOR_VALUE = 0x000A,
/**
* hash algorithm producing a 256-bit digest
*/
SHA256_VALUE = 0x000B,
/**
* hash algorithm producing a 384-bit digest
*/
SHA384_VALUE = 0x000C,
/**
* hash algorithm producing a 512-bit digest
*/
SHA512_VALUE = 0x000D,
/**
* Indication that no algorithm is selected
*/
NULL_VALUE = 0x0010,
/**
* hash algorithm producing a 256-bit digest
*/
SM3_256_VALUE = 0x0012,
/**
* symmetric block cipher with 128 bit key
*/
SM4_VALUE = 0x0013,
/**
* a signature algorithm defined in section 8.2 (RSASSA-PKCS1-v1_5)
*/
RSASSA_VALUE = 0x0014,
/**
* a padding algorithm defined in section 7.2 (RSAES-PKCS1-v1_5)
*/
RSAES_VALUE = 0x0015,
/**
* a signature algorithm defined in section 8.1 (RSASSA-PSS)
*/
RSAPSS_VALUE = 0x0016,
/**
* a padding algorithm defined in Section 7.1 (RSAES_OAEP)
*/
OAEP_VALUE = 0x0017,
/**
* signature algorithm using elliptic curve cryptography (ECC)
*/
ECDSA_VALUE = 0x0018,
/**
* secret sharing using ECC Based on context, this can be either One-Pass Diffie-Hellman, C(1, 1, ECC CDH) defined in 6.2.2.2 or Full Unified Model C(2, 2, ECC CDH) defined in 6.1.1.2
*/
ECDH_VALUE = 0x0019,
/**
* elliptic-curve based, anonymous signing scheme
*/
ECDAA_VALUE = 0x001A,
/**
* depending on context, either an elliptic-curve-based signature algorithm, encryption algorithm, or key exchange protocol
*/
SM2_VALUE = 0x001B,
/**
* elliptic-curve based Schnorr signature
*/
ECSCHNORR_VALUE = 0x001C,
/**
* two-phase elliptic-curve key exchange C(2, 2, ECC MQV) Section 6.1.1.4
*/
ECMQV_VALUE = 0x001D,
/**
* concatenation key derivation function (approved alternative 1) Section 5.8.1
*/
KDF1_SP800_56A_VALUE = 0x0020,
/**
* key derivation function KDF2 Section 13.2
*/
KDF2_VALUE = 0x0021,
/**
* a key derivation method SP800-108, Section 5.1 KDF in Counter Mode
*/
KDF1_SP800_108_VALUE = 0x0022,
/**
* prime field ECC
*/
ECC_VALUE = 0x0023,
/**
* the object type for a symmetric block cipher key
*/
SYMCIPHER_VALUE = 0x0025,
/**
* symmetric block cipher with various key sizes
*/
CAMELLIA_VALUE = 0x0026,
/**
* Hash algorithm producing a 256-bit digest
*/
SHA3_256_VALUE = 0x0027,
/**
* Hash algorithm producing a 384-bit digest
*/
SHA3_384_VALUE = 0x0028,
/**
* Hash algorithm producing a 512-bit digest
*/
SHA3_512_VALUE = 0x0029,
CMAC_VALUE = 0x003F,
/**
* Counter mode if implemented, all symmetric block ciphers (S type) implemented shall be capable of using this mode.
*/
CTR_VALUE = 0x0040,
/**
* Output Feedback mode if implemented, all symmetric block ciphers (S type) implemented shall be capable of using this mode.
*/
OFB_VALUE = 0x0041,
/**
* Cipher Block Chaining mode if implemented, all symmetric block ciphers (S type) implemented shall be capable of using this mode.
*/
CBC_VALUE = 0x0042,
/**
* Cipher Feedback mode if implemented, all symmetric block ciphers (S type) implemented shall be capable of using this mode.
*/
CFB_VALUE = 0x0043,
/**
* Electronic Codebook mode if implemented, all implemented symmetric block ciphers (S type) shall be capable of using this mode. NOTE This mode is not recommended for uses unless the key is frequently rotated such as in video codecs
*/
ECB_VALUE = 0x0044,
LAST_VALUE = 0x0044,
/**
* Phony alg ID to be used for the first union member with no selector
*/
ANY_VALUE = 0x7FFF,
/**
* Phony alg ID to be used for the second union member with no selector
*/
ANY2_VALUE = 0x7FFE
}; // enum ALG_ID_VALUE
/**
* This structure defines the attributes of an algorithm.
*/
@ -4719,10 +4719,6 @@ export class TPMS_PCR_SELECTION extends TpmStructure
export class TPMT_TK_CREATION extends TpmStructure
{
constructor(
/**
* ticket structure tag
*/
public tag: TPM_ST = 0,
/**
* the hierarchy containing name
*/
@ -4736,7 +4732,7 @@ export class TPMT_TK_CREATION extends TpmStructure
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void
{
buf.toTpm(this.tag, 2);
buf.toTpm(TPM_ST.CREATION, 2);
this.hierarchy.toTpm(buf);
buf.toTpm2B(this.digest);
}
@ -4744,7 +4740,7 @@ export class TPMT_TK_CREATION extends TpmStructure
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
{
this.tag = buf.fromTpm(2);
buf.fromTpm(2);
this.hierarchy = buf.createFromTpm(TPM_HANDLE);
this.digest = buf.fromTpm2B(2);
}
@ -4756,10 +4752,6 @@ export class TPMT_TK_CREATION extends TpmStructure
export class TPMT_TK_VERIFIED extends TpmStructure
{
constructor(
/**
* ticket structure tag
*/
public tag: TPM_ST = 0,
/**
* the hierarchy containing keyName
*/
@ -4773,7 +4765,7 @@ export class TPMT_TK_VERIFIED extends TpmStructure
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void
{
buf.toTpm(this.tag, 2);
buf.toTpm(TPM_ST.VERIFIED, 2);
this.hierarchy.toTpm(buf);
buf.toTpm2B(this.digest);
}
@ -4781,7 +4773,7 @@ export class TPMT_TK_VERIFIED extends TpmStructure
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
{
this.tag = buf.fromTpm(2);
buf.fromTpm(2);
this.hierarchy = buf.createFromTpm(TPM_HANDLE);
this.digest = buf.fromTpm2B(2);
}
@ -4830,10 +4822,6 @@ export class TPMT_TK_AUTH extends TpmStructure
export class TPMT_TK_HASHCHECK extends TpmStructure
{
constructor(
/**
* ticket structure tag
*/
public tag: TPM_ST = 0,
/**
* the hierarchy
*/
@ -4847,7 +4835,7 @@ export class TPMT_TK_HASHCHECK extends TpmStructure
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void
{
buf.toTpm(this.tag, 2);
buf.toTpm(TPM_ST.HASHCHECK, 2);
this.hierarchy.toTpm(buf);
buf.toTpm2B(this.digest);
}
@ -4855,7 +4843,7 @@ export class TPMT_TK_HASHCHECK extends TpmStructure
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
{
this.tag = buf.fromTpm(2);
buf.fromTpm(2);
this.hierarchy = buf.createFromTpm(TPM_HANDLE);
this.digest = buf.fromTpm2B(2);
}
@ -4867,7 +4855,6 @@ export class TPMT_TK_HASHCHECK extends TpmStructure
public static nullTicket(): TPMT_TK_HASHCHECK
{
let t = new TPMT_TK_HASHCHECK();
t.tag = TPM_ST.HASHCHECK;
t.hierarchy = TPM_HANDLE.from(TPM_RH.OWNER);
return t;
}
@ -5643,7 +5630,7 @@ export class TPMS_NV_CERTIFY_INFO extends TpmStructure implements TPMU_ATTEST
/**
* the offset parameter of TPM2_NV_Certify()
*/
public offset: number = 0,
public offset: short = 0,
/**
* contents of the NV Index
*/
@ -6044,7 +6031,7 @@ export class TPMT_SYM_DEF extends TpmStructure
/**
* key size in bits
*/
public keyBits: number = 0,
public keyBits: short = 0,
/**
* encryption mode
*/
@ -6081,7 +6068,7 @@ export class TPMT_SYM_DEF_OBJECT extends TpmStructure
/**
* key size in bits
*/
public keyBits: number = 0,
public keyBits: short = 0,
/**
* encryption mode
*/
@ -6328,7 +6315,7 @@ export class TPMS_SCHEME_ECDAA extends TpmStructure implements TPMU_SIG_SCHEME,
/**
* the counter value that is used between TPM2_Commit() and the sign operation
*/
public count: number = 0
public count: short = 0
) { super(); }
/** TpmUnion method */
@ -6573,7 +6560,7 @@ export class TPMS_SIG_SCHEME_ECDAA extends TPMS_SCHEME_ECDAA implements TPMU_SIG
/**
* the counter value that is used between TPM2_Commit() and the sign operation
*/
count: number = 0
count: short = 0
) { super(hashAlg,count); }
/** TpmUnion method */
@ -7108,7 +7095,7 @@ export class TPMS_ALGORITHM_DETAIL_ECC extends TpmStructure
/**
* Size in bits of the key
*/
public keySize: number = 0,
public keySize: short = 0,
/**
* if not TPM_ALG_NULL, the required KDF and hash algorithm used in secret sharing operations (One of TPMS_KDF_SCHEME_MGF1, TPMS_KDF_SCHEME_KDF1_SP800_56A, TPMS_KDF_SCHEME_KDF2, TPMS_KDF_SCHEME_KDF1_SP800_108, TPMS_SCHEME_HASH, TPMS_NULL_KDF_SCHEME)
*/
@ -7581,7 +7568,7 @@ export class TPMS_RSA_PARMS extends TpmStructure implements TPMU_PUBLIC_PARMS
/**
* number of bits in the public modulus
*/
public keyBits: number = 0,
public keyBits: short = 0,
/**
* the public exponent A prime number greater than 2.
*/
@ -8042,7 +8029,7 @@ export class TPMS_NV_PUBLIC extends TpmStructure
/**
* the size of the data area The maximum size is implementation-dependent. The minimum maximum size is platform-specific.
*/
public dataSize: number = 0
public dataSize: short = 0
) { super(); }
/** TpmMarshaller method */
@ -9067,7 +9054,10 @@ export class TPM2_ObjectChangeAuth_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm2B(this.newAuth); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm2B(this.newAuth);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -9597,7 +9587,10 @@ export class TPM2_ECDH_ZGen_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.sizedToTpm(this.inPoint, 2); }
toTpm(buf: TpmBuffer) : void
{
buf.sizedToTpm(this.inPoint, 2);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -9689,7 +9682,7 @@ export class TPM2_ZGen_2Phase_REQUEST extends TpmStructure
/**
* value returned by TPM2_EC_Ephemeral()
*/
public counter: number = 0
public counter: short = 0
) { super(); }
/** TpmMarshaller method */
@ -10234,7 +10227,7 @@ export class TPM2_GetRandom_REQUEST extends TpmStructure
/**
* number of octets to return
*/
public bytesRequested: number = 0
public bytesRequested: short = 0
) { super(); }
/** TpmMarshaller method */
@ -10467,7 +10460,10 @@ export class TPM2_SequenceUpdate_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm2B(this.buffer); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm2B(this.buffer);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -10573,7 +10569,10 @@ export class TPM2_EventSequenceComplete_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm2B(this.buffer); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm2B(this.buffer);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -11242,7 +11241,7 @@ export class CommitResponse extends TpmStructure
/**
* least-significant 16 bits of commitCount
*/
public counter: number = 0
public counter: short = 0
) { super(); }
/** TpmMarshaller method */
@ -11296,7 +11295,7 @@ export class EC_EphemeralResponse extends TpmStructure
/**
* least-significant 16 bits of commitCount
*/
public counter: number = 0
public counter: short = 0
) { super(); }
/** TpmMarshaller method */
@ -11512,7 +11511,10 @@ export class TPM2_PCR_Extend_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.arrayToTpm<TPMT_HA>(this.digests, 4); }
toTpm(buf: TpmBuffer) : void
{
buf.arrayToTpm<TPMT_HA>(this.digests, 4);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -11547,7 +11549,10 @@ export class TPM2_PCR_Event_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm2B(this.eventData); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm2B(this.eventData);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -11649,7 +11654,10 @@ export class TPM2_PCR_Allocate_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.arrayToTpm<TPMS_PCR_SELECTION>(this.pcrAllocation, 4); }
toTpm(buf: TpmBuffer) : void
{
buf.arrayToTpm<TPMS_PCR_SELECTION>(this.pcrAllocation, 4);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -11769,7 +11777,10 @@ export class TPM2_PCR_SetAuthValue_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm2B(this.auth); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm2B(this.auth);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -12067,7 +12078,10 @@ export class TPM2_PolicyOR_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.arrayToTpm<TPM2B_DIGEST>(this.pHashList, 4); }
toTpm(buf: TpmBuffer) : void
{
buf.arrayToTpm<TPM2B_DIGEST>(this.pHashList, 4);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -12146,7 +12160,10 @@ export class TPM2_PolicyLocality_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm(this.locality, 1); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm(this.locality, 1);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -12189,7 +12206,7 @@ export class TPM2_PolicyNV_REQUEST extends TpmStructure
/**
* the octet offset in the NV Index for the start of operand A
*/
public offset: number = 0,
public offset: short = 0,
/**
* the comparison to make
*/
@ -12241,7 +12258,7 @@ export class TPM2_PolicyCounterTimer_REQUEST extends TpmStructure
/**
* the octet offset in the TPMS_TIME_INFO structure for the start of operand A
*/
public offset: number = 0,
public offset: short = 0,
/**
* the comparison to make
*/
@ -12291,7 +12308,10 @@ export class TPM2_PolicyCommandCode_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm(this.code, 4); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm(this.code, 4);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -12350,7 +12370,10 @@ export class TPM2_PolicyCpHash_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm2B(this.cpHashA); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm2B(this.cpHashA);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -12385,7 +12408,10 @@ export class TPM2_PolicyNameHash_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm2B(this.nameHash); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm2B(this.nameHash);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -12609,7 +12635,10 @@ export class TPM2_PolicyNvWritten_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm(this.writtenSet, 1); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm(this.writtenSet, 1);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -12644,7 +12673,10 @@ export class TPM2_PolicyTemplate_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm2B(this.templateHash); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm2B(this.templateHash);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -12979,7 +13011,10 @@ export class TPM2_ClearControl_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm(this.disable, 1); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm(this.disable, 1);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -13014,7 +13049,10 @@ export class TPM2_HierarchyChangeAuth_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm2B(this.newAuth); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm2B(this.newAuth);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -13167,7 +13205,10 @@ export class TPM2_SetAlgorithmSet_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm(this.algorithmSet, 4); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm(this.algorithmSet, 4);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -13446,7 +13487,10 @@ export class TPM2_EvictControl_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { this.persistentHandle.toTpm(buf); }
toTpm(buf: TpmBuffer) : void
{
this.persistentHandle.toTpm(buf);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -13509,7 +13553,10 @@ export class TPM2_ClockSet_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm(this.newTime, 8); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm(this.newTime, 8);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -13544,7 +13591,10 @@ export class TPM2_ClockRateAdjust_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm(this.rateAdjust, 1); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm(this.rateAdjust, 1);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -13845,7 +13895,7 @@ export class TPM2_NV_Write_REQUEST extends TpmStructure
/**
* the octet offset into the NV Area
*/
public offset: number = 0
public offset: short = 0
) { super(); }
/** TpmMarshaller method */
@ -13926,7 +13976,10 @@ export class TPM2_NV_Extend_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm2B(this.data); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm2B(this.data);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -13966,7 +14019,10 @@ export class TPM2_NV_SetBits_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm(this.bits, 8); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm(this.bits, 8);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -14058,11 +14114,11 @@ export class TPM2_NV_Read_REQUEST extends TpmStructure
/**
* number of octets to read
*/
public size: number = 0,
public size: short = 0,
/**
* octet offset into the NV area This value shall be less than or equal to the size of the nvIndex data.
*/
public offset: number = 0
public offset: short = 0
) { super(); }
/** TpmMarshaller method */
@ -14150,7 +14206,10 @@ export class TPM2_NV_ChangeAuth_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm2B(this.newAuth); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm2B(this.newAuth);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -14197,11 +14256,11 @@ export class TPM2_NV_Certify_REQUEST extends TpmStructure
/**
* number of octets to certify
*/
public size: number = 0,
public size: short = 0,
/**
* octet offset into the NV area This value shall be less than or equal to the size of the nvIndex data.
*/
public offset: number = 0
public offset: short = 0
) { super(); }
/** TpmMarshaller method */
@ -14355,7 +14414,10 @@ export class TPM2_AC_Send_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm2B(this.acDataIn); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm2B(this.acDataIn);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void
@ -14459,7 +14521,10 @@ export class TPM2_ACT_SetTimeout_REQUEST extends TpmStructure
) { super(); }
/** TpmMarshaller method */
toTpm(buf: TpmBuffer) : void { buf.toTpm(this.startTimeout, 4); }
toTpm(buf: TpmBuffer) : void
{
buf.toTpm(this.startTimeout, 4);
}
/** TpmMarshaller method */
fromTpm(buf: TpmBuffer) : void

Просмотреть файл

@ -550,7 +550,7 @@ export function drsGetActivationBlob(tpm: Tpm, ekPubBlob: Buffer, srkPubBlob: Bu
// Run the policy command necessary for key duplication
tpm.PolicyCommandCode(hSess, tss.TPM_CC.Duplicate,
(err: TpmError, respPcc: tss.PolicyCommandCodeResponse) => {
(err: TpmError) => {
console.log('DRS >> PolicyCommandCode() returned ' + TPM_RC[tpm.lastResponseCode]);
// Retrieve the policy digest computed by the TPM

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Просмотреть файл

@ -218,21 +218,21 @@ public abstract class TpmBase implements Closeable
int outHandleCount,
TpmStructure inParms,
TpmStructure outParms)
{
try {
int numExplicitSessions = ExplicitSessionHandles==null? 0:ExplicitSessionHandles.length;
boolean haveSessions = (authHandleCount!=0) || (numExplicitSessions!=0);
{ try {
int numExplicitSessions = ExplicitSessionHandles == null ? 0 : ExplicitSessionHandles.length;
boolean haveSessions = authHandleCount != 0 || numExplicitSessions != 0;
OutByteBuf outBuf = new OutByteBuf();
int tag = haveSessions ? TPM_ST.SESSIONS.toInt() : TPM_ST.NO_SESSIONS.toInt();
// standard header {tag, length, commandCode}
outBuf.writeInt(tag, 2);
outBuf.writeInt(0, 4); // to be filled in later
outBuf.writeInt(command.toInt(),4);
// handles
for(int j=0;j<inHandles.length;j++)
{
outBuf.writeInt(inHandles[j].handle,4);
}
int numHandles = inHandles == null ? 0 : inHandles.length;
for (int j=0; j < numHandles; j++)
outBuf.writeInt(inHandles[j].handle, 4);
// Sessions.
// If sessions are provided explicitly, they will be used (and enough explicit sessions
@ -269,19 +269,19 @@ public abstract class TpmBase implements Closeable
{
// we have explicit sessions. The caller MUST provide enough sessions for everything that needs
// authorizing, but may provide more (e.g. encrypting or auditing sessions)
if(ExplicitSessionHandles.length < authHandleCount)
if (ExplicitSessionHandles.length < authHandleCount)
{
ExplicitSessionHandles = null;
throw new TpmException("Needed at least " + String.valueOf(authHandleCount) + " session handles, but only " +
String.valueOf(ExplicitSessionHandles.length) + " were provided");
}
for(int j=0;j<ExplicitSessionHandles.length;j++)
for (int j=0; j < ExplicitSessionHandles.length; j++)
{
TPM_HANDLE h = ExplicitSessionHandles[j];
TPMA_SESSION sessionAttributes = TPMA_SESSION.continueSession;
TPM_RH pwapHandle = TPM_RH.RS_PW;
if(h.handle == TPM_RH.RS_PW.toInt())
if (h.handle == TPM_RH.RS_PW.toInt())
{
boolean authMissing = inHandles[j].AuthValue==null;
int authValLen = authMissing? 0: inHandles[j].AuthValue.length;
@ -294,17 +294,17 @@ public abstract class TpmBase implements Closeable
continue;
}
switch(h.getType().asEnum())
switch (h.getType().asEnum())
{
case POLICY_SESSION:
sessionBuf.write(h.handle); // handle
sessionBuf.write(h.handle); // handle
sessionBuf.writeInt(0, 2); // zero length nonce (nonce is missing)
sessionBuf.write(sessionAttributes); // attributes
sessionBuf.writeInt(0, 2); // authLen = 0 (auth itself is missing)
sessionBuf.writeInt(0, 2); // authLen = 0 (auth itself is missing)
break;
default:
throw new RuntimeException("Unsupported handle type in session");
default:
throw new RuntimeException("Unsupported handle type in session");
}
}
ExplicitSessionHandles = null;
@ -319,7 +319,7 @@ public abstract class TpmBase implements Closeable
inParms.toTpm(parmsBuf);
// copy the parms (minus the handles) to the outBuf
outBuf.writeArrayFragment(parmsBuf.getBuf(), inHandles.length*4,parmsBuf.size() );
outBuf.writeArrayFragment(parmsBuf.getBuf(), numHandles * 4, parmsBuf.size() );
// fill in the length by making a new buf and copying stuff over (plus the length)
OutByteBuf finalBuf = new OutByteBuf();
@ -334,7 +334,7 @@ public abstract class TpmBase implements Closeable
TPM_ST respTag = TPM_ST.NULL;
int rawResponseCode = 0;
while(true)
while (true)
{
device.dispatchCommand(cBuf);
rBuf = device.getResponse();
@ -395,7 +395,7 @@ public abstract class TpmBase implements Closeable
}
// This should be fine, but just to check
if(respTag.toInt() != tag)
if (respTag.toInt() != tag)
{
throw new TpmException("Unexpected response tag " + respTag);
}
@ -406,7 +406,7 @@ public abstract class TpmBase implements Closeable
OutByteBuf respParmBuf = new OutByteBuf();
TPM_HANDLE outHandles[] = new TPM_HANDLE[outHandleCount];
for(int j=0;j<outHandleCount;j++)
for (int j=0; j < outHandleCount; j++)
{
outHandles[j] = new TPM_HANDLE();
outHandles[j].initFromTpm(respBuf);
@ -414,7 +414,7 @@ public abstract class TpmBase implements Closeable
}
byte[] responseWithoutHandles = null;
if(haveSessions)
if (haveSessions)
{
int restOfParmSize = respBuf.readInt(4);
responseWithoutHandles = respBuf.readByteArray(restOfParmSize);
@ -438,11 +438,10 @@ public abstract class TpmBase implements Closeable
InByteBuf responseData = new InByteBuf(respParmBuf.getBuf());
outParms.initFromTpm(responseData);
}
} finally {
AllowErrors = false;
ExpectedResponses = null;
}
} // DispatchCommand()
} finally {
AllowErrors = false;
ExpectedResponses = null;
}} // DispatchCommand()
void processResponseSessions(InByteBuf b)

Просмотреть файл

@ -90,7 +90,7 @@ public class AC_GetCapabilityResponse extends TpmStructure
@Override
public void toStringInternal(TpmStructurePrinter _p, int d)
{
_p.add(d, "BYTE", "moreData", moreData);
_p.add(d, "byte", "moreData", moreData);
_p.add(d, "TPMS_AC_OUTPUT", "capabilitiesData", capabilitiesData);
};

Просмотреть файл

@ -19,12 +19,12 @@ public class CommitResponse extends TpmStructure
* @param _E ECC point E [r]P1
* @param _counter least-significant 16 bits of commitCount
*/
public CommitResponse(TPMS_ECC_POINT _K,TPMS_ECC_POINT _L,TPMS_ECC_POINT _E,int _counter)
public CommitResponse(TPMS_ECC_POINT _K,TPMS_ECC_POINT _L,TPMS_ECC_POINT _E,short _counter)
{
K = _K;
L = _L;
E = _E;
counter = (short)_counter;
counter = _counter;
}
/**
* TPM2_Commit() performs the first part of an ECC anonymous signing operation. The TPM will perform the point multiplications on the provided points and return intermediate signing values. The signHandle parameter shall refer to an ECC key and the signing scheme must be anonymous (TPM_RC_SCHEME).

Просмотреть файл

@ -17,10 +17,10 @@ public class EC_EphemeralResponse extends TpmStructure
* @param _Q ephemeral public key Q [r]G
* @param _counter least-significant 16 bits of commitCount
*/
public EC_EphemeralResponse(TPMS_ECC_POINT _Q,int _counter)
public EC_EphemeralResponse(TPMS_ECC_POINT _Q,short _counter)
{
Q = _Q;
counter = (short)_counter;
counter = _counter;
}
/**
* TPM2_EC_Ephemeral() creates an ephemeral key for use in a two-phase key exchange protocol.

Просмотреть файл

@ -115,7 +115,7 @@ public class GetCapabilityResponse extends TpmStructure
@Override
public void toStringInternal(TpmStructurePrinter _p, int d)
{
_p.add(d, "BYTE", "moreData", moreData);
_p.add(d, "byte", "moreData", moreData);
_p.add(d, "TPMU_CAPABILITIES", "capabilityData", capabilityData);
};

Просмотреть файл

@ -258,7 +258,7 @@ public final class Implementation extends TpmEnum<Implementation>
NUM_STATIC_PCR = new Implementation(16, _N.NUM_STATIC_PCR),
MAX_ALG_LIST_SIZE = new Implementation(64, _N.MAX_ALG_LIST_SIZE),
PRIMARY_SEED_SIZE = new Implementation(32, _N.PRIMARY_SEED_SIZE),
CONTEXT_ENCRYPT_ALGORITHM = new Implementation(0x0006, _N.CONTEXT_ENCRYPT_ALGORITHM),
CONTEXT_ENCRYPT_ALGORITHM = new Implementation(ALG_ID_VALUE.AES_VALUE.toInt(), _N.CONTEXT_ENCRYPT_ALGORITHM),
NV_CLOCK_UPDATE_INTERVAL = new Implementation(12, _N.NV_CLOCK_UPDATE_INTERVAL),
NUM_POLICY_PCR = new Implementation(1, _N.NUM_POLICY_PCR),
MAX_COMMAND_SIZE = new Implementation(4096, _N.MAX_COMMAND_SIZE),

Просмотреть файл

@ -97,7 +97,7 @@ public class PCR_AllocateResponse extends TpmStructure
@Override
public void toStringInternal(TpmStructurePrinter _p, int d)
{
_p.add(d, "BYTE", "allocationSuccess", allocationSuccess);
_p.add(d, "byte", "allocationSuccess", allocationSuccess);
_p.add(d, "uint", "maxPCR", maxPCR);
_p.add(d, "uint", "sizeNeeded", sizeNeeded);
_p.add(d, "uint", "sizeAvailable", sizeAvailable);

Просмотреть файл

@ -82,7 +82,7 @@ public class TPM2_ClearControl_REQUEST extends TpmStructure
public void toStringInternal(TpmStructurePrinter _p, int d)
{
_p.add(d, "TPM_HANDLE", "auth", auth);
_p.add(d, "BYTE", "disable", disable);
_p.add(d, "byte", "disable", disable);
};

Просмотреть файл

@ -123,7 +123,7 @@ public class TPM2_EncryptDecrypt2_REQUEST extends TpmStructure
{
_p.add(d, "TPM_HANDLE", "keyHandle", keyHandle);
_p.add(d, "byte", "inData", inData);
_p.add(d, "BYTE", "decrypt", decrypt);
_p.add(d, "byte", "decrypt", decrypt);
_p.add(d, "TPM_ALG_ID", "mode", mode);
_p.add(d, "byte", "ivIn", ivIn);
};

Просмотреть файл

@ -122,7 +122,7 @@ public class TPM2_EncryptDecrypt_REQUEST extends TpmStructure
public void toStringInternal(TpmStructurePrinter _p, int d)
{
_p.add(d, "TPM_HANDLE", "keyHandle", keyHandle);
_p.add(d, "BYTE", "decrypt", decrypt);
_p.add(d, "byte", "decrypt", decrypt);
_p.add(d, "TPM_ALG_ID", "mode", mode);
_p.add(d, "byte", "ivIn", ivIn);
_p.add(d, "byte", "inData", inData);

Просмотреть файл

@ -16,9 +16,9 @@ public class TPM2_GetRandom_REQUEST extends TpmStructure
*
* @param _bytesRequested number of octets to return
*/
public TPM2_GetRandom_REQUEST(int _bytesRequested)
public TPM2_GetRandom_REQUEST(short _bytesRequested)
{
bytesRequested = (short)_bytesRequested;
bytesRequested = _bytesRequested;
}
/**
* This command returns the next bytesRequested octets from the random number generator (RNG).

Просмотреть файл

@ -91,7 +91,7 @@ public class TPM2_HierarchyControl_REQUEST extends TpmStructure
{
_p.add(d, "TPM_HANDLE", "authHandle", authHandle);
_p.add(d, "TPM_HANDLE", "enable", enable);
_p.add(d, "BYTE", "state", state);
_p.add(d, "byte", "state", state);
};

Просмотреть файл

@ -22,15 +22,15 @@ public class TPM2_NV_Certify_REQUEST extends TpmStructure
* @param _size number of octets to certify
* @param _offset octet offset into the NV area This value shall be less than or equal to the size of the nvIndex data.
*/
public TPM2_NV_Certify_REQUEST(TPM_HANDLE _signHandle,TPM_HANDLE _authHandle,TPM_HANDLE _nvIndex,byte[] _qualifyingData,TPMU_SIG_SCHEME _inScheme,int _size,int _offset)
public TPM2_NV_Certify_REQUEST(TPM_HANDLE _signHandle,TPM_HANDLE _authHandle,TPM_HANDLE _nvIndex,byte[] _qualifyingData,TPMU_SIG_SCHEME _inScheme,short _size,short _offset)
{
signHandle = _signHandle;
authHandle = _authHandle;
nvIndex = _nvIndex;
qualifyingData = _qualifyingData;
inScheme = _inScheme;
size = (short)_size;
offset = (short)_offset;
size = _size;
offset = _offset;
}
/**
* The purpose of this command is to certify the contents of an NV Index or portion of an NV Index.

Просмотреть файл

@ -19,12 +19,12 @@ public class TPM2_NV_Read_REQUEST extends TpmStructure
* @param _size number of octets to read
* @param _offset octet offset into the NV area This value shall be less than or equal to the size of the nvIndex data.
*/
public TPM2_NV_Read_REQUEST(TPM_HANDLE _authHandle,TPM_HANDLE _nvIndex,int _size,int _offset)
public TPM2_NV_Read_REQUEST(TPM_HANDLE _authHandle,TPM_HANDLE _nvIndex,short _size,short _offset)
{
authHandle = _authHandle;
nvIndex = _nvIndex;
size = (short)_size;
offset = (short)_offset;
size = _size;
offset = _offset;
}
/**
* This command reads a value from an area in NV memory previously defined by TPM2_NV_DefineSpace().

Просмотреть файл

@ -19,12 +19,12 @@ public class TPM2_NV_Write_REQUEST extends TpmStructure
* @param _data the data to write
* @param _offset the octet offset into the NV Area
*/
public TPM2_NV_Write_REQUEST(TPM_HANDLE _authHandle,TPM_HANDLE _nvIndex,byte[] _data,int _offset)
public TPM2_NV_Write_REQUEST(TPM_HANDLE _authHandle,TPM_HANDLE _nvIndex,byte[] _data,short _offset)
{
authHandle = _authHandle;
nvIndex = _nvIndex;
data = _data;
offset = (short)_offset;
offset = _offset;
}
/**
* This command writes a value to an area in NV memory that was previously defined by TPM2_NV_DefineSpace().

Просмотреть файл

@ -19,11 +19,11 @@ public class TPM2_PolicyCounterTimer_REQUEST extends TpmStructure
* @param _offset the octet offset in the TPMS_TIME_INFO structure for the start of operand A
* @param _operation the comparison to make
*/
public TPM2_PolicyCounterTimer_REQUEST(TPM_HANDLE _policySession,byte[] _operandB,int _offset,TPM_EO _operation)
public TPM2_PolicyCounterTimer_REQUEST(TPM_HANDLE _policySession,byte[] _operandB,short _offset,TPM_EO _operation)
{
policySession = _policySession;
operandB = _operandB;
offset = (short)_offset;
offset = _offset;
operation = _operation;
}
/**

Просмотреть файл

@ -116,7 +116,7 @@ public class TPM2_PolicyDuplicationSelect_REQUEST extends TpmStructure
_p.add(d, "TPM_HANDLE", "policySession", policySession);
_p.add(d, "byte", "objectName", objectName);
_p.add(d, "byte", "newParentName", newParentName);
_p.add(d, "BYTE", "includeObject", includeObject);
_p.add(d, "byte", "includeObject", includeObject);
};

Просмотреть файл

@ -21,13 +21,13 @@ public class TPM2_PolicyNV_REQUEST extends TpmStructure
* @param _offset the octet offset in the NV Index for the start of operand A
* @param _operation the comparison to make
*/
public TPM2_PolicyNV_REQUEST(TPM_HANDLE _authHandle,TPM_HANDLE _nvIndex,TPM_HANDLE _policySession,byte[] _operandB,int _offset,TPM_EO _operation)
public TPM2_PolicyNV_REQUEST(TPM_HANDLE _authHandle,TPM_HANDLE _nvIndex,TPM_HANDLE _policySession,byte[] _operandB,short _offset,TPM_EO _operation)
{
authHandle = _authHandle;
nvIndex = _nvIndex;
policySession = _policySession;
operandB = _operandB;
offset = (short)_offset;
offset = _offset;
operation = _operation;
}
/**

Просмотреть файл

@ -82,7 +82,7 @@ public class TPM2_PolicyNvWritten_REQUEST extends TpmStructure
public void toStringInternal(TpmStructurePrinter _p, int d)
{
_p.add(d, "TPM_HANDLE", "policySession", policySession);
_p.add(d, "BYTE", "writtenSet", writtenSet);
_p.add(d, "byte", "writtenSet", writtenSet);
};

Просмотреть файл

@ -133,7 +133,7 @@ public class TPM2_Policy_AC_SendSelect_REQUEST extends TpmStructure
_p.add(d, "byte", "objectName", objectName);
_p.add(d, "byte", "authHandleName", authHandleName);
_p.add(d, "byte", "acName", acName);
_p.add(d, "BYTE", "includeObject", includeObject);
_p.add(d, "byte", "includeObject", includeObject);
};

Просмотреть файл

@ -73,7 +73,7 @@ public class TPM2_SelfTest_REQUEST extends TpmStructure
@Override
public void toStringInternal(TpmStructurePrinter _p, int d)
{
_p.add(d, "BYTE", "fullTest", fullTest);
_p.add(d, "byte", "fullTest", fullTest);
};

Просмотреть файл

@ -20,13 +20,13 @@ public class TPM2_ZGen_2Phase_REQUEST extends TpmStructure
* @param _inScheme the key exchange scheme
* @param _counter value returned by TPM2_EC_Ephemeral()
*/
public TPM2_ZGen_2Phase_REQUEST(TPM_HANDLE _keyA,TPMS_ECC_POINT _inQsB,TPMS_ECC_POINT _inQeB,TPM_ALG_ID _inScheme,int _counter)
public TPM2_ZGen_2Phase_REQUEST(TPM_HANDLE _keyA,TPMS_ECC_POINT _inQsB,TPMS_ECC_POINT _inQeB,TPM_ALG_ID _inScheme,short _counter)
{
keyA = _keyA;
inQsB = _inQsB;
inQeB = _inQeB;
inScheme = _inScheme;
counter = (short)_counter;
counter = _counter;
}
/**
* This command supports two-phase key exchange protocols. The command is used in combination with TPM2_EC_Ephemeral(). TPM2_EC_Ephemeral() generates an ephemeral key and returns the public point of that ephemeral key along with a numeric value that allows the TPM to regenerate the associated private key.

Просмотреть файл

@ -26,10 +26,10 @@ public class TPMS_ALGORITHM_DETAIL_ECC extends TpmStructure
* @param _n order of G
* @param _h cofactor (a size of zero indicates a cofactor of 1)
*/
public TPMS_ALGORITHM_DETAIL_ECC(TPM_ECC_CURVE _curveID,int _keySize,TPMU_KDF_SCHEME _kdf,TPMU_ASYM_SCHEME _sign,byte[] _p,byte[] _a,byte[] _b,byte[] _gX,byte[] _gY,byte[] _n,byte[] _h)
public TPMS_ALGORITHM_DETAIL_ECC(TPM_ECC_CURVE _curveID,short _keySize,TPMU_KDF_SCHEME _kdf,TPMU_ASYM_SCHEME _sign,byte[] _p,byte[] _a,byte[] _b,byte[] _gX,byte[] _gY,byte[] _n,byte[] _h)
{
curveID = _curveID;
keySize = (short)_keySize;
keySize = _keySize;
kdf = _kdf;
sign = _sign;
p = _p;

Просмотреть файл

@ -100,7 +100,7 @@ public class TPMS_CLOCK_INFO extends TpmStructure
_p.add(d, "ulong", "clock", clock);
_p.add(d, "uint", "resetCount", resetCount);
_p.add(d, "uint", "restartCount", restartCount);
_p.add(d, "BYTE", "safe", safe);
_p.add(d, "byte", "safe", safe);
};

Просмотреть файл

@ -18,10 +18,10 @@ public class TPMS_NV_CERTIFY_INFO extends TpmStructure implements TPMU_ATTEST
* @param _offset the offset parameter of TPM2_NV_Certify()
* @param _nvContents contents of the NV Index
*/
public TPMS_NV_CERTIFY_INFO(byte[] _indexName,int _offset,byte[] _nvContents)
public TPMS_NV_CERTIFY_INFO(byte[] _indexName,short _offset,byte[] _nvContents)
{
indexName = _indexName;
offset = (short)_offset;
offset = _offset;
nvContents = _nvContents;
}
/**

Просмотреть файл

@ -20,13 +20,13 @@ public class TPMS_NV_PUBLIC extends TpmStructure
* @param _authPolicy optional access policy for the Index The policy is computed using the nameAlg NOTE Shall be the Empty Policy if no authorization policy is present.
* @param _dataSize the size of the data area The maximum size is implementation-dependent. The minimum maximum size is platform-specific.
*/
public TPMS_NV_PUBLIC(TPM_HANDLE _nvIndex,TPM_ALG_ID _nameAlg,TPMA_NV _attributes,byte[] _authPolicy,int _dataSize)
public TPMS_NV_PUBLIC(TPM_HANDLE _nvIndex,TPM_ALG_ID _nameAlg,TPMA_NV _attributes,byte[] _authPolicy,short _dataSize)
{
nvIndex = _nvIndex;
nameAlg = _nameAlg;
attributes = _attributes;
authPolicy = _authPolicy;
dataSize = (short)_dataSize;
dataSize = _dataSize;
}
/**
* This structure describes an NV Index.

Просмотреть файл

@ -19,11 +19,11 @@ public class TPMS_RSA_PARMS extends TpmStructure implements TPMU_PUBLIC_PARMS
* @param _keyBits number of bits in the public modulus
* @param _exponent the public exponent A prime number greater than 2.
*/
public TPMS_RSA_PARMS(TPMT_SYM_DEF_OBJECT _symmetric,TPMU_ASYM_SCHEME _scheme,int _keyBits,int _exponent)
public TPMS_RSA_PARMS(TPMT_SYM_DEF_OBJECT _symmetric,TPMU_ASYM_SCHEME _scheme,short _keyBits,int _exponent)
{
symmetric = _symmetric;
scheme = _scheme;
keyBits = (short)_keyBits;
keyBits = _keyBits;
exponent = _exponent;
}
/**
@ -135,7 +135,7 @@ public class TPMS_RSA_PARMS extends TpmStructure implements TPMU_PUBLIC_PARMS
{
_p.add(d, "TPMT_SYM_DEF_OBJECT", "symmetric", symmetric);
_p.add(d, "TPMU_ASYM_SCHEME", "scheme", scheme);
_p.add(d, "TPM_KEY_BITS", "keyBits", keyBits);
_p.add(d, "ushort", "keyBits", keyBits);
_p.add(d, "uint", "exponent", exponent);
};

Просмотреть файл

@ -17,10 +17,10 @@ public class TPMS_SCHEME_ECDAA extends TpmStructure implements TPMU_SIG_SCHEME,
* @param _hashAlg the hash algorithm used to digest the message
* @param _count the counter value that is used between TPM2_Commit() and the sign operation
*/
public TPMS_SCHEME_ECDAA(TPM_ALG_ID _hashAlg,int _count)
public TPMS_SCHEME_ECDAA(TPM_ALG_ID _hashAlg,short _count)
{
hashAlg = _hashAlg;
count = (short)_count;
count = _count;
}
/**
* This definition is for split signing schemes that require a commit count.

Просмотреть файл

@ -89,7 +89,7 @@ public class TPMS_SESSION_AUDIT_INFO extends TpmStructure implements TPMU_ATTEST
@Override
public void toStringInternal(TpmStructurePrinter _p, int d)
{
_p.add(d, "BYTE", "exclusiveSession", exclusiveSession);
_p.add(d, "byte", "exclusiveSession", exclusiveSession);
_p.add(d, "byte", "sessionDigest", sessionDigest);
};

Просмотреть файл

@ -17,10 +17,10 @@ public class TPMS_SIG_SCHEME_ECDAA extends TpmStructure implements TPMU_SIG_SCHE
* @param _hashAlg the hash algorithm used to digest the message
* @param _count the counter value that is used between TPM2_Commit() and the sign operation
*/
public TPMS_SIG_SCHEME_ECDAA(TPM_ALG_ID _hashAlg,int _count)
public TPMS_SIG_SCHEME_ECDAA(TPM_ALG_ID _hashAlg,short _count)
{
hashAlg = _hashAlg;
count = (short)_count;
count = _count;
}
/**
* Most of the ECC signature schemes only require a hash algorithm to complete the definition and can be typed as TPMS_SCHEME_HASH. Anonymous algorithms also require a count value so they are typed to be TPMS_SCHEME_ECDAA.

Просмотреть файл

@ -18,10 +18,10 @@ public class TPMT_SYM_DEF extends TpmStructure
* @param _keyBits key size in bits
* @param _mode encryption mode
*/
public TPMT_SYM_DEF(TPM_ALG_ID _algorithm,int _keyBits,TPM_ALG_ID _mode)
public TPMT_SYM_DEF(TPM_ALG_ID _algorithm,short _keyBits,TPM_ALG_ID _mode)
{
algorithm = _algorithm;
keyBits = (short)_keyBits;
keyBits = _keyBits;
mode = _mode;
}
/**
@ -86,7 +86,7 @@ public class TPMT_SYM_DEF extends TpmStructure
public void toStringInternal(TpmStructurePrinter _p, int d)
{
_p.add(d, "TPM_ALG_ID", "algorithm", algorithm);
_p.add(d, "UINT16", "keyBits", keyBits);
_p.add(d, "ushort", "keyBits", keyBits);
_p.add(d, "TPM_ALG_ID", "mode", mode);
};

Просмотреть файл

@ -18,10 +18,10 @@ public class TPMT_SYM_DEF_OBJECT extends TpmStructure
* @param _keyBits key size in bits
* @param _mode encryption mode
*/
public TPMT_SYM_DEF_OBJECT(TPM_ALG_ID _algorithm,int _keyBits,TPM_ALG_ID _mode)
public TPMT_SYM_DEF_OBJECT(TPM_ALG_ID _algorithm,short _keyBits,TPM_ALG_ID _mode)
{
algorithm = _algorithm;
keyBits = (short)_keyBits;
keyBits = _keyBits;
mode = _mode;
}
/**
@ -86,7 +86,7 @@ public class TPMT_SYM_DEF_OBJECT extends TpmStructure
public void toStringInternal(TpmStructurePrinter _p, int d)
{
_p.add(d, "TPM_ALG_ID", "algorithm", algorithm);
_p.add(d, "UINT16", "keyBits", keyBits);
_p.add(d, "ushort", "keyBits", keyBits);
_p.add(d, "TPM_ALG_ID", "mode", mode);
};

Просмотреть файл

@ -14,13 +14,11 @@ public class TPMT_TK_CREATION extends TpmStructure
/**
* This ticket is produced by TPM2_Create() or TPM2_CreatePrimary(). It is used to bind the creation data to the object to which it applies. The ticket is computed by
*
* @param _tag ticket structure tag
* @param _hierarchy the hierarchy containing name
* @param _digest This shall be the HMAC produced using a proof value of hierarchy.
*/
public TPMT_TK_CREATION(TPM_ST _tag,TPM_HANDLE _hierarchy,byte[] _digest)
public TPMT_TK_CREATION(TPM_HANDLE _hierarchy,byte[] _digest)
{
tag = _tag;
hierarchy = _hierarchy;
digest = _digest;
}
@ -47,7 +45,7 @@ public class TPMT_TK_CREATION extends TpmStructure
@Override
public void toTpm(OutByteBuf buf)
{
tag.toTpm(buf);
TPM_ST.CREATION.toTpm(buf);
hierarchy.toTpm(buf);
buf.writeInt((digest!=null)?digest.length:0, 2);
if(digest!=null)
@ -56,7 +54,8 @@ public class TPMT_TK_CREATION extends TpmStructure
@Override
public void initFromTpm(InByteBuf buf)
{
tag = TPM_ST.fromTpm(buf);
int _tag = buf.readInt(2);
assert(_tag == TPM_ST.CREATION.toInt());
hierarchy = TPM_HANDLE.fromTpm(buf);
int _digestSize = buf.readInt(2);
digest = new byte[_digestSize];

Просмотреть файл

@ -14,13 +14,11 @@ public class TPMT_TK_HASHCHECK extends TpmStructure
/**
* This ticket is produced by TPM2_SequenceComplete() or TPM2_Hash() when the message that was digested did not start with TPM_GENERATED_VALUE. The ticket is computed by
*
* @param _tag ticket structure tag
* @param _hierarchy the hierarchy
* @param _digest This shall be the HMAC produced using a proof value of hierarchy.
*/
public TPMT_TK_HASHCHECK(TPM_ST _tag,TPM_HANDLE _hierarchy,byte[] _digest)
public TPMT_TK_HASHCHECK(TPM_HANDLE _hierarchy,byte[] _digest)
{
tag = _tag;
hierarchy = _hierarchy;
digest = _digest;
}
@ -47,7 +45,7 @@ public class TPMT_TK_HASHCHECK extends TpmStructure
@Override
public void toTpm(OutByteBuf buf)
{
tag.toTpm(buf);
TPM_ST.HASHCHECK.toTpm(buf);
hierarchy.toTpm(buf);
buf.writeInt((digest!=null)?digest.length:0, 2);
if(digest!=null)
@ -56,7 +54,8 @@ public class TPMT_TK_HASHCHECK extends TpmStructure
@Override
public void initFromTpm(InByteBuf buf)
{
tag = TPM_ST.fromTpm(buf);
int _tag = buf.readInt(2);
assert(_tag == TPM_ST.HASHCHECK.toInt());
hierarchy = TPM_HANDLE.fromTpm(buf);
int _digestSize = buf.readInt(2);
digest = new byte[_digestSize];

Просмотреть файл

@ -14,13 +14,11 @@ public class TPMT_TK_VERIFIED extends TpmStructure
/**
* This ticket is produced by TPM2_VerifySignature(). This formulation is used for multiple ticket uses. The ticket provides evidence that the TPM has validated that a digest was signed by a key with the Name of keyName. The ticket is computed by
*
* @param _tag ticket structure tag
* @param _hierarchy the hierarchy containing keyName
* @param _digest This shall be the HMAC produced using a proof value of hierarchy.
*/
public TPMT_TK_VERIFIED(TPM_ST _tag,TPM_HANDLE _hierarchy,byte[] _digest)
public TPMT_TK_VERIFIED(TPM_HANDLE _hierarchy,byte[] _digest)
{
tag = _tag;
hierarchy = _hierarchy;
digest = _digest;
}
@ -47,7 +45,7 @@ public class TPMT_TK_VERIFIED extends TpmStructure
@Override
public void toTpm(OutByteBuf buf)
{
tag.toTpm(buf);
TPM_ST.VERIFIED.toTpm(buf);
hierarchy.toTpm(buf);
buf.writeInt((digest!=null)?digest.length:0, 2);
if(digest!=null)
@ -56,7 +54,8 @@ public class TPMT_TK_VERIFIED extends TpmStructure
@Override
public void initFromTpm(InByteBuf buf)
{
tag = TPM_ST.fromTpm(buf);
int _tag = buf.readInt(2);
assert(_tag == TPM_ST.VERIFIED.toInt());
hierarchy = TPM_HANDLE.fromTpm(buf);
int _digestSize = buf.readInt(2);
digest = new byte[_digestSize];

Просмотреть файл

@ -5175,7 +5175,6 @@ namespace Tpm2Lib {
/// Handle of a loaded TPM key or other object [TSS]
/// </summary>
[DataContract]
[KnownType(typeof(uint))]
[SpecTypeName("TPM_HANDLE")]
public partial class TpmHandle: TpmStructureBase
{
@ -6019,7 +6018,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(Pt))]
[KnownType(typeof(uint))]
[SpecTypeName("TPMS_TAGGED_PROPERTY")]
public partial class TaggedProperty: TpmStructureBase
{
@ -6155,7 +6153,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(uint))]
[KnownType(typeof(ActAttr))]
[SpecTypeName("TPMS_ACT_DATA")]
public partial class ActData: TpmStructureBase
@ -6751,10 +6748,6 @@ namespace Tpm2Lib {
/// This structure is used in each of the attestation commands.
/// </summary>
[DataContract]
[KnownType(typeof(ulong))]
[KnownType(typeof(uint))]
[KnownType(typeof(uint))]
[KnownType(typeof(byte))]
[SpecTypeName("TPMS_CLOCK_INFO")]
public partial class ClockInfo: TpmStructureBase
{
@ -6820,7 +6813,6 @@ namespace Tpm2Lib {
/// This structure is used in, e.g., the TPM2_GetTime() attestation and TPM2_ReadClock().
/// </summary>
[DataContract]
[KnownType(typeof(ulong))]
[KnownType(typeof(ClockInfo))]
[SpecTypeName("TPMS_TIME_INFO")]
public partial class TimeInfo: TpmStructureBase
@ -6868,7 +6860,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TimeInfo))]
[KnownType(typeof(ulong))]
[SpecTypeName("TPMS_TIME_ATTEST_INFO")]
public partial class TimeAttestInfo: TpmStructureBase, IAttestUnion
{
@ -7012,7 +7003,6 @@ namespace Tpm2Lib {
/// This is the attested data for TPM2_GetCommandAuditDigest().
/// </summary>
[DataContract]
[KnownType(typeof(ulong))]
[KnownType(typeof(TpmAlgId))]
[SpecTypeName("TPMS_COMMAND_AUDIT_INFO")]
public partial class CommandAuditInfo: TpmStructureBase, IAttestUnion
@ -7081,7 +7071,6 @@ namespace Tpm2Lib {
/// This is the attested data for TPM2_GetSessionAuditDigest().
/// </summary>
[DataContract]
[KnownType(typeof(byte))]
[SpecTypeName("TPMS_SESSION_AUDIT_INFO")]
public partial class SessionAuditInfo: TpmStructureBase, IAttestUnion
{
@ -7178,7 +7167,6 @@ namespace Tpm2Lib {
/// This structure contains the Name and contents of the selected NV Index that is certified by TPM2_NV_Certify().
/// </summary>
[DataContract]
[KnownType(typeof(ushort))]
[SpecTypeName("TPMS_NV_CERTIFY_INFO")]
public partial class NvCertifyInfo: TpmStructureBase, IAttestUnion
{
@ -7285,7 +7273,6 @@ namespace Tpm2Lib {
[KnownType(typeof(Generated))]
[KnownType(typeof(TpmSt))]
[KnownType(typeof(ClockInfo))]
[KnownType(typeof(ulong))]
[KnownType(typeof(TimeAttestInfo))]
[KnownType(typeof(CertifyInfo))]
[KnownType(typeof(QuoteInfo))]
@ -7738,7 +7725,6 @@ namespace Tpm2Lib {
[DataContract]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(ushort))]
[KnownType(typeof(TpmAlgId))]
[SpecTypeName("TPMT_SYM_DEF")]
public partial class SymDef: TpmStructureBase
{
@ -7794,7 +7780,6 @@ namespace Tpm2Lib {
[DataContract]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(ushort))]
[KnownType(typeof(TpmAlgId))]
[SpecTypeName("TPMT_SYM_DEF_OBJECT")]
public partial class SymDefObject: TpmStructureBase
{
@ -8195,7 +8180,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(ushort))]
[SpecTypeName("TPMS_SCHEME_ECDAA")]
public partial class SchemeEcdaa: TpmStructureBase, ISigSchemeUnion, IAsymSchemeUnion
{
@ -8269,7 +8253,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(TpmAlgId))]
[SpecTypeName("TPMS_SCHEME_XOR")]
public partial class SchemeXor: TpmStructureBase, ISchemeKeyedhashUnion
{
@ -9263,7 +9246,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(EccCurve))]
[KnownType(typeof(ushort))]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(NullUnion))]
[KnownType(typeof(SchemeHash))]
@ -9272,7 +9254,6 @@ namespace Tpm2Lib {
[KnownType(typeof(KdfSchemeKdf2))]
[KnownType(typeof(KdfSchemeKdf1Sp800108))]
[KnownType(typeof(NullKdfScheme))]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(NullUnion))]
[KnownType(typeof(Empty))]
[KnownType(typeof(SchemeHash))]
@ -9923,7 +9904,6 @@ namespace Tpm2Lib {
[KnownType(typeof(KeySchemeEcdh))]
[KnownType(typeof(KeySchemeEcmqv))]
[KnownType(typeof(NullAsymScheme))]
[KnownType(typeof(uint))]
[SpecTypeName("TPMS_RSA_PARMS")]
public partial class RsaParms: TpmStructureBase, IPublicParmsUnion
{
@ -10022,7 +10002,6 @@ namespace Tpm2Lib {
[KnownType(typeof(KeySchemeEcmqv))]
[KnownType(typeof(NullAsymScheme))]
[KnownType(typeof(EccCurve))]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(NullUnion))]
[KnownType(typeof(SchemeHash))]
[KnownType(typeof(KdfSchemeMgf1))]
@ -10159,7 +10138,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(ObjectAttr))]
[KnownType(typeof(SymcipherParms))]
[KnownType(typeof(KeyedhashParms))]
@ -10625,8 +10603,6 @@ namespace Tpm2Lib {
/// This is the data that can be written to and read from a TPM_NT_PIN_PASS or TPM_NT_PIN_FAIL non-volatile index. pinCount is the most significant octets. pinLimit is the least significant octets.
/// </summary>
[DataContract]
[KnownType(typeof(uint))]
[KnownType(typeof(uint))]
[SpecTypeName("TPMS_NV_PIN_COUNTER_PARAMETERS")]
public partial class NvPinCounterParameters: TpmStructureBase
{
@ -10672,7 +10648,6 @@ namespace Tpm2Lib {
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(NvAttr))]
[KnownType(typeof(ushort))]
[SpecTypeName("TPMS_NV_PUBLIC")]
public partial class NvPublic: TpmStructureBase
{
@ -10893,8 +10868,6 @@ namespace Tpm2Lib {
/// This structure is used in TPM2_ContextLoad() and TPM2_ContextSave(). If the values of the TPMS_CONTEXT structure in TPM2_ContextLoad() are not the same as the values when the context was saved (TPM2_ContextSave()), then the TPM shall not load the context.
/// </summary>
[DataContract]
[KnownType(typeof(ulong))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(ContextData))]
[SpecTypeName("TPMS_CONTEXT")]
@ -11090,7 +11063,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(At))]
[KnownType(typeof(uint))]
[SpecTypeName("TPMS_AC_OUTPUT")]
public partial class AcOutput: TpmStructureBase
{
@ -11238,7 +11210,6 @@ namespace Tpm2Lib {
/// This command causes the TPM to perform a test of its capabilities. If the fullTest is YES, the TPM will test all functions. If fullTest = NO, the TPM will only test those functions that have not previously been tested.
/// </summary>
[DataContract]
[KnownType(typeof(byte))]
[SpecTypeName("TPM2_SelfTest_REQUEST")]
public partial class Tpm2SelfTestRequest: TpmStructureBase
{
@ -11399,7 +11370,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmSe))]
[KnownType(typeof(SymDef))]
[KnownType(typeof(TpmAlgId))]
@ -12030,7 +12000,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(IdObject))]
[SpecTypeName("TPM2_ActivateCredential_REQUEST")]
public partial class Tpm2ActivateCredentialRequest: TpmStructureBase
@ -12303,7 +12272,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[SpecTypeName("TPM2_ObjectChangeAuth_REQUEST")]
public partial class Tpm2ObjectChangeAuthRequest: TpmStructureBase
{
@ -12519,7 +12487,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(SymDefObject))]
[SpecTypeName("TPM2_Duplicate_REQUEST")]
public partial class Tpm2DuplicateRequest: TpmStructureBase
@ -12643,7 +12610,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmPrivate))]
[SpecTypeName("TPM2_Rewrap_REQUEST")]
public partial class Tpm2RewrapRequest: TpmStructureBase
@ -13375,7 +13341,6 @@ namespace Tpm2Lib {
[KnownType(typeof(EccPoint))]
[KnownType(typeof(EccPoint))]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(ushort))]
[SpecTypeName("TPM2_ZGen_2Phase_REQUEST")]
public partial class Tpm2ZGen2PhaseRequest: TpmStructureBase
{
@ -13744,7 +13709,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(byte))]
[KnownType(typeof(TpmAlgId))]
[SpecTypeName("TPM2_EncryptDecrypt_REQUEST")]
public partial class Tpm2EncryptDecryptRequest: TpmStructureBase
@ -13864,7 +13828,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(byte))]
[KnownType(typeof(TpmAlgId))]
[SpecTypeName("TPM2_EncryptDecrypt2_REQUEST")]
public partial class Tpm2EncryptDecrypt2Request: TpmStructureBase
@ -14263,7 +14226,6 @@ namespace Tpm2Lib {
/// This command returns the next bytesRequested octets from the random number generator (RNG).
/// </summary>
[DataContract]
[KnownType(typeof(ushort))]
[SpecTypeName("TPM2_GetRandom_REQUEST")]
public partial class Tpm2GetRandomRequest: TpmStructureBase
{
@ -14674,7 +14636,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[SpecTypeName("TPM2_SequenceComplete_REQUEST")]
public partial class Tpm2SequenceCompleteRequest: TpmStructureBase
{
@ -14776,7 +14737,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[SpecTypeName("TPM2_EventSequenceComplete_REQUEST")]
public partial class Tpm2EventSequenceCompleteRequest: TpmStructureBase
{
@ -14868,7 +14828,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(NullUnion))]
[KnownType(typeof(SchemeHash))]
@ -15019,7 +14978,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(NullUnion))]
[KnownType(typeof(SchemeHash))]
@ -15336,8 +15294,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(NullUnion))]
[KnownType(typeof(SchemeHash))]
@ -15499,7 +15455,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(NullUnion))]
[KnownType(typeof(SchemeHash))]
@ -15650,7 +15605,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(NullUnion))]
[KnownType(typeof(SchemeHash))]
@ -15801,7 +15755,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(NullUnion))]
[KnownType(typeof(SchemeHash))]
@ -16036,7 +15989,6 @@ namespace Tpm2Lib {
[KnownType(typeof(EccPoint))]
[KnownType(typeof(EccPoint))]
[KnownType(typeof(EccPoint))]
[KnownType(typeof(ushort))]
[SpecTypeName("TPM2_Commit_RESPONSE")]
public partial class Tpm2CommitResponse: TpmStructureBase
{
@ -16136,7 +16088,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(EccPoint))]
[KnownType(typeof(ushort))]
[SpecTypeName("TPM2_EC_Ephemeral_RESPONSE")]
public partial class Tpm2EcEphemeralResponse: TpmStructureBase
{
@ -16641,7 +16592,6 @@ namespace Tpm2Lib {
/// This command returns the values of all PCR specified in pcrSelectionIn.
/// </summary>
[DataContract]
[KnownType(typeof(uint))]
[SpecTypeName("TPM2_PCR_Read_RESPONSE")]
public partial class Tpm2PcrReadResponse: TpmStructureBase
{
@ -16739,10 +16689,6 @@ namespace Tpm2Lib {
/// This command is used to set the desired PCR allocation of PCR and algorithms. This command requires Platform Authorization.
/// </summary>
[DataContract]
[KnownType(typeof(byte))]
[KnownType(typeof(uint))]
[KnownType(typeof(uint))]
[KnownType(typeof(uint))]
[SpecTypeName("TPM2_PCR_Allocate_RESPONSE")]
public partial class Tpm2PcrAllocateResponse: TpmStructureBase
{
@ -16806,7 +16752,6 @@ namespace Tpm2Lib {
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(TpmHandle))]
[SpecTypeName("TPM2_PCR_SetAuthPolicy_REQUEST")]
public partial class Tpm2PcrSetAuthPolicyRequest: TpmStructureBase
{
@ -16956,8 +16901,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(int))]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(NullUnion))]
[KnownType(typeof(TpmHash))]
@ -17119,8 +17062,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(int))]
[SpecTypeName("TPM2_PolicySecret_REQUEST")]
public partial class Tpm2PolicySecretRequest: TpmStructureBase
{
@ -17484,9 +17425,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(ushort))]
[KnownType(typeof(Eo))]
[SpecTypeName("TPM2_PolicyNV_REQUEST")]
public partial class Tpm2PolicyNVRequest: TpmStructureBase
@ -17575,7 +17513,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(ushort))]
[KnownType(typeof(Eo))]
[SpecTypeName("TPM2_PolicyCounterTimer_REQUEST")]
public partial class Tpm2PolicyCounterTimerRequest: TpmStructureBase
@ -17814,7 +17751,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(byte))]
[SpecTypeName("TPM2_PolicyDuplicationSelect_REQUEST")]
public partial class Tpm2PolicyDuplicationSelectRequest: TpmStructureBase
{
@ -18094,7 +18030,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(byte))]
[SpecTypeName("TPM2_PolicyNvWritten_REQUEST")]
public partial class Tpm2PolicyNvWrittenRequest: TpmStructureBase
{
@ -18187,8 +18122,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[SpecTypeName("TPM2_PolicyAuthorizeNV_REQUEST")]
public partial class Tpm2PolicyAuthorizeNVRequest: TpmStructureBase
{
@ -18411,8 +18344,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(byte))]
[SpecTypeName("TPM2_HierarchyControl_REQUEST")]
public partial class Tpm2HierarchyControlRequest: TpmStructureBase
{
@ -18641,7 +18572,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(byte))]
[SpecTypeName("TPM2_ClearControl_REQUEST")]
public partial class Tpm2ClearControlRequest: TpmStructureBase
{
@ -18772,9 +18702,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(uint))]
[KnownType(typeof(uint))]
[KnownType(typeof(uint))]
[SpecTypeName("TPM2_DictionaryAttackParameters_REQUEST")]
public partial class Tpm2DictionaryAttackParametersRequest: TpmStructureBase
{
@ -18896,7 +18823,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(uint))]
[SpecTypeName("TPM2_SetAlgorithmSet_REQUEST")]
public partial class Tpm2SetAlgorithmSetRequest: TpmStructureBase
{
@ -18943,7 +18869,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(NullUnion))]
[KnownType(typeof(TpmHash))]
@ -19109,7 +19034,6 @@ namespace Tpm2Lib {
/// This command is used to read a copy of the current firmware installed in the TPM.
/// </summary>
[DataContract]
[KnownType(typeof(uint))]
[SpecTypeName("TPM2_FirmwareRead_REQUEST")]
public partial class Tpm2FirmwareReadRequest: TpmStructureBase
{
@ -19352,8 +19276,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[SpecTypeName("TPM2_EvictControl_REQUEST")]
public partial class Tpm2EvictControlRequest: TpmStructureBase
{
@ -19461,7 +19383,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(ulong))]
[SpecTypeName("TPM2_ClockSet_REQUEST")]
public partial class Tpm2ClockSetRequest: TpmStructureBase
{
@ -19557,8 +19478,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(Cap))]
[KnownType(typeof(uint))]
[KnownType(typeof(uint))]
[SpecTypeName("TPM2_GetCapability_REQUEST")]
public partial class Tpm2GetCapabilityRequest: TpmStructureBase
{
@ -19611,7 +19530,6 @@ namespace Tpm2Lib {
/// This command returns various information regarding the TPM and its current state.
/// </summary>
[DataContract]
[KnownType(typeof(byte))]
[KnownType(typeof(Cap))]
[KnownType(typeof(CcArray))]
[KnownType(typeof(CcaArray))]
@ -19772,7 +19690,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[SpecTypeName("TPM2_NV_UndefineSpace_REQUEST")]
public partial class Tpm2NvUndefineSpaceRequest: TpmStructureBase
{
@ -19821,7 +19738,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[SpecTypeName("TPM2_NV_UndefineSpaceSpecial_REQUEST")]
public partial class Tpm2NvUndefineSpaceSpecialRequest: TpmStructureBase
{
@ -19951,8 +19867,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(ushort))]
[SpecTypeName("TPM2_NV_Write_REQUEST")]
public partial class Tpm2NvWriteRequest: TpmStructureBase
{
@ -20019,7 +19933,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[SpecTypeName("TPM2_NV_Increment_REQUEST")]
public partial class Tpm2NvIncrementRequest: TpmStructureBase
{
@ -20068,7 +19981,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[SpecTypeName("TPM2_NV_Extend_REQUEST")]
public partial class Tpm2NvExtendRequest: TpmStructureBase
{
@ -20126,8 +20038,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(ulong))]
[SpecTypeName("TPM2_NV_SetBits_REQUEST")]
public partial class Tpm2NvSetBitsRequest: TpmStructureBase
{
@ -20186,7 +20096,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[SpecTypeName("TPM2_NV_WriteLock_REQUEST")]
public partial class Tpm2NvWriteLockRequest: TpmStructureBase
{
@ -20272,9 +20181,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(ushort))]
[KnownType(typeof(ushort))]
[SpecTypeName("TPM2_NV_Read_REQUEST")]
public partial class Tpm2NvReadRequest: TpmStructureBase
{
@ -20375,7 +20281,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[SpecTypeName("TPM2_NV_ReadLock_REQUEST")]
public partial class Tpm2NvReadLockRequest: TpmStructureBase
{
@ -20470,8 +20375,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmAlgId))]
[KnownType(typeof(NullUnion))]
[KnownType(typeof(SchemeHash))]
@ -20484,8 +20387,6 @@ namespace Tpm2Lib {
[KnownType(typeof(SigSchemeEcschnorr))]
[KnownType(typeof(SigSchemeEcdaa))]
[KnownType(typeof(NullSigScheme))]
[KnownType(typeof(ushort))]
[KnownType(typeof(ushort))]
[SpecTypeName("TPM2_NV_Certify_REQUEST")]
public partial class Tpm2NvCertifyRequest: TpmStructureBase
{
@ -20655,7 +20556,6 @@ namespace Tpm2Lib {
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(At))]
[KnownType(typeof(uint))]
[SpecTypeName("TPM2_AC_GetCapability_REQUEST")]
public partial class Tpm2AcGetCapabilityRequest: TpmStructureBase
{
@ -20710,7 +20610,6 @@ namespace Tpm2Lib {
/// The purpose of this command is to obtain information about an Attached Component referenced by an AC handle.
/// </summary>
[DataContract]
[KnownType(typeof(byte))]
[SpecTypeName("TPM2_AC_GetCapability_RESPONSE")]
public partial class Tpm2AcGetCapabilityResponse: TpmStructureBase
{
@ -20755,8 +20654,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(TpmHandle))]
[SpecTypeName("TPM2_AC_Send_REQUEST")]
public partial class Tpm2AcSendRequest: TpmStructureBase
{
@ -20861,7 +20758,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(byte))]
[SpecTypeName("TPM2_Policy_AC_SendSelect_REQUEST")]
public partial class Tpm2PolicyAcSendSelectRequest: TpmStructureBase
{
@ -20935,7 +20831,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmHandle))]
[KnownType(typeof(uint))]
[SpecTypeName("TPM2_ACT_SetTimeout_REQUEST")]
public partial class Tpm2ActSetTimeoutRequest: TpmStructureBase
{
@ -21359,7 +21254,6 @@ namespace Tpm2Lib {
/// Contains a PCR index and associated hash(pcr-value) [TSS]
/// </summary>
[DataContract]
[KnownType(typeof(uint))]
[KnownType(typeof(TpmHash))]
[SpecTypeName("PcrValue")]
public partial class PcrValue: TpmStructureBase
@ -21522,7 +21416,6 @@ namespace Tpm2Lib {
/// </summary>
[DataContract]
[KnownType(typeof(TpmSt))]
[KnownType(typeof(uint))]
[KnownType(typeof(TpmCc))]
[SpecTypeName("CommandHeader")]
public partial class CommandHeader: TpmStructureBase
@ -24589,122 +24482,122 @@ namespace Tpm2Lib {
new CommandInfo(TpmCc.SelfTest, 0, 0, 0, typeof(Tpm2SelfTestRequest), typeof(EmptyResponse), 0, ""),
new CommandInfo(TpmCc.IncrementalSelfTest, 0, 0, 0, typeof(Tpm2IncrementalSelfTestRequest), typeof(Tpm2IncrementalSelfTestResponse), 10, ""),
new CommandInfo(TpmCc.GetTestResult, 0, 0, 0, typeof(Tpm2GetTestResultRequest), typeof(Tpm2GetTestResultResponse), 4, ""),
new CommandInfo(TpmCc.StartAuthSession, 2, 1, 0, typeof(Tpm2StartAuthSessionRequest), typeof(Tpm2StartAuthSessionResponse), 5, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyRestart, 1, 0, 0, typeof(Tpm2PolicyRestartRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.Create, 1, 0, 1, typeof(Tpm2CreateRequest), typeof(Tpm2CreateResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.Load, 1, 1, 1, typeof(Tpm2LoadRequest), typeof(Tpm2LoadResponse), 4, "TPM_HANDLE"),
new CommandInfo(TpmCc.StartAuthSession, 2, 1, 0, typeof(Tpm2StartAuthSessionRequest), typeof(Tpm2StartAuthSessionResponse), 5, "TPMI_DH_OBJECT TPMI_DH_ENTITY"),
new CommandInfo(TpmCc.PolicyRestart, 1, 0, 0, typeof(Tpm2PolicyRestartRequest), typeof(EmptyResponse), 0, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.Create, 1, 0, 1, typeof(Tpm2CreateRequest), typeof(Tpm2CreateResponse), 1, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.Load, 1, 1, 1, typeof(Tpm2LoadRequest), typeof(Tpm2LoadResponse), 4, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.LoadExternal, 0, 1, 0, typeof(Tpm2LoadExternalRequest), typeof(Tpm2LoadExternalResponse), 5, ""),
new CommandInfo(TpmCc.ReadPublic, 1, 0, 0, typeof(Tpm2ReadPublicRequest), typeof(Tpm2ReadPublicResponse), 4, "TPM_HANDLE"),
new CommandInfo(TpmCc.ActivateCredential, 2, 0, 2, typeof(Tpm2ActivateCredentialRequest), typeof(Tpm2ActivateCredentialResponse), 5, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.MakeCredential, 1, 0, 0, typeof(Tpm2MakeCredentialRequest), typeof(Tpm2MakeCredentialResponse), 5, "TPM_HANDLE"),
new CommandInfo(TpmCc.Unseal, 1, 0, 1, typeof(Tpm2UnsealRequest), typeof(Tpm2UnsealResponse), 4, "TPM_HANDLE"),
new CommandInfo(TpmCc.ObjectChangeAuth, 2, 0, 1, typeof(Tpm2ObjectChangeAuthRequest), typeof(Tpm2ObjectChangeAuthResponse), 1, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.CreateLoaded, 1, 1, 1, typeof(Tpm2CreateLoadedRequest), typeof(Tpm2CreateLoadedResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.Duplicate, 2, 0, 1, typeof(Tpm2DuplicateRequest), typeof(Tpm2DuplicateResponse), 5, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.Rewrap, 2, 0, 1, typeof(Tpm2RewrapRequest), typeof(Tpm2RewrapResponse), 0, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.Import, 1, 0, 1, typeof(Tpm2ImportRequest), typeof(Tpm2ImportResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.RsaEncrypt, 1, 0, 0, typeof(Tpm2RsaEncryptRequest), typeof(Tpm2RsaEncryptResponse), 5, "TPM_HANDLE"),
new CommandInfo(TpmCc.RsaDecrypt, 1, 0, 1, typeof(Tpm2RsaDecryptRequest), typeof(Tpm2RsaDecryptResponse), 5, "TPM_HANDLE"),
new CommandInfo(TpmCc.EcdhKeyGen, 1, 0, 0, typeof(Tpm2EcdhKeyGenRequest), typeof(Tpm2EcdhKeyGenResponse), 4, "TPM_HANDLE"),
new CommandInfo(TpmCc.EcdhZGen, 1, 0, 1, typeof(Tpm2EcdhZGenRequest), typeof(Tpm2EcdhZGenResponse), 5, "TPM_HANDLE"),
new CommandInfo(TpmCc.ReadPublic, 1, 0, 0, typeof(Tpm2ReadPublicRequest), typeof(Tpm2ReadPublicResponse), 4, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.ActivateCredential, 2, 0, 2, typeof(Tpm2ActivateCredentialRequest), typeof(Tpm2ActivateCredentialResponse), 5, "TPMI_DH_OBJECT TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.MakeCredential, 1, 0, 0, typeof(Tpm2MakeCredentialRequest), typeof(Tpm2MakeCredentialResponse), 5, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.Unseal, 1, 0, 1, typeof(Tpm2UnsealRequest), typeof(Tpm2UnsealResponse), 4, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.ObjectChangeAuth, 2, 0, 1, typeof(Tpm2ObjectChangeAuthRequest), typeof(Tpm2ObjectChangeAuthResponse), 1, "TPMI_DH_OBJECT TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.CreateLoaded, 1, 1, 1, typeof(Tpm2CreateLoadedRequest), typeof(Tpm2CreateLoadedResponse), 1, "TPMI_DH_PARENT"),
new CommandInfo(TpmCc.Duplicate, 2, 0, 1, typeof(Tpm2DuplicateRequest), typeof(Tpm2DuplicateResponse), 5, "TPMI_DH_OBJECT TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.Rewrap, 2, 0, 1, typeof(Tpm2RewrapRequest), typeof(Tpm2RewrapResponse), 0, "TPMI_DH_OBJECT TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.Import, 1, 0, 1, typeof(Tpm2ImportRequest), typeof(Tpm2ImportResponse), 1, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.RsaEncrypt, 1, 0, 0, typeof(Tpm2RsaEncryptRequest), typeof(Tpm2RsaEncryptResponse), 5, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.RsaDecrypt, 1, 0, 1, typeof(Tpm2RsaDecryptRequest), typeof(Tpm2RsaDecryptResponse), 5, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.EcdhKeyGen, 1, 0, 0, typeof(Tpm2EcdhKeyGenRequest), typeof(Tpm2EcdhKeyGenResponse), 4, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.EcdhZGen, 1, 0, 1, typeof(Tpm2EcdhZGenRequest), typeof(Tpm2EcdhZGenResponse), 5, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.EccParameters, 0, 0, 0, typeof(Tpm2EccParametersRequest), typeof(Tpm2EccParametersResponse), 0, ""),
new CommandInfo(TpmCc.ZGen2Phase, 1, 0, 1, typeof(Tpm2ZGen2PhaseRequest), typeof(Tpm2ZGen2PhaseResponse), 5, "TPM_HANDLE"),
new CommandInfo(TpmCc.EccEncrypt, 1, 0, 0, typeof(Tpm2EccEncryptRequest), typeof(Tpm2EccEncryptResponse), 5, "TPM_HANDLE"),
new CommandInfo(TpmCc.EccDecrypt, 1, 0, 1, typeof(Tpm2EccDecryptRequest), typeof(Tpm2EccDecryptResponse), 5, "TPM_HANDLE"),
new CommandInfo(TpmCc.EncryptDecrypt, 1, 0, 1, typeof(Tpm2EncryptDecryptRequest), typeof(Tpm2EncryptDecryptResponse), 4, "TPM_HANDLE"),
new CommandInfo(TpmCc.EncryptDecrypt2, 1, 0, 1, typeof(Tpm2EncryptDecrypt2Request), typeof(Tpm2EncryptDecrypt2Response), 5, "TPM_HANDLE"),
new CommandInfo(TpmCc.ZGen2Phase, 1, 0, 1, typeof(Tpm2ZGen2PhaseRequest), typeof(Tpm2ZGen2PhaseResponse), 5, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.EccEncrypt, 1, 0, 0, typeof(Tpm2EccEncryptRequest), typeof(Tpm2EccEncryptResponse), 5, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.EccDecrypt, 1, 0, 1, typeof(Tpm2EccDecryptRequest), typeof(Tpm2EccDecryptResponse), 5, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.EncryptDecrypt, 1, 0, 1, typeof(Tpm2EncryptDecryptRequest), typeof(Tpm2EncryptDecryptResponse), 4, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.EncryptDecrypt2, 1, 0, 1, typeof(Tpm2EncryptDecrypt2Request), typeof(Tpm2EncryptDecrypt2Response), 5, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.Hash, 0, 0, 0, typeof(Tpm2HashRequest), typeof(Tpm2HashResponse), 5, ""),
new CommandInfo(TpmCc.Hmac, 1, 0, 1, typeof(Tpm2HmacRequest), typeof(Tpm2HmacResponse), 5, "TPM_HANDLE"),
new CommandInfo(TpmCc.Mac, 1, 0, 1, typeof(Tpm2MacRequest), typeof(Tpm2MacResponse), 5, "TPM_HANDLE"),
new CommandInfo(TpmCc.Hmac, 1, 0, 1, typeof(Tpm2HmacRequest), typeof(Tpm2HmacResponse), 5, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.Mac, 1, 0, 1, typeof(Tpm2MacRequest), typeof(Tpm2MacResponse), 5, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.GetRandom, 0, 0, 0, typeof(Tpm2GetRandomRequest), typeof(Tpm2GetRandomResponse), 4, ""),
new CommandInfo(TpmCc.StirRandom, 0, 0, 0, typeof(Tpm2StirRandomRequest), typeof(EmptyResponse), 1, ""),
new CommandInfo(TpmCc.HmacStart, 1, 1, 1, typeof(Tpm2HmacStartRequest), typeof(Tpm2HmacStartResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.MacStart, 1, 1, 1, typeof(Tpm2MacStartRequest), typeof(Tpm2MacStartResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.HmacStart, 1, 1, 1, typeof(Tpm2HmacStartRequest), typeof(Tpm2HmacStartResponse), 1, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.MacStart, 1, 1, 1, typeof(Tpm2MacStartRequest), typeof(Tpm2MacStartResponse), 1, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.HashSequenceStart, 0, 1, 0, typeof(Tpm2HashSequenceStartRequest), typeof(Tpm2HashSequenceStartResponse), 1, ""),
new CommandInfo(TpmCc.SequenceUpdate, 1, 0, 1, typeof(Tpm2SequenceUpdateRequest), typeof(EmptyResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.SequenceComplete, 1, 0, 1, typeof(Tpm2SequenceCompleteRequest), typeof(Tpm2SequenceCompleteResponse), 5, "TPM_HANDLE"),
new CommandInfo(TpmCc.EventSequenceComplete, 2, 0, 2, typeof(Tpm2EventSequenceCompleteRequest), typeof(Tpm2EventSequenceCompleteResponse), 9, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.Certify, 2, 0, 2, typeof(Tpm2CertifyRequest), typeof(Tpm2CertifyResponse), 5, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.CertifyCreation, 2, 0, 1, typeof(Tpm2CertifyCreationRequest), typeof(Tpm2CertifyCreationResponse), 5, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.Quote, 1, 0, 1, typeof(Tpm2QuoteRequest), typeof(Tpm2QuoteResponse), 5, "TPM_HANDLE"),
new CommandInfo(TpmCc.GetSessionAuditDigest, 3, 0, 2, typeof(Tpm2GetSessionAuditDigestRequest), typeof(Tpm2GetSessionAuditDigestResponse), 5, "TPM_HANDLE TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.GetCommandAuditDigest, 2, 0, 2, typeof(Tpm2GetCommandAuditDigestRequest), typeof(Tpm2GetCommandAuditDigestResponse), 5, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.GetTime, 2, 0, 2, typeof(Tpm2GetTimeRequest), typeof(Tpm2GetTimeResponse), 5, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.CertifyX509, 2, 0, 2, typeof(Tpm2CertifyX509Request), typeof(Tpm2CertifyX509Response), 5, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.Commit, 1, 0, 1, typeof(Tpm2CommitRequest), typeof(Tpm2CommitResponse), 5, "TPM_HANDLE"),
new CommandInfo(TpmCc.SequenceUpdate, 1, 0, 1, typeof(Tpm2SequenceUpdateRequest), typeof(EmptyResponse), 1, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.SequenceComplete, 1, 0, 1, typeof(Tpm2SequenceCompleteRequest), typeof(Tpm2SequenceCompleteResponse), 5, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.EventSequenceComplete, 2, 0, 2, typeof(Tpm2EventSequenceCompleteRequest), typeof(Tpm2EventSequenceCompleteResponse), 9, "TPMI_DH_PCR TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.Certify, 2, 0, 2, typeof(Tpm2CertifyRequest), typeof(Tpm2CertifyResponse), 5, "TPMI_DH_OBJECT TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.CertifyCreation, 2, 0, 1, typeof(Tpm2CertifyCreationRequest), typeof(Tpm2CertifyCreationResponse), 5, "TPMI_DH_OBJECT TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.Quote, 1, 0, 1, typeof(Tpm2QuoteRequest), typeof(Tpm2QuoteResponse), 5, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.GetSessionAuditDigest, 3, 0, 2, typeof(Tpm2GetSessionAuditDigestRequest), typeof(Tpm2GetSessionAuditDigestResponse), 5, "TPMI_RH_ENDORSEMENT TPMI_DH_OBJECT TPMI_SH_HMAC"),
new CommandInfo(TpmCc.GetCommandAuditDigest, 2, 0, 2, typeof(Tpm2GetCommandAuditDigestRequest), typeof(Tpm2GetCommandAuditDigestResponse), 5, "TPMI_RH_ENDORSEMENT TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.GetTime, 2, 0, 2, typeof(Tpm2GetTimeRequest), typeof(Tpm2GetTimeResponse), 5, "TPMI_RH_ENDORSEMENT TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.CertifyX509, 2, 0, 2, typeof(Tpm2CertifyX509Request), typeof(Tpm2CertifyX509Response), 5, "TPMI_DH_OBJECT TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.Commit, 1, 0, 1, typeof(Tpm2CommitRequest), typeof(Tpm2CommitResponse), 5, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.EcEphemeral, 0, 0, 0, typeof(Tpm2EcEphemeralRequest), typeof(Tpm2EcEphemeralResponse), 4, ""),
new CommandInfo(TpmCc.VerifySignature, 1, 0, 0, typeof(Tpm2VerifySignatureRequest), typeof(Tpm2VerifySignatureResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.Sign, 1, 0, 1, typeof(Tpm2SignRequest), typeof(Tpm2SignResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.SetCommandCodeAuditStatus, 1, 0, 1, typeof(Tpm2SetCommandCodeAuditStatusRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.PcrExtend, 1, 0, 1, typeof(Tpm2PcrExtendRequest), typeof(EmptyResponse), 2, "TPM_HANDLE"),
new CommandInfo(TpmCc.PcrEvent, 1, 0, 1, typeof(Tpm2PcrEventRequest), typeof(Tpm2PcrEventResponse), 9, "TPM_HANDLE"),
new CommandInfo(TpmCc.VerifySignature, 1, 0, 0, typeof(Tpm2VerifySignatureRequest), typeof(Tpm2VerifySignatureResponse), 1, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.Sign, 1, 0, 1, typeof(Tpm2SignRequest), typeof(Tpm2SignResponse), 1, "TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.SetCommandCodeAuditStatus, 1, 0, 1, typeof(Tpm2SetCommandCodeAuditStatusRequest), typeof(EmptyResponse), 0, "TPMI_RH_PROVISION"),
new CommandInfo(TpmCc.PcrExtend, 1, 0, 1, typeof(Tpm2PcrExtendRequest), typeof(EmptyResponse), 2, "TPMI_DH_PCR"),
new CommandInfo(TpmCc.PcrEvent, 1, 0, 1, typeof(Tpm2PcrEventRequest), typeof(Tpm2PcrEventResponse), 9, "TPMI_DH_PCR"),
new CommandInfo(TpmCc.PcrRead, 0, 0, 0, typeof(Tpm2PcrReadRequest), typeof(Tpm2PcrReadResponse), 2, ""),
new CommandInfo(TpmCc.PcrAllocate, 1, 0, 1, typeof(Tpm2PcrAllocateRequest), typeof(Tpm2PcrAllocateResponse), 2, "TPM_HANDLE"),
new CommandInfo(TpmCc.PcrSetAuthPolicy, 1, 0, 1, typeof(Tpm2PcrSetAuthPolicyRequest), typeof(EmptyResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.PcrSetAuthValue, 1, 0, 1, typeof(Tpm2PcrSetAuthValueRequest), typeof(EmptyResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.PcrReset, 1, 0, 1, typeof(Tpm2PcrResetRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.PolicySigned, 2, 0, 0, typeof(Tpm2PolicySignedRequest), typeof(Tpm2PolicySignedResponse), 5, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.PolicySecret, 2, 0, 1, typeof(Tpm2PolicySecretRequest), typeof(Tpm2PolicySecretResponse), 5, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyTicket, 1, 0, 0, typeof(Tpm2PolicyTicketRequest), typeof(EmptyResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyOR, 1, 0, 0, typeof(Tpm2PolicyORRequest), typeof(EmptyResponse), 2, "TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyPCR, 1, 0, 0, typeof(Tpm2PolicyPCRRequest), typeof(EmptyResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyLocality, 1, 0, 0, typeof(Tpm2PolicyLocalityRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyNV, 3, 0, 1, typeof(Tpm2PolicyNVRequest), typeof(EmptyResponse), 1, "TPM_HANDLE TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyCounterTimer, 1, 0, 0, typeof(Tpm2PolicyCounterTimerRequest), typeof(EmptyResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyCommandCode, 1, 0, 0, typeof(Tpm2PolicyCommandCodeRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyPhysicalPresence, 1, 0, 0, typeof(Tpm2PolicyPhysicalPresenceRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyCpHash, 1, 0, 0, typeof(Tpm2PolicyCpHashRequest), typeof(EmptyResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyNameHash, 1, 0, 0, typeof(Tpm2PolicyNameHashRequest), typeof(EmptyResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyDuplicationSelect, 1, 0, 0, typeof(Tpm2PolicyDuplicationSelectRequest), typeof(EmptyResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyAuthorize, 1, 0, 0, typeof(Tpm2PolicyAuthorizeRequest), typeof(EmptyResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyAuthValue, 1, 0, 0, typeof(Tpm2PolicyAuthValueRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyPassword, 1, 0, 0, typeof(Tpm2PolicyPasswordRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyGetDigest, 1, 0, 0, typeof(Tpm2PolicyGetDigestRequest), typeof(Tpm2PolicyGetDigestResponse), 4, "TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyNvWritten, 1, 0, 0, typeof(Tpm2PolicyNvWrittenRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyTemplate, 1, 0, 0, typeof(Tpm2PolicyTemplateRequest), typeof(EmptyResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyAuthorizeNV, 3, 0, 1, typeof(Tpm2PolicyAuthorizeNVRequest), typeof(EmptyResponse), 0, "TPM_HANDLE TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.CreatePrimary, 1, 1, 1, typeof(Tpm2CreatePrimaryRequest), typeof(Tpm2CreatePrimaryResponse), 5, "TPM_HANDLE"),
new CommandInfo(TpmCc.HierarchyControl, 1, 0, 1, typeof(Tpm2HierarchyControlRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.SetPrimaryPolicy, 1, 0, 1, typeof(Tpm2SetPrimaryPolicyRequest), typeof(EmptyResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.ChangePPS, 1, 0, 1, typeof(Tpm2ChangePPSRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.ChangeEPS, 1, 0, 1, typeof(Tpm2ChangeEPSRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.Clear, 1, 0, 1, typeof(Tpm2ClearRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.ClearControl, 1, 0, 1, typeof(Tpm2ClearControlRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.HierarchyChangeAuth, 1, 0, 1, typeof(Tpm2HierarchyChangeAuthRequest), typeof(EmptyResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.DictionaryAttackLockReset, 1, 0, 1, typeof(Tpm2DictionaryAttackLockResetRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.DictionaryAttackParameters, 1, 0, 1, typeof(Tpm2DictionaryAttackParametersRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.PpCommands, 1, 0, 1, typeof(Tpm2PpCommandsRequest), typeof(EmptyResponse), 2, "TPM_HANDLE"),
new CommandInfo(TpmCc.SetAlgorithmSet, 1, 0, 1, typeof(Tpm2SetAlgorithmSetRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.FieldUpgradeStart, 2, 0, 1, typeof(Tpm2FieldUpgradeStartRequest), typeof(EmptyResponse), 1, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.PcrAllocate, 1, 0, 1, typeof(Tpm2PcrAllocateRequest), typeof(Tpm2PcrAllocateResponse), 2, "TPMI_RH_PLATFORM"),
new CommandInfo(TpmCc.PcrSetAuthPolicy, 1, 0, 1, typeof(Tpm2PcrSetAuthPolicyRequest), typeof(EmptyResponse), 1, "TPMI_RH_PLATFORM"),
new CommandInfo(TpmCc.PcrSetAuthValue, 1, 0, 1, typeof(Tpm2PcrSetAuthValueRequest), typeof(EmptyResponse), 1, "TPMI_DH_PCR"),
new CommandInfo(TpmCc.PcrReset, 1, 0, 1, typeof(Tpm2PcrResetRequest), typeof(EmptyResponse), 0, "TPMI_DH_PCR"),
new CommandInfo(TpmCc.PolicySigned, 2, 0, 0, typeof(Tpm2PolicySignedRequest), typeof(Tpm2PolicySignedResponse), 5, "TPMI_DH_OBJECT TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicySecret, 2, 0, 1, typeof(Tpm2PolicySecretRequest), typeof(Tpm2PolicySecretResponse), 5, "TPMI_DH_ENTITY TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyTicket, 1, 0, 0, typeof(Tpm2PolicyTicketRequest), typeof(EmptyResponse), 1, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyOR, 1, 0, 0, typeof(Tpm2PolicyORRequest), typeof(EmptyResponse), 2, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyPCR, 1, 0, 0, typeof(Tpm2PolicyPCRRequest), typeof(EmptyResponse), 1, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyLocality, 1, 0, 0, typeof(Tpm2PolicyLocalityRequest), typeof(EmptyResponse), 0, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyNV, 3, 0, 1, typeof(Tpm2PolicyNVRequest), typeof(EmptyResponse), 1, "TPMI_RH_NV_AUTH TPMI_RH_NV_INDEX TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyCounterTimer, 1, 0, 0, typeof(Tpm2PolicyCounterTimerRequest), typeof(EmptyResponse), 1, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyCommandCode, 1, 0, 0, typeof(Tpm2PolicyCommandCodeRequest), typeof(EmptyResponse), 0, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyPhysicalPresence, 1, 0, 0, typeof(Tpm2PolicyPhysicalPresenceRequest), typeof(EmptyResponse), 0, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyCpHash, 1, 0, 0, typeof(Tpm2PolicyCpHashRequest), typeof(EmptyResponse), 1, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyNameHash, 1, 0, 0, typeof(Tpm2PolicyNameHashRequest), typeof(EmptyResponse), 1, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyDuplicationSelect, 1, 0, 0, typeof(Tpm2PolicyDuplicationSelectRequest), typeof(EmptyResponse), 1, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyAuthorize, 1, 0, 0, typeof(Tpm2PolicyAuthorizeRequest), typeof(EmptyResponse), 1, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyAuthValue, 1, 0, 0, typeof(Tpm2PolicyAuthValueRequest), typeof(EmptyResponse), 0, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyPassword, 1, 0, 0, typeof(Tpm2PolicyPasswordRequest), typeof(EmptyResponse), 0, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyGetDigest, 1, 0, 0, typeof(Tpm2PolicyGetDigestRequest), typeof(Tpm2PolicyGetDigestResponse), 4, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyNvWritten, 1, 0, 0, typeof(Tpm2PolicyNvWrittenRequest), typeof(EmptyResponse), 0, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyTemplate, 1, 0, 0, typeof(Tpm2PolicyTemplateRequest), typeof(EmptyResponse), 1, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.PolicyAuthorizeNV, 3, 0, 1, typeof(Tpm2PolicyAuthorizeNVRequest), typeof(EmptyResponse), 0, "TPMI_RH_NV_AUTH TPMI_RH_NV_INDEX TPMI_SH_POLICY"),
new CommandInfo(TpmCc.CreatePrimary, 1, 1, 1, typeof(Tpm2CreatePrimaryRequest), typeof(Tpm2CreatePrimaryResponse), 5, "TPMI_RH_HIERARCHY"),
new CommandInfo(TpmCc.HierarchyControl, 1, 0, 1, typeof(Tpm2HierarchyControlRequest), typeof(EmptyResponse), 0, "TPMI_RH_HIERARCHY"),
new CommandInfo(TpmCc.SetPrimaryPolicy, 1, 0, 1, typeof(Tpm2SetPrimaryPolicyRequest), typeof(EmptyResponse), 1, "TPMI_RH_HIERARCHY_POLICY"),
new CommandInfo(TpmCc.ChangePPS, 1, 0, 1, typeof(Tpm2ChangePPSRequest), typeof(EmptyResponse), 0, "TPMI_RH_PLATFORM"),
new CommandInfo(TpmCc.ChangeEPS, 1, 0, 1, typeof(Tpm2ChangeEPSRequest), typeof(EmptyResponse), 0, "TPMI_RH_PLATFORM"),
new CommandInfo(TpmCc.Clear, 1, 0, 1, typeof(Tpm2ClearRequest), typeof(EmptyResponse), 0, "TPMI_RH_CLEAR"),
new CommandInfo(TpmCc.ClearControl, 1, 0, 1, typeof(Tpm2ClearControlRequest), typeof(EmptyResponse), 0, "TPMI_RH_CLEAR"),
new CommandInfo(TpmCc.HierarchyChangeAuth, 1, 0, 1, typeof(Tpm2HierarchyChangeAuthRequest), typeof(EmptyResponse), 1, "TPMI_RH_HIERARCHY_AUTH"),
new CommandInfo(TpmCc.DictionaryAttackLockReset, 1, 0, 1, typeof(Tpm2DictionaryAttackLockResetRequest), typeof(EmptyResponse), 0, "TPMI_RH_LOCKOUT"),
new CommandInfo(TpmCc.DictionaryAttackParameters, 1, 0, 1, typeof(Tpm2DictionaryAttackParametersRequest), typeof(EmptyResponse), 0, "TPMI_RH_LOCKOUT"),
new CommandInfo(TpmCc.PpCommands, 1, 0, 1, typeof(Tpm2PpCommandsRequest), typeof(EmptyResponse), 2, "TPMI_RH_PLATFORM"),
new CommandInfo(TpmCc.SetAlgorithmSet, 1, 0, 1, typeof(Tpm2SetAlgorithmSetRequest), typeof(EmptyResponse), 0, "TPMI_RH_PLATFORM"),
new CommandInfo(TpmCc.FieldUpgradeStart, 2, 0, 1, typeof(Tpm2FieldUpgradeStartRequest), typeof(EmptyResponse), 1, "TPMI_RH_PLATFORM TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.FieldUpgradeData, 0, 0, 0, typeof(Tpm2FieldUpgradeDataRequest), typeof(Tpm2FieldUpgradeDataResponse), 1, ""),
new CommandInfo(TpmCc.FirmwareRead, 0, 0, 0, typeof(Tpm2FirmwareReadRequest), typeof(Tpm2FirmwareReadResponse), 4, ""),
new CommandInfo(TpmCc.ContextSave, 1, 0, 0, typeof(Tpm2ContextSaveRequest), typeof(Tpm2ContextSaveResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.ContextSave, 1, 0, 0, typeof(Tpm2ContextSaveRequest), typeof(Tpm2ContextSaveResponse), 0, "TPMI_DH_CONTEXT"),
new CommandInfo(TpmCc.ContextLoad, 0, 1, 0, typeof(Tpm2ContextLoadRequest), typeof(Tpm2ContextLoadResponse), 0, ""),
new CommandInfo(TpmCc.FlushContext, 1, 0, 0, typeof(Tpm2FlushContextRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.EvictControl, 2, 0, 1, typeof(Tpm2EvictControlRequest), typeof(EmptyResponse), 0, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.FlushContext, 1, 0, 0, typeof(Tpm2FlushContextRequest), typeof(EmptyResponse), 0, "TPMI_DH_CONTEXT"),
new CommandInfo(TpmCc.EvictControl, 2, 0, 1, typeof(Tpm2EvictControlRequest), typeof(EmptyResponse), 0, "TPMI_RH_PROVISION TPMI_DH_OBJECT"),
new CommandInfo(TpmCc.ReadClock, 0, 0, 0, typeof(Tpm2ReadClockRequest), typeof(Tpm2ReadClockResponse), 0, ""),
new CommandInfo(TpmCc.ClockSet, 1, 0, 1, typeof(Tpm2ClockSetRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.ClockRateAdjust, 1, 0, 1, typeof(Tpm2ClockRateAdjustRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.ClockSet, 1, 0, 1, typeof(Tpm2ClockSetRequest), typeof(EmptyResponse), 0, "TPMI_RH_PROVISION"),
new CommandInfo(TpmCc.ClockRateAdjust, 1, 0, 1, typeof(Tpm2ClockRateAdjustRequest), typeof(EmptyResponse), 0, "TPMI_RH_PROVISION"),
new CommandInfo(TpmCc.GetCapability, 0, 0, 0, typeof(Tpm2GetCapabilityRequest), typeof(Tpm2GetCapabilityResponse), 0, ""),
new CommandInfo(TpmCc.TestParms, 0, 0, 0, typeof(Tpm2TestParmsRequest), typeof(EmptyResponse), 0, ""),
new CommandInfo(TpmCc.NvDefineSpace, 1, 0, 1, typeof(Tpm2NvDefineSpaceRequest), typeof(EmptyResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.NvUndefineSpace, 2, 0, 1, typeof(Tpm2NvUndefineSpaceRequest), typeof(EmptyResponse), 0, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.NvUndefineSpaceSpecial, 2, 0, 2, typeof(Tpm2NvUndefineSpaceSpecialRequest), typeof(EmptyResponse), 0, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.NvReadPublic, 1, 0, 0, typeof(Tpm2NvReadPublicRequest), typeof(Tpm2NvReadPublicResponse), 4, "TPM_HANDLE"),
new CommandInfo(TpmCc.NvWrite, 2, 0, 1, typeof(Tpm2NvWriteRequest), typeof(EmptyResponse), 1, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.NvIncrement, 2, 0, 1, typeof(Tpm2NvIncrementRequest), typeof(EmptyResponse), 0, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.NvExtend, 2, 0, 1, typeof(Tpm2NvExtendRequest), typeof(EmptyResponse), 1, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.NvSetBits, 2, 0, 1, typeof(Tpm2NvSetBitsRequest), typeof(EmptyResponse), 0, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.NvWriteLock, 2, 0, 1, typeof(Tpm2NvWriteLockRequest), typeof(EmptyResponse), 0, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.NvGlobalWriteLock, 1, 0, 1, typeof(Tpm2NvGlobalWriteLockRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.NvRead, 2, 0, 1, typeof(Tpm2NvReadRequest), typeof(Tpm2NvReadResponse), 4, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.NvReadLock, 2, 0, 1, typeof(Tpm2NvReadLockRequest), typeof(EmptyResponse), 0, "TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.NvChangeAuth, 1, 0, 1, typeof(Tpm2NvChangeAuthRequest), typeof(EmptyResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.NvCertify, 3, 0, 2, typeof(Tpm2NvCertifyRequest), typeof(Tpm2NvCertifyResponse), 5, "TPM_HANDLE TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.AcGetCapability, 1, 0, 0, typeof(Tpm2AcGetCapabilityRequest), typeof(Tpm2AcGetCapabilityResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.AcSend, 3, 0, 2, typeof(Tpm2AcSendRequest), typeof(Tpm2AcSendResponse), 1, "TPM_HANDLE TPM_HANDLE TPM_HANDLE"),
new CommandInfo(TpmCc.PolicyAcSendSelect, 1, 0, 0, typeof(Tpm2PolicyAcSendSelectRequest), typeof(EmptyResponse), 1, "TPM_HANDLE"),
new CommandInfo(TpmCc.ActSetTimeout, 1, 0, 1, typeof(Tpm2ActSetTimeoutRequest), typeof(EmptyResponse), 0, "TPM_HANDLE"),
new CommandInfo(TpmCc.NvDefineSpace, 1, 0, 1, typeof(Tpm2NvDefineSpaceRequest), typeof(EmptyResponse), 1, "TPMI_RH_PROVISION"),
new CommandInfo(TpmCc.NvUndefineSpace, 2, 0, 1, typeof(Tpm2NvUndefineSpaceRequest), typeof(EmptyResponse), 0, "TPMI_RH_PROVISION TPMI_RH_NV_INDEX"),
new CommandInfo(TpmCc.NvUndefineSpaceSpecial, 2, 0, 2, typeof(Tpm2NvUndefineSpaceSpecialRequest), typeof(EmptyResponse), 0, "TPMI_RH_NV_INDEX TPMI_RH_PLATFORM"),
new CommandInfo(TpmCc.NvReadPublic, 1, 0, 0, typeof(Tpm2NvReadPublicRequest), typeof(Tpm2NvReadPublicResponse), 4, "TPMI_RH_NV_INDEX"),
new CommandInfo(TpmCc.NvWrite, 2, 0, 1, typeof(Tpm2NvWriteRequest), typeof(EmptyResponse), 1, "TPMI_RH_NV_AUTH TPMI_RH_NV_INDEX"),
new CommandInfo(TpmCc.NvIncrement, 2, 0, 1, typeof(Tpm2NvIncrementRequest), typeof(EmptyResponse), 0, "TPMI_RH_NV_AUTH TPMI_RH_NV_INDEX"),
new CommandInfo(TpmCc.NvExtend, 2, 0, 1, typeof(Tpm2NvExtendRequest), typeof(EmptyResponse), 1, "TPMI_RH_NV_AUTH TPMI_RH_NV_INDEX"),
new CommandInfo(TpmCc.NvSetBits, 2, 0, 1, typeof(Tpm2NvSetBitsRequest), typeof(EmptyResponse), 0, "TPMI_RH_NV_AUTH TPMI_RH_NV_INDEX"),
new CommandInfo(TpmCc.NvWriteLock, 2, 0, 1, typeof(Tpm2NvWriteLockRequest), typeof(EmptyResponse), 0, "TPMI_RH_NV_AUTH TPMI_RH_NV_INDEX"),
new CommandInfo(TpmCc.NvGlobalWriteLock, 1, 0, 1, typeof(Tpm2NvGlobalWriteLockRequest), typeof(EmptyResponse), 0, "TPMI_RH_PROVISION"),
new CommandInfo(TpmCc.NvRead, 2, 0, 1, typeof(Tpm2NvReadRequest), typeof(Tpm2NvReadResponse), 4, "TPMI_RH_NV_AUTH TPMI_RH_NV_INDEX"),
new CommandInfo(TpmCc.NvReadLock, 2, 0, 1, typeof(Tpm2NvReadLockRequest), typeof(EmptyResponse), 0, "TPMI_RH_NV_AUTH TPMI_RH_NV_INDEX"),
new CommandInfo(TpmCc.NvChangeAuth, 1, 0, 1, typeof(Tpm2NvChangeAuthRequest), typeof(EmptyResponse), 1, "TPMI_RH_NV_INDEX"),
new CommandInfo(TpmCc.NvCertify, 3, 0, 2, typeof(Tpm2NvCertifyRequest), typeof(Tpm2NvCertifyResponse), 5, "TPMI_DH_OBJECT TPMI_RH_NV_AUTH TPMI_RH_NV_INDEX"),
new CommandInfo(TpmCc.AcGetCapability, 1, 0, 0, typeof(Tpm2AcGetCapabilityRequest), typeof(Tpm2AcGetCapabilityResponse), 0, "TPMI_RH_AC"),
new CommandInfo(TpmCc.AcSend, 3, 0, 2, typeof(Tpm2AcSendRequest), typeof(Tpm2AcSendResponse), 1, "TPMI_DH_OBJECT TPMI_RH_NV_AUTH TPMI_RH_AC"),
new CommandInfo(TpmCc.PolicyAcSendSelect, 1, 0, 0, typeof(Tpm2PolicyAcSendSelectRequest), typeof(EmptyResponse), 1, "TPMI_SH_POLICY"),
new CommandInfo(TpmCc.ActSetTimeout, 1, 0, 1, typeof(Tpm2ActSetTimeoutRequest), typeof(EmptyResponse), 0, "TPMI_RH_ACT"),
new CommandInfo(TpmCc.VendorTcgTest, 0, 0, 0, typeof(Tpm2VendorTcgTestRequest), typeof(Tpm2VendorTcgTestResponse), 5, "")
};
}

12
TSS.Py/.vscode/launch.json поставляемый Normal file
Просмотреть файл

@ -0,0 +1,12 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Python: Current File",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal"
}
]
}

3
TSS.Py/.vscode/settings.json поставляемый Normal file
Просмотреть файл

@ -0,0 +1,3 @@
{
"python.pythonPath": "C:\\Python27\\python.exe"
}

Разница между файлами не показана из-за своего большого размера Загрузить разницу