@@ -150,6 +150,79 @@ enum tpm_sub_capabilities {
150
150
TPM_CAP_PROP_TIS_DURATION = 0x120 ,
151
151
};
152
152
153
+ enum tpm2_pt_props {
154
+ TPM2_PT_NONE = 0x00000000 ,
155
+ TPM2_PT_GROUP = 0x00000100 ,
156
+ TPM2_PT_FIXED = TPM2_PT_GROUP * 1 ,
157
+ TPM2_PT_FAMILY_INDICATOR = TPM2_PT_FIXED + 0 ,
158
+ TPM2_PT_LEVEL = TPM2_PT_FIXED + 1 ,
159
+ TPM2_PT_REVISION = TPM2_PT_FIXED + 2 ,
160
+ TPM2_PT_DAY_OF_YEAR = TPM2_PT_FIXED + 3 ,
161
+ TPM2_PT_YEAR = TPM2_PT_FIXED + 4 ,
162
+ TPM2_PT_MANUFACTURER = TPM2_PT_FIXED + 5 ,
163
+ TPM2_PT_VENDOR_STRING_1 = TPM2_PT_FIXED + 6 ,
164
+ TPM2_PT_VENDOR_STRING_2 = TPM2_PT_FIXED + 7 ,
165
+ TPM2_PT_VENDOR_STRING_3 = TPM2_PT_FIXED + 8 ,
166
+ TPM2_PT_VENDOR_STRING_4 = TPM2_PT_FIXED + 9 ,
167
+ TPM2_PT_VENDOR_TPM_TYPE = TPM2_PT_FIXED + 10 ,
168
+ TPM2_PT_FIRMWARE_VERSION_1 = TPM2_PT_FIXED + 11 ,
169
+ TPM2_PT_FIRMWARE_VERSION_2 = TPM2_PT_FIXED + 12 ,
170
+ TPM2_PT_INPUT_BUFFER = TPM2_PT_FIXED + 13 ,
171
+ TPM2_PT_HR_TRANSIENT_MIN = TPM2_PT_FIXED + 14 ,
172
+ TPM2_PT_HR_PERSISTENT_MIN = TPM2_PT_FIXED + 15 ,
173
+ TPM2_PT_HR_LOADED_MIN = TPM2_PT_FIXED + 16 ,
174
+ TPM2_PT_ACTIVE_SESSIONS_MAX = TPM2_PT_FIXED + 17 ,
175
+ TPM2_PT_PCR_COUNT = TPM2_PT_FIXED + 18 ,
176
+ TPM2_PT_PCR_SELECT_MIN = TPM2_PT_FIXED + 19 ,
177
+ TPM2_PT_CONTEXT_GAP_MAX = TPM2_PT_FIXED + 20 ,
178
+ TPM2_PT_NV_COUNTERS_MAX = TPM2_PT_FIXED + 22 ,
179
+ TPM2_PT_NV_INDEX_MAX = TPM2_PT_FIXED + 23 ,
180
+ TPM2_PT_MEMORY = TPM2_PT_FIXED + 24 ,
181
+ TPM2_PT_CLOCK_UPDATE = TPM2_PT_FIXED + 25 ,
182
+ TPM2_PT_CONTEXT_HASH = TPM2_PT_FIXED + 26 ,
183
+ TPM2_PT_CONTEXT_SYM = TPM2_PT_FIXED + 27 ,
184
+ TPM2_PT_CONTEXT_SYM_SIZE = TPM2_PT_FIXED + 28 ,
185
+ TPM2_PT_ORDERLY_COUNT = TPM2_PT_FIXED + 29 ,
186
+ TPM2_PT_MAX_COMMAND_SIZE = TPM2_PT_FIXED + 30 ,
187
+ TPM2_PT_MAX_RESPONSE_SIZE = TPM2_PT_FIXED + 31 ,
188
+ TPM2_PT_MAX_DIGEST = TPM2_PT_FIXED + 32 ,
189
+ TPM2_PT_MAX_OBJECT_CONTEXT = TPM2_PT_FIXED + 33 ,
190
+ TPM2_PT_MAX_SESSION_CONTEXT = TPM2_PT_FIXED + 34 ,
191
+ TPM2_PT_PS_FAMILY_INDICATOR = TPM2_PT_FIXED + 35 ,
192
+ TPM2_PT_PS_LEVEL = TPM2_PT_FIXED + 36 ,
193
+ TPM2_PT_PS_REVISION = TPM2_PT_FIXED + 37 ,
194
+ TPM2_PT_PS_DAY_OF_YEAR = TPM2_PT_FIXED + 38 ,
195
+ TPM2_PT_PS_YEAR = TPM2_PT_FIXED + 39 ,
196
+ TPM2_PT_SPLIT_MAX = TPM2_PT_FIXED + 40 ,
197
+ TPM2_PT_TOTAL_COMMANDS = TPM2_PT_FIXED + 41 ,
198
+ TPM2_PT_LIBRARY_COMMANDS = TPM2_PT_FIXED + 42 ,
199
+ TPM2_PT_VENDOR_COMMANDS = TPM2_PT_FIXED + 43 ,
200
+ TPM2_PT_NV_BUFFER_MAX = TPM2_PT_FIXED + 44 ,
201
+ TPM2_PT_MODES = TPM2_PT_FIXED + 45 ,
202
+ TPM2_PT_MAX_CAP_BUFFER = TPM2_PT_FIXED + 46 ,
203
+ TPM2_PT_VAR = TPM2_PT_GROUP * 2 ,
204
+ TPM2_PT_PERMANENT = TPM2_PT_VAR + 0 ,
205
+ TPM2_PT_STARTUP_CLEAR = TPM2_PT_VAR + 1 ,
206
+ TPM2_PT_HR_NV_INDEX = TPM2_PT_VAR + 2 ,
207
+ TPM2_PT_HR_LOADED = TPM2_PT_VAR + 3 ,
208
+ TPM2_PT_HR_LOADED_AVAIL = TPM2_PT_VAR + 4 ,
209
+ TPM2_PT_HR_ACTIVE = TPM2_PT_VAR + 5 ,
210
+ TPM2_PT_HR_ACTIVE_AVAIL = TPM2_PT_VAR + 6 ,
211
+ TPM2_PT_HR_TRANSIENT_AVAIL = TPM2_PT_VAR + 7 ,
212
+ TPM2_PT_HR_PERSISTENT = TPM2_PT_VAR + 8 ,
213
+ TPM2_PT_HR_PERSISTENT_AVAIL = TPM2_PT_VAR + 9 ,
214
+ TPM2_PT_NV_COUNTERS = TPM2_PT_VAR + 10 ,
215
+ TPM2_PT_NV_COUNTERS_AVAIL = TPM2_PT_VAR + 11 ,
216
+ TPM2_PT_ALGORITHM_SET = TPM2_PT_VAR + 12 ,
217
+ TPM2_PT_LOADED_CURVES = TPM2_PT_VAR + 13 ,
218
+ TPM2_PT_LOCKOUT_COUNTER = TPM2_PT_VAR + 14 ,
219
+ TPM2_PT_MAX_AUTH_FAIL = TPM2_PT_VAR + 15 ,
220
+ TPM2_PT_LOCKOUT_INTERVAL = TPM2_PT_VAR + 16 ,
221
+ TPM2_PT_LOCKOUT_RECOVERY = TPM2_PT_VAR + 17 ,
222
+ TPM2_PT_NV_WRITE_RECOVERY = TPM2_PT_VAR + 18 ,
223
+ TPM2_PT_AUDIT_COUNTER_0 = TPM2_PT_VAR + 19 ,
224
+ TPM2_PT_AUDIT_COUNTER_1 = TPM2_PT_VAR + 20 ,
225
+ };
153
226
154
227
/* 128 bytes is an arbitrary cap. This could be as large as TPM_BUFSIZE - 18
155
228
* bytes, but 128 is still a relatively large number of random bytes and
0 commit comments