Vadim Bendebury | 5679752 | 2015-05-20 10:32:25 -0700 | [diff] [blame] | 1 | // This file was extracted from the TCG Published |
| 2 | // Trusted Platform Module Library |
| 3 | // Part 4: Supporting Routines |
| 4 | // Family "2.0" |
| 5 | // Level 00 Revision 01.16 |
| 6 | // October 30, 2014 |
| 7 | |
| 8 | static const TPMA_CC s_ccAttr [] = { |
| 9 | {0x011f, 0, 1, 0, 0, 2, 0, 0, 0}, // TPM_CC_NV_UndefineSpaceSpecial |
| 10 | {0x0120, 0, 1, 0, 0, 2, 0, 0, 0}, // TPM_CC_EvictControl |
| 11 | {0x0121, 0, 1, 1, 0, 1, 0, 0, 0}, // TPM_CC_HierarchyControl |
| 12 | {0x0122, 0, 1, 0, 0, 2, 0, 0, 0}, // TPM_CC_NV_UndefineSpace |
| 13 | {0x0123, 0, 0, 0, 0, 0, 0, 0, 0}, // No command |
| 14 | {0x0124, 0, 1, 1, 0, 1, 0, 0, 0}, // TPM_CC_ChangeEPS |
| 15 | {0x0125, 0, 1, 1, 0, 1, 0, 0, 0}, // TPM_CC_ChangePPS |
| 16 | {0x0126, 0, 1, 1, 0, 1, 0, 0, 0}, // TPM_CC_Clear |
| 17 | {0x0127, 0, 1, 0, 0, 1, 0, 0, 0}, // TPM_CC_ClearControl |
| 18 | {0x0128, 0, 1, 0, 0, 1, 0, 0, 0}, // TPM_CC_ClockSet |
| 19 | {0x0129, 0, 1, 0, 0, 1, 0, 0, 0}, // TPM_CC_HierarchyChangeAuth |
| 20 | {0x012a, 0, 1, 0, 0, 1, 0, 0, 0}, // TPM_CC_NV_DefineSpace |
| 21 | {0x012b, 0, 1, 0, 0, 1, 0, 0, 0}, // TPM_CC_PCR_Allocate |
| 22 | {0x012c, 0, 1, 0, 0, 1, 0, 0, 0}, // TPM_CC_PCR_SetAuthPolicy |
| 23 | {0x012d, 0, 1, 0, 0, 1, 0, 0, 0}, // TPM_CC_PP_Commands |
| 24 | {0x012e, 0, 1, 0, 0, 1, 0, 0, 0}, // TPM_CC_SetPrimaryPolicy |
| 25 | {0x012f, 0, 0, 0, 0, 2, 0, 0, 0}, // TPM_CC_FieldUpgradeStart |
| 26 | {0x0130, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_ClockRateAdjust |
| 27 | {0x0131, 0, 0, 0, 0, 1, 1, 0, 0}, // TPM_CC_CreatePrimary |
| 28 | {0x0132, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_NV_GlobalWriteLock |
| 29 | {0x0133, 0, 1, 0, 0, 2, 0, 0, 0}, // TPM_CC_GetCommandAuditDigest |
| 30 | {0x0134, 0, 1, 0, 0, 2, 0, 0, 0}, // TPM_CC_NV_Increment |
| 31 | {0x0135, 0, 1, 0, 0, 2, 0, 0, 0}, // TPM_CC_NV_SetBits |
| 32 | {0x0136, 0, 1, 0, 0, 2, 0, 0, 0}, // TPM_CC_NV_Extend |
| 33 | {0x0137, 0, 1, 0, 0, 2, 0, 0, 0}, // TPM_CC_NV_Write |
| 34 | {0x0138, 0, 1, 0, 0, 2, 0, 0, 0}, // TPM_CC_NV_WriteLock |
| 35 | {0x0139, 0, 1, 0, 0, 1, 0, 0, 0}, // TPM_CC_DictionaryAttackLockReset |
| 36 | {0x013a, 0, 1, 0, 0, 1, 0, 0, 0}, // TPM_CC_DictionaryAttackParameters |
| 37 | {0x013b, 0, 1, 0, 0, 1, 0, 0, 0}, // TPM_CC_NV_ChangeAuth |
| 38 | {0x013c, 0, 1, 0, 0, 1, 0, 0, 0}, // TPM_CC_PCR_Event |
| 39 | {0x013d, 0, 1, 0, 0, 1, 0, 0, 0}, // TPM_CC_PCR_Reset |
| 40 | {0x013e, 0, 0, 0, 1, 1, 0, 0, 0}, // TPM_CC_SequenceComplete |
| 41 | {0x013f, 0, 1, 0, 0, 1, 0, 0, 0}, // TPM_CC_SetAlgorithmSet |
| 42 | {0x0140, 0, 1, 0, 0, 1, 0, 0, 0}, // TPM_CC_SetCommandCodeAuditStatus |
| 43 | {0x0141, 0, 1, 0, 0, 0, 0, 0, 0}, // TPM_CC_FieldUpgradeData |
| 44 | {0x0142, 0, 1, 0, 0, 0, 0, 0, 0}, // TPM_CC_IncrementalSelfTest |
| 45 | {0x0143, 0, 1, 0, 0, 0, 0, 0, 0}, // TPM_CC_SelfTest |
| 46 | {0x0144, 0, 1, 0, 0, 0, 0, 0, 0}, // TPM_CC_Startup |
| 47 | {0x0145, 0, 1, 0, 0, 0, 0, 0, 0}, // TPM_CC_Shutdown |
| 48 | {0x0146, 0, 1, 0, 0, 0, 0, 0, 0}, // TPM_CC_StirRandom |
| 49 | {0x0147, 0, 0, 0, 0, 2, 0, 0, 0}, // TPM_CC_ActivateCredential |
| 50 | {0x0148, 0, 0, 0, 0, 2, 0, 0, 0}, // TPM_CC_Certify |
| 51 | {0x0149, 0, 0, 0, 0, 3, 0, 0, 0}, // TPM_CC_PolicyNV |
| 52 | {0x014a, 0, 0, 0, 0, 2, 0, 0, 0}, // TPM_CC_CertifyCreation |
| 53 | {0x014b, 0, 0, 0, 0, 2, 0, 0, 0}, // TPM_CC_Duplicate |
| 54 | {0x014c, 0, 0, 0, 0, 2, 0, 0, 0}, // TPM_CC_GetTime |
| 55 | {0x014d, 0, 0, 0, 0, 3, 0, 0, 0}, // TPM_CC_GetSessionAuditDigest |
| 56 | {0x014e, 0, 0, 0, 0, 2, 0, 0, 0}, // TPM_CC_NV_Read |
| 57 | {0x014f, 0, 0, 0, 0, 2, 0, 0, 0}, // TPM_CC_NV_ReadLock |
| 58 | {0x0150, 0, 0, 0, 0, 2, 0, 0, 0}, // TPM_CC_ObjectChangeAuth |
| 59 | {0x0151, 0, 0, 0, 0, 2, 0, 0, 0}, // TPM_CC_PolicySecret |
| 60 | {0x0152, 0, 0, 0, 0, 2, 0, 0, 0}, // TPM_CC_Rewrap |
| 61 | {0x0153, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_Create |
| 62 | {0x0154, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_ECDH_ZGen |
| 63 | {0x0155, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_HMAC |
| 64 | {0x0156, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_Import |
| 65 | {0x0157, 0, 0, 0, 0, 1, 1, 0, 0}, // TPM_CC_Load |
| 66 | {0x0158, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_Quote |
| 67 | {0x0159, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_RSA_Decrypt |
| 68 | {0x015a, 0, 0, 0, 0, 0, 0, 0, 0}, // No command |
| 69 | {0x015b, 0, 0, 0, 0, 1, 1, 0, 0}, // TPM_CC_HMAC_Start |
| 70 | {0x015c, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_SequenceUpdate |
| 71 | {0x015d, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_Sign |
| 72 | {0x015e, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_Unseal |
| 73 | {0x015f, 0, 0, 0, 0, 0, 0, 0, 0}, // No command |
| 74 | {0x0160, 0, 0, 0, 0, 2, 0, 0, 0}, // TPM_CC_PolicySigned |
| 75 | {0x0161, 0, 0, 0, 0, 0, 1, 0, 0}, // TPM_CC_ContextLoad |
| 76 | {0x0162, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_ContextSave |
| 77 | {0x0163, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_ECDH_KeyGen |
| 78 | {0x0164, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_EncryptDecrypt |
| 79 | {0x0165, 0, 0, 0, 0, 0, 0, 0, 0}, // TPM_CC_FlushContext |
| 80 | {0x0166, 0, 0, 0, 0, 0, 0, 0, 0}, // No command |
| 81 | {0x0167, 0, 0, 0, 0, 0, 1, 0, 0}, // TPM_CC_LoadExternal |
| 82 | {0x0168, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_MakeCredential |
| 83 | {0x0169, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_NV_ReadPublic |
| 84 | {0x016a, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_PolicyAuthorize |
| 85 | {0x016b, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_PolicyAuthValue |
| 86 | {0x016c, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_PolicyCommandCode |
| 87 | {0x016d, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_PolicyCounterTimer |
| 88 | {0x016e, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_PolicyCpHash |
| 89 | {0x016f, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_PolicyLocality |
| 90 | {0x0170, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_PolicyNameHash |
| 91 | {0x0171, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_PolicyOR |
| 92 | {0x0172, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_PolicyTicket |
| 93 | {0x0173, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_ReadPublic |
| 94 | {0x0174, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_RSA_Encrypt |
| 95 | {0x0175, 0, 0, 0, 0, 0, 0, 0, 0}, // No command |
| 96 | {0x0176, 0, 0, 0, 0, 2, 1, 0, 0}, // TPM_CC_StartAuthSession |
| 97 | {0x0177, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_VerifySignature |
| 98 | {0x0178, 0, 0, 0, 0, 0, 0, 0, 0}, // TPM_CC_ECC_Parameters |
| 99 | {0x0179, 0, 0, 0, 0, 0, 0, 0, 0}, // TPM_CC_FirmwareRead |
| 100 | {0x017a, 0, 0, 0, 0, 0, 0, 0, 0}, // TPM_CC_GetCapability |
| 101 | {0x017b, 0, 0, 0, 0, 0, 0, 0, 0}, // TPM_CC_GetRandom |
| 102 | {0x017c, 0, 0, 0, 0, 0, 0, 0, 0}, // TPM_CC_GetTestResult |
| 103 | {0x017d, 0, 0, 0, 0, 0, 0, 0, 0}, // TPM_CC_Hash |
| 104 | {0x017e, 0, 0, 0, 0, 0, 0, 0, 0}, // TPM_CC_PCR_Read |
| 105 | {0x017f, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_PolicyPCR |
| 106 | {0x0180, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_PolicyRestart |
| 107 | {0x0181, 0, 0, 0, 0, 0, 0, 0, 0}, // TPM_CC_ReadClock |
| 108 | {0x0182, 0, 1, 0, 0, 1, 0, 0, 0}, // TPM_CC_PCR_Extend |
| 109 | {0x0183, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_PCR_SetAuthValue |
| 110 | {0x0184, 0, 0, 0, 0, 3, 0, 0, 0}, // TPM_CC_NV_Certify |
| 111 | {0x0185, 0, 1, 0, 1, 2, 0, 0, 0}, // TPM_CC_EventSequenceComplete |
| 112 | {0x0186, 0, 0, 0, 0, 0, 1, 0, 0}, // TPM_CC_HashSequenceStart |
| 113 | {0x0187, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_PolicyPhysicalPresence |
| 114 | {0x0188, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_PolicyDuplicationSelect |
| 115 | {0x0189, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_PolicyGetDigest |
| 116 | {0x018a, 0, 0, 0, 0, 0, 0, 0, 0}, // TPM_CC_TestParms |
| 117 | {0x018b, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_Commit |
| 118 | {0x018c, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_PolicyPassword |
| 119 | {0x018d, 0, 0, 0, 0, 1, 0, 0, 0}, // TPM_CC_ZGen_2Phase |
| 120 | {0x018e, 0, 0, 0, 0, 0, 0, 0, 0}, // TPM_CC_EC_Ephemeral |
| 121 | {0x018f, 0, 0, 0, 0, 1, 0, 0, 0} // TPM_CC_PolicyNvWritten |
| 122 | }; |
| 123 | typedef UINT16 _ATTR_; |
| 124 | #define NOT_IMPLEMENTED (_ATTR_)(0) |
| 125 | #define ENCRYPT_2 (_ATTR_)(1 << 0) |
| 126 | #define ENCRYPT_4 (_ATTR_)(1 << 1) |
| 127 | #define DECRYPT_2 (_ATTR_)(1 << 2) |
| 128 | #define DECRYPT_4 (_ATTR_)(1 << 3) |
| 129 | #define HANDLE_1_USER (_ATTR_)(1 << 4) |
| 130 | #define HANDLE_1_ADMIN (_ATTR_)(1 << 5) |
| 131 | #define HANDLE_1_DUP (_ATTR_)(1 << 6) |
| 132 | #define HANDLE_2_USER (_ATTR_)(1 << 7) |
| 133 | #define PP_COMMAND (_ATTR_)(1 << 8) |
| 134 | #define IS_IMPLEMENTED (_ATTR_)(1 << 9) |
| 135 | #define NO_SESSIONS (_ATTR_)(1 << 10) |
| 136 | #define NV_COMMAND (_ATTR_)(1 << 11) |
| 137 | #define PP_REQUIRED (_ATTR_)(1 << 12) |
| 138 | #define R_HANDLE (_ATTR_)(1 << 13) |
| 139 | // |
| 140 | // This is the command code attribute structure. |
| 141 | // |
| 142 | typedef UINT16 COMMAND_ATTRIBUTES; |
| 143 | static const COMMAND_ATTRIBUTES s_commandAttributes [] = { |
| 144 | (_ATTR_)(CC_NV_UndefineSpaceSpecial * |
| 145 | (IS_IMPLEMENTED+HANDLE_1_ADMIN+HANDLE_2_USER+PP_COMMAND)), // 0x011f |
| 146 | (_ATTR_)(CC_EvictControl * |
| 147 | (IS_IMPLEMENTED+HANDLE_1_USER+PP_COMMAND)), // 0x0120 |
| 148 | (_ATTR_)(CC_HierarchyControl * |
| 149 | (IS_IMPLEMENTED+HANDLE_1_USER+PP_COMMAND)), // 0x0121 |
| 150 | (_ATTR_)(CC_NV_UndefineSpace * |
| 151 | (IS_IMPLEMENTED+HANDLE_1_USER+PP_COMMAND)), // 0x0122 |
| 152 | (_ATTR_) (NOT_IMPLEMENTED), |
| 153 | // 0x0123 - Not assigned |
| 154 | (_ATTR_)(CC_ChangeEPS * |
| 155 | (IS_IMPLEMENTED+HANDLE_1_USER+PP_COMMAND)), // 0x0124 |
| 156 | (_ATTR_)(CC_ChangePPS * |
| 157 | (IS_IMPLEMENTED+HANDLE_1_USER+PP_COMMAND)), // 0x0125 |
| 158 | (_ATTR_)(CC_Clear * |
| 159 | (IS_IMPLEMENTED+HANDLE_1_USER+PP_COMMAND)), // 0x0126 |
| 160 | (_ATTR_)(CC_ClearControl * |
| 161 | (IS_IMPLEMENTED+HANDLE_1_USER+PP_COMMAND)), // 0x0127 |
| 162 | (_ATTR_)(CC_ClockSet * |
| 163 | (IS_IMPLEMENTED+HANDLE_1_USER+PP_COMMAND)), // 0x0128 |
| 164 | (_ATTR_)(CC_HierarchyChangeAuth * |
| 165 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+PP_COMMAND)), // 0x0129 |
| 166 | (_ATTR_)(CC_NV_DefineSpace * |
| 167 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+PP_COMMAND)), // 0x012a |
| 168 | (_ATTR_)(CC_PCR_Allocate * |
| 169 | (IS_IMPLEMENTED+HANDLE_1_USER+PP_COMMAND)), // 0x012b |
| 170 | (_ATTR_)(CC_PCR_SetAuthPolicy * |
| 171 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+PP_COMMAND)), // 0x012c |
| 172 | (_ATTR_)(CC_PP_Commands * |
| 173 | (IS_IMPLEMENTED+HANDLE_1_USER+PP_REQUIRED)), // 0x012d |
| 174 | (_ATTR_)(CC_SetPrimaryPolicy * |
| 175 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+PP_COMMAND)), // 0x012e |
| 176 | (_ATTR_)(CC_FieldUpgradeStart * |
| 177 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_ADMIN+PP_COMMAND)), // 0x012f |
| 178 | (_ATTR_)(CC_ClockRateAdjust * |
| 179 | (IS_IMPLEMENTED+HANDLE_1_USER+PP_COMMAND)), // 0x0130 |
| 180 | // |
| 181 | (_ATTR_)(CC_CreatePrimary * |
| 182 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+PP_COMMAND+ENCRYPT_2+R_HANDLE)), // 0x0131 |
| 183 | (_ATTR_)(CC_NV_GlobalWriteLock * |
| 184 | (IS_IMPLEMENTED+HANDLE_1_USER+PP_COMMAND)), // 0x0132 |
| 185 | (_ATTR_)(CC_GetCommandAuditDigest * |
| 186 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+HANDLE_2_USER+ENCRYPT_2)), // 0x0133 |
| 187 | (_ATTR_)(CC_NV_Increment * (IS_IMPLEMENTED+HANDLE_1_USER)), |
| 188 | // 0x0134 |
| 189 | (_ATTR_)(CC_NV_SetBits * (IS_IMPLEMENTED+HANDLE_1_USER)), |
| 190 | // 0x0135 |
| 191 | (_ATTR_)(CC_NV_Extend * |
| 192 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER)), // 0x0136 |
| 193 | (_ATTR_)(CC_NV_Write * |
| 194 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER)), // 0x0137 |
| 195 | (_ATTR_)(CC_NV_WriteLock * (IS_IMPLEMENTED+HANDLE_1_USER)), |
| 196 | // 0x0138 |
| 197 | (_ATTR_)(CC_DictionaryAttackLockReset * (IS_IMPLEMENTED+HANDLE_1_USER)), |
| 198 | // 0x0139 |
| 199 | (_ATTR_)(CC_DictionaryAttackParameters * (IS_IMPLEMENTED+HANDLE_1_USER)), |
| 200 | // 0x013a |
| 201 | (_ATTR_)(CC_NV_ChangeAuth * |
| 202 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_ADMIN)), // 0x013b |
| 203 | (_ATTR_)(CC_PCR_Event * |
| 204 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER)), // 0x013c |
| 205 | (_ATTR_)(CC_PCR_Reset * (IS_IMPLEMENTED+HANDLE_1_USER)), |
| 206 | // 0x013d |
| 207 | (_ATTR_)(CC_SequenceComplete * |
| 208 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+ENCRYPT_2)), // 0x013e |
| 209 | (_ATTR_)(CC_SetAlgorithmSet * (IS_IMPLEMENTED+HANDLE_1_USER)), |
| 210 | // 0x013f |
| 211 | (_ATTR_)(CC_SetCommandCodeAuditStatus * |
| 212 | (IS_IMPLEMENTED+HANDLE_1_USER+PP_COMMAND)), // 0x0140 |
| 213 | (_ATTR_)(CC_FieldUpgradeData * (IS_IMPLEMENTED+DECRYPT_2)), |
| 214 | // 0x0141 |
| 215 | (_ATTR_)(CC_IncrementalSelfTest * (IS_IMPLEMENTED)), |
| 216 | // 0x0142 |
| 217 | (_ATTR_)(CC_SelfTest * (IS_IMPLEMENTED)), |
| 218 | // 0x0143 |
| 219 | (_ATTR_)(CC_Startup * (IS_IMPLEMENTED+NO_SESSIONS)), |
| 220 | // 0x0144 |
| 221 | (_ATTR_)(CC_Shutdown * (IS_IMPLEMENTED)), |
| 222 | // 0x0145 |
| 223 | (_ATTR_)(CC_StirRandom * (IS_IMPLEMENTED+DECRYPT_2)), |
| 224 | // 0x0146 |
| 225 | (_ATTR_)(CC_ActivateCredential * |
| 226 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_ADMIN+HANDLE_2_USER+ENCRYPT_2)), // 0x0147 |
| 227 | (_ATTR_)(CC_Certify * |
| 228 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_ADMIN+HANDLE_2_USER+ENCRYPT_2)), // 0x0148 |
| 229 | (_ATTR_)(CC_PolicyNV * |
| 230 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER)), // 0x0149 |
| 231 | (_ATTR_)(CC_CertifyCreation * |
| 232 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+ENCRYPT_2)), // 0x014a |
| 233 | (_ATTR_)(CC_Duplicate * |
| 234 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_DUP+ENCRYPT_2)), // 0x014b |
| 235 | (_ATTR_)(CC_GetTime * |
| 236 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+HANDLE_2_USER+ENCRYPT_2)), // 0x014c |
| 237 | (_ATTR_)(CC_GetSessionAuditDigest * |
| 238 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+HANDLE_2_USER+ENCRYPT_2)), // 0x014d |
| 239 | (_ATTR_)(CC_NV_Read * |
| 240 | (IS_IMPLEMENTED+HANDLE_1_USER+ENCRYPT_2)), // 0x014e |
| 241 | (_ATTR_)(CC_NV_ReadLock * (IS_IMPLEMENTED+HANDLE_1_USER)), |
| 242 | // 0x014f |
| 243 | (_ATTR_)(CC_ObjectChangeAuth * |
| 244 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_ADMIN+ENCRYPT_2)), // 0x0150 |
| 245 | (_ATTR_)(CC_PolicySecret * |
| 246 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+ENCRYPT_2)), // 0x0151 |
| 247 | (_ATTR_)(CC_Rewrap * |
| 248 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+ENCRYPT_2)), // 0x0152 |
| 249 | (_ATTR_)(CC_Create * |
| 250 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+ENCRYPT_2)), // 0x0153 |
| 251 | (_ATTR_)(CC_ECDH_ZGen * |
| 252 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+ENCRYPT_2)), // 0x0154 |
| 253 | (_ATTR_)(CC_HMAC * |
| 254 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+ENCRYPT_2)), // 0x0155 |
| 255 | (_ATTR_)(CC_Import * |
| 256 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+ENCRYPT_2)), // 0x0156 |
| 257 | (_ATTR_)(CC_Load * |
| 258 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+ENCRYPT_2+R_HANDLE)), // 0x0157 |
| 259 | (_ATTR_)(CC_Quote * |
| 260 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+ENCRYPT_2)), // 0x0158 |
| 261 | (_ATTR_)(CC_RSA_Decrypt * |
| 262 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+ENCRYPT_2)), // 0x0159 |
| 263 | (_ATTR_) (NOT_IMPLEMENTED), |
| 264 | // 0x015a - Not assigned |
| 265 | (_ATTR_)(CC_HMAC_Start * |
| 266 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+R_HANDLE)), // 0x015b |
| 267 | (_ATTR_)(CC_SequenceUpdate * |
| 268 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER)), // 0x015c |
| 269 | (_ATTR_)(CC_Sign * |
| 270 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER)), // 0x015d |
| 271 | (_ATTR_)(CC_Unseal * |
| 272 | (IS_IMPLEMENTED+HANDLE_1_USER+ENCRYPT_2)), // 0x015e |
| 273 | (_ATTR_) (NOT_IMPLEMENTED), |
| 274 | // 0x015f - Not assigned |
| 275 | (_ATTR_)(CC_PolicySigned * (IS_IMPLEMENTED+DECRYPT_2+ENCRYPT_2)), |
| 276 | // 0x0160 |
| 277 | (_ATTR_)(CC_ContextLoad * (IS_IMPLEMENTED+NO_SESSIONS+R_HANDLE)), |
| 278 | // 0x0161 |
| 279 | (_ATTR_)(CC_ContextSave * (IS_IMPLEMENTED+NO_SESSIONS)), |
| 280 | // 0x0162 |
| 281 | (_ATTR_)(CC_ECDH_KeyGen * (IS_IMPLEMENTED+ENCRYPT_2)), |
| 282 | // 0x0163 |
| 283 | (_ATTR_)(CC_EncryptDecrypt * |
| 284 | (IS_IMPLEMENTED+HANDLE_1_USER+ENCRYPT_2)), // 0x0164 |
| 285 | (_ATTR_)(CC_FlushContext * (IS_IMPLEMENTED+NO_SESSIONS)), |
| 286 | // 0x0165 |
| 287 | (_ATTR_) (NOT_IMPLEMENTED), |
| 288 | // 0x0166 - Not assigned |
| 289 | (_ATTR_)(CC_LoadExternal * |
| 290 | (IS_IMPLEMENTED+DECRYPT_2+ENCRYPT_2+R_HANDLE)), // 0x0167 |
| 291 | (_ATTR_)(CC_MakeCredential * (IS_IMPLEMENTED+DECRYPT_2+ENCRYPT_2)), |
| 292 | // 0x0168 |
| 293 | (_ATTR_)(CC_NV_ReadPublic * (IS_IMPLEMENTED+ENCRYPT_2)), |
| 294 | // 0x0169 |
| 295 | (_ATTR_)(CC_PolicyAuthorize * (IS_IMPLEMENTED+DECRYPT_2)), |
| 296 | // 0x016a |
| 297 | (_ATTR_)(CC_PolicyAuthValue * (IS_IMPLEMENTED)), |
| 298 | // 0x016b |
| 299 | (_ATTR_)(CC_PolicyCommandCode * (IS_IMPLEMENTED)), |
| 300 | // 0x016c |
| 301 | (_ATTR_)(CC_PolicyCounterTimer * (IS_IMPLEMENTED+DECRYPT_2)), |
| 302 | // 0x016d |
| 303 | (_ATTR_)(CC_PolicyCpHash * (IS_IMPLEMENTED+DECRYPT_2)), |
| 304 | // 0x016e |
| 305 | (_ATTR_)(CC_PolicyLocality * (IS_IMPLEMENTED)), |
| 306 | // 0x016f |
| 307 | (_ATTR_)(CC_PolicyNameHash * (IS_IMPLEMENTED+DECRYPT_2)), |
| 308 | // 0x0170 |
| 309 | (_ATTR_)(CC_PolicyOR * (IS_IMPLEMENTED)), |
| 310 | // 0x0171 |
| 311 | (_ATTR_)(CC_PolicyTicket * (IS_IMPLEMENTED+DECRYPT_2)), |
| 312 | // 0x0172 |
| 313 | (_ATTR_)(CC_ReadPublic * (IS_IMPLEMENTED+ENCRYPT_2)), |
| 314 | // 0x0173 |
| 315 | (_ATTR_)(CC_RSA_Encrypt * (IS_IMPLEMENTED+DECRYPT_2+ENCRYPT_2)), |
| 316 | // 0x0174 |
| 317 | (_ATTR_) (NOT_IMPLEMENTED), |
| 318 | // 0x0175 - Not assigned |
| 319 | (_ATTR_)(CC_StartAuthSession * |
| 320 | (IS_IMPLEMENTED+DECRYPT_2+ENCRYPT_2+R_HANDLE)), // 0x0176 |
| 321 | (_ATTR_)(CC_VerifySignature * (IS_IMPLEMENTED+DECRYPT_2)), |
| 322 | // 0x0177 |
| 323 | (_ATTR_)(CC_ECC_Parameters * (IS_IMPLEMENTED)), |
| 324 | // 0x0178 |
| 325 | (_ATTR_)(CC_FirmwareRead * (IS_IMPLEMENTED+ENCRYPT_2)), |
| 326 | // 0x0179 |
| 327 | (_ATTR_)(CC_GetCapability * (IS_IMPLEMENTED)), |
| 328 | // 0x017a |
| 329 | (_ATTR_)(CC_GetRandom * (IS_IMPLEMENTED+ENCRYPT_2)), |
| 330 | // 0x017b |
| 331 | (_ATTR_)(CC_GetTestResult * (IS_IMPLEMENTED+ENCRYPT_2)), |
| 332 | // 0x017c |
| 333 | (_ATTR_)(CC_Hash * (IS_IMPLEMENTED+DECRYPT_2+ENCRYPT_2)), |
| 334 | // 0x017d |
| 335 | (_ATTR_)(CC_PCR_Read * (IS_IMPLEMENTED)), |
| 336 | // 0x017e |
| 337 | (_ATTR_)(CC_PolicyPCR * (IS_IMPLEMENTED+DECRYPT_2)), |
| 338 | // 0x017f |
| 339 | (_ATTR_)(CC_PolicyRestart * (IS_IMPLEMENTED)), |
| 340 | // 0x0180 |
| 341 | (_ATTR_)(CC_ReadClock * (IS_IMPLEMENTED+NO_SESSIONS)), |
| 342 | // 0x0181 |
| 343 | (_ATTR_)(CC_PCR_Extend * (IS_IMPLEMENTED+HANDLE_1_USER)), |
| 344 | // 0x0182 |
| 345 | (_ATTR_)(CC_PCR_SetAuthValue * |
| 346 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER)), // 0x0183 |
| 347 | (_ATTR_)(CC_NV_Certify * |
| 348 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+HANDLE_2_USER+ENCRYPT_2)), // 0x0184 |
| 349 | (_ATTR_)(CC_EventSequenceComplete * |
| 350 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+HANDLE_2_USER)), // 0x0185 |
| 351 | (_ATTR_)(CC_HashSequenceStart * (IS_IMPLEMENTED+DECRYPT_2+R_HANDLE)), |
| 352 | // 0x0186 |
| 353 | (_ATTR_)(CC_PolicyPhysicalPresence * (IS_IMPLEMENTED)), |
| 354 | // 0x0187 |
| 355 | (_ATTR_)(CC_PolicyDuplicationSelect * (IS_IMPLEMENTED+DECRYPT_2)), |
| 356 | // 0x0188 |
| 357 | (_ATTR_)(CC_PolicyGetDigest * (IS_IMPLEMENTED+ENCRYPT_2)), |
| 358 | // 0x0189 |
| 359 | (_ATTR_)(CC_TestParms * (IS_IMPLEMENTED)), |
| 360 | // 0x018a |
| 361 | (_ATTR_)(CC_Commit * |
| 362 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+ENCRYPT_2)), // 0x018b |
| 363 | (_ATTR_)(CC_PolicyPassword * (IS_IMPLEMENTED)), |
| 364 | // 0x018c |
| 365 | (_ATTR_)(CC_ZGen_2Phase * |
| 366 | (IS_IMPLEMENTED+DECRYPT_2+HANDLE_1_USER+ENCRYPT_2)), // 0x018d |
| 367 | (_ATTR_)(CC_EC_Ephemeral * (IS_IMPLEMENTED+ENCRYPT_2)), |
| 368 | // 0x018e |
| 369 | (_ATTR_)(CC_PolicyNvWritten * (IS_IMPLEMENTED)) |
| 370 | // 0x018f |
| 371 | }; |