Lines Matching refs:cmd
54 static void AddVisibleField(Command* cmd, const char* name, int offset) { in AddVisibleField() argument
56 if (cmd->fields != NULL) { in AddVisibleField()
59 fld->next = cmd->fields; in AddVisibleField()
60 cmd->fields = fld; in AddVisibleField()
69 static void AddInitializedField(Command* cmd, int offset, in AddInitializedField() argument
72 fld->next = cmd->fields; in AddInitializedField()
73 cmd->fields = fld; in AddInitializedField()
84 Command* cmd = (Command*) calloc(1, sizeof(Command)); in newCommandWithTag() local
85 cmd->size = size; in newCommandWithTag()
86 AddInitializedField(cmd, 0, sizeof(TPM_TAG), tag); in newCommandWithTag()
87 AddInitializedField(cmd, sizeof(TPM_TAG), sizeof(uint32_t), size); in newCommandWithTag()
88 AddInitializedField(cmd, sizeof(TPM_TAG) + sizeof(uint32_t), in newCommandWithTag()
90 return cmd; in newCommandWithTag()
121 Command* cmd = newCommand(TPM_ORD_NV_DefineSpace, size); in BuildDefineSpaceCommand() local
122 cmd->name = "tpm_nv_definespace_cmd"; in BuildDefineSpaceCommand()
124 AddVisibleField(cmd, "index", nv_index); in BuildDefineSpaceCommand()
125 AddVisibleField(cmd, "pcr_info_read", nv_pcr_info_read); in BuildDefineSpaceCommand()
126 AddVisibleField(cmd, "pcr_info_write", nv_pcr_info_write); in BuildDefineSpaceCommand()
127 AddVisibleField(cmd, "perm", nv_permission_attributes); in BuildDefineSpaceCommand()
128 AddVisibleField(cmd, "size", nv_datasize); in BuildDefineSpaceCommand()
130 AddInitializedField(cmd, nv_data_public, sizeof(uint16_t), in BuildDefineSpaceCommand()
132 AddInitializedField(cmd, nv_pcr_info_read, sizeof(uint16_t), 3); in BuildDefineSpaceCommand()
133 AddInitializedField(cmd, read_locality, sizeof(TPM_LOCALITY_SELECTION), in BuildDefineSpaceCommand()
135 AddInitializedField(cmd, nv_pcr_info_write, sizeof(uint16_t), 3); in BuildDefineSpaceCommand()
136 AddInitializedField(cmd, write_locality, sizeof(TPM_LOCALITY_SELECTION), in BuildDefineSpaceCommand()
138 AddInitializedField(cmd, nv_permission_tag, sizeof(TPM_STRUCTURE_TAG), in BuildDefineSpaceCommand()
140 return cmd; in BuildDefineSpaceCommand()
146 Command* cmd = newCommand(TPM_ORD_NV_WriteValue, 0); in BuildWriteCommand() local
147 cmd->name = "tpm_nv_write_cmd"; in BuildWriteCommand()
148 cmd->max_size = TPM_LARGE_ENOUGH_COMMAND_SIZE; in BuildWriteCommand()
149 AddVisibleField(cmd, "index", kTpmRequestHeaderLength); in BuildWriteCommand()
150 AddVisibleField(cmd, "length", kTpmRequestHeaderLength + 8); in BuildWriteCommand()
151 AddVisibleField(cmd, "data", kTpmRequestHeaderLength + 12); in BuildWriteCommand()
152 return cmd; in BuildWriteCommand()
157 Command* cmd = newCommand(TPM_ORD_NV_ReadValue, size); in BuildReadCommand() local
158 cmd->name = "tpm_nv_read_cmd"; in BuildReadCommand()
159 AddVisibleField(cmd, "index", kTpmRequestHeaderLength); in BuildReadCommand()
160 AddVisibleField(cmd, "length", kTpmRequestHeaderLength + 8); in BuildReadCommand()
161 return cmd; in BuildReadCommand()
166 Command* cmd = newCommand(TPM_ORD_PcrRead, size); in BuildPCRReadCommand() local
167 cmd->name = "tpm_pcr_read_cmd"; in BuildPCRReadCommand()
168 AddVisibleField(cmd, "pcrNum", kTpmRequestHeaderLength); in BuildPCRReadCommand()
169 return cmd; in BuildPCRReadCommand()
174 Command* cmd = newCommand(TSC_ORD_PhysicalPresence, size); in BuildPPAssertCommand() local
175 cmd->name = "tpm_ppassert_cmd"; in BuildPPAssertCommand()
176 AddInitializedField(cmd, kTpmRequestHeaderLength, in BuildPPAssertCommand()
179 return cmd; in BuildPPAssertCommand()
184 Command* cmd = newCommand(TSC_ORD_PhysicalPresence, size); in BuildPPEnableCommand() local
185 cmd->name = "tpm_ppenable_cmd"; in BuildPPEnableCommand()
186 AddInitializedField(cmd, kTpmRequestHeaderLength, in BuildPPEnableCommand()
189 return cmd; in BuildPPEnableCommand()
194 Command* cmd = newCommand(TSC_ORD_PhysicalPresence, size); in BuildFinalizePPCommand() local
195 cmd->name = "tpm_finalizepp_cmd"; in BuildFinalizePPCommand()
196 AddInitializedField(cmd, kTpmRequestHeaderLength, in BuildFinalizePPCommand()
201 return cmd; in BuildFinalizePPCommand()
206 Command* cmd = newCommand(TSC_ORD_PhysicalPresence, size); in BuildPPLockCommand() local
207 cmd->name = "tpm_pplock_cmd"; in BuildPPLockCommand()
208 AddInitializedField(cmd, kTpmRequestHeaderLength, in BuildPPLockCommand()
211 return cmd; in BuildPPLockCommand()
216 Command* cmd = newCommand(TPM_ORD_Startup, size); in BuildStartupCommand() local
217 cmd->name = "tpm_startup_cmd"; in BuildStartupCommand()
218 AddInitializedField(cmd, kTpmRequestHeaderLength, in BuildStartupCommand()
221 return cmd; in BuildStartupCommand()
226 Command* cmd = newCommand(TPM_ORD_SaveState, size); in BuildSaveStateCommand() local
227 cmd->name = "tpm_savestate_cmd"; in BuildSaveStateCommand()
228 return cmd; in BuildSaveStateCommand()
233 Command* cmd = newCommand(TPM_ORD_Startup, size); in BuildResumeCommand() local
234 cmd->name = "tpm_resume_cmd"; in BuildResumeCommand()
235 AddInitializedField(cmd, kTpmRequestHeaderLength, in BuildResumeCommand()
238 return cmd; in BuildResumeCommand()
243 Command* cmd = newCommand(TPM_ORD_SelfTestFull, size); in BuildSelftestfullCommand() local
244 cmd->name = "tpm_selftestfull_cmd"; in BuildSelftestfullCommand()
245 return cmd; in BuildSelftestfullCommand()
250 Command* cmd = newCommand(TPM_ORD_ContinueSelfTest, size); in BuildContinueSelfTestCommand() local
251 cmd->name = "tpm_continueselftest_cmd"; in BuildContinueSelfTestCommand()
252 return cmd; in BuildContinueSelfTestCommand()
257 Command* cmd = newCommand(TPM_ORD_ReadPubek, size); in BuildReadPubekCommand() local
258 cmd->name = "tpm_readpubek_cmd"; in BuildReadPubekCommand()
259 AddVisibleField(cmd, "antiReplay", kTpmRequestHeaderLength); in BuildReadPubekCommand()
260 return cmd; in BuildReadPubekCommand()
265 Command* cmd = newCommand(TPM_ORD_ForceClear, size); in BuildForceClearCommand() local
266 cmd->name = "tpm_forceclear_cmd"; in BuildForceClearCommand()
267 return cmd; in BuildForceClearCommand()
272 Command* cmd = newCommand(TPM_ORD_PhysicalEnable, size); in BuildPhysicalEnableCommand() local
273 cmd->name = "tpm_physicalenable_cmd"; in BuildPhysicalEnableCommand()
274 return cmd; in BuildPhysicalEnableCommand()
279 Command* cmd = newCommand(TPM_ORD_PhysicalDisable, size); in BuildPhysicalDisableCommand() local
280 cmd->name = "tpm_physicaldisable_cmd"; in BuildPhysicalDisableCommand()
281 return cmd; in BuildPhysicalDisableCommand()
286 Command* cmd = newCommand(TPM_ORD_PhysicalSetDeactivated, size); in BuildPhysicalSetDeactivatedCommand() local
287 cmd->name = "tpm_physicalsetdeactivated_cmd"; in BuildPhysicalSetDeactivatedCommand()
288 AddVisibleField(cmd, "deactivated", kTpmRequestHeaderLength); in BuildPhysicalSetDeactivatedCommand()
289 return cmd; in BuildPhysicalSetDeactivatedCommand()
294 Command* cmd = newCommand(TPM_ORD_Extend, size); in BuildExtendCommand() local
295 cmd->name = "tpm_extend_cmd"; in BuildExtendCommand()
296 AddVisibleField(cmd, "pcrNum", kTpmRequestHeaderLength); in BuildExtendCommand()
297 AddVisibleField(cmd, "inDigest", kTpmRequestHeaderLength + sizeof(uint32_t)); in BuildExtendCommand()
298 return cmd; in BuildExtendCommand()
307 Command* cmd = newCommand(TPM_ORD_GetCapability, size); in BuildGetFlagsCommand() local
308 cmd->name = "tpm_getflags_cmd"; in BuildGetFlagsCommand()
309 AddInitializedField(cmd, kTpmRequestHeaderLength, in BuildGetFlagsCommand()
311 AddInitializedField(cmd, kTpmRequestHeaderLength + in BuildGetFlagsCommand()
314 AddInitializedField(cmd, kTpmRequestHeaderLength + in BuildGetFlagsCommand()
317 return cmd; in BuildGetFlagsCommand()
326 Command* cmd = newCommand(TPM_ORD_GetCapability, size); in BuildGetSTClearFlagsCommand() local
327 cmd->name = "tpm_getstclearflags_cmd"; in BuildGetSTClearFlagsCommand()
328 AddInitializedField(cmd, kTpmRequestHeaderLength, in BuildGetSTClearFlagsCommand()
330 AddInitializedField(cmd, kTpmRequestHeaderLength + in BuildGetSTClearFlagsCommand()
333 AddInitializedField(cmd, kTpmRequestHeaderLength + in BuildGetSTClearFlagsCommand()
336 return cmd; in BuildGetSTClearFlagsCommand()
345 Command* cmd = newCommand(TPM_ORD_GetCapability, size); in BuildGetSpaceInfoCommand() local
346 cmd->name = "tpm_getspaceinfo_cmd"; in BuildGetSpaceInfoCommand()
347 AddInitializedField(cmd, kTpmRequestHeaderLength, in BuildGetSpaceInfoCommand()
349 AddInitializedField(cmd, kTpmRequestHeaderLength + in BuildGetSpaceInfoCommand()
352 AddVisibleField(cmd, "index", kTpmRequestHeaderLength + in BuildGetSpaceInfoCommand()
354 return cmd; in BuildGetSpaceInfoCommand()
363 Command* cmd = newCommand(TPM_ORD_GetCapability, size); in BuildGetOwnershipCommand() local
364 cmd->name = "tpm_getownership_cmd"; in BuildGetOwnershipCommand()
365 AddInitializedField(cmd, kTpmRequestHeaderLength, in BuildGetOwnershipCommand()
367 AddInitializedField(cmd, kTpmRequestHeaderLength + in BuildGetOwnershipCommand()
370 AddInitializedField(cmd, kTpmRequestHeaderLength + in BuildGetOwnershipCommand()
373 return cmd; in BuildGetOwnershipCommand()
378 Command* cmd = newCommand(TPM_ORD_GetRandom, size); in BuildGetRandomCommand() local
379 cmd->name = "tpm_get_random_cmd"; in BuildGetRandomCommand()
380 AddVisibleField(cmd, "bytesRequested", kTpmRequestHeaderLength); in BuildGetRandomCommand()
381 return cmd; in BuildGetRandomCommand()
389 Command* cmd = newCommand(TPM_ORD_GetCapability, size); in BuildGetVersionValCommand() local
390 cmd->name = "tpm_getversionval_cmd"; in BuildGetVersionValCommand()
391 AddInitializedField(cmd, kTpmRequestHeaderLength, in BuildGetVersionValCommand()
393 AddInitializedField(cmd, kTpmRequestHeaderLength + in BuildGetVersionValCommand()
396 return cmd; in BuildGetVersionValCommand()
403 Command* cmd = newCommand(TPM_ORD_FieldUpgrade, size); in BuildIFXFieldUpgradeInfoRequest2Command() local
404 cmd->name = "tpm_ifx_fieldupgradeinforequest2_cmd"; in BuildIFXFieldUpgradeInfoRequest2Command()
405 AddInitializedField(cmd, kTpmRequestHeaderLength, in BuildIFXFieldUpgradeInfoRequest2Command()
408 AddInitializedField(cmd, kTpmRequestHeaderLength + in BuildIFXFieldUpgradeInfoRequest2Command()
411 return cmd; in BuildIFXFieldUpgradeInfoRequest2Command()
416 Command* cmd = newCommand(TPM_ORD_OIAP, size); in BuildOIAPCommand() local
417 cmd->name = "tpm_oiap_cmd"; in BuildOIAPCommand()
418 return cmd; in BuildOIAPCommand()
424 Command* cmd = newCommand(TPM_ORD_OSAP, size); in BuildOSAPCommand() local
425 cmd->name = "tpm_osap_cmd"; in BuildOSAPCommand()
426 AddVisibleField(cmd, "entityType", kTpmRequestHeaderLength); in BuildOSAPCommand()
427 AddVisibleField(cmd, "entityValue", in BuildOSAPCommand()
430 cmd, "nonceOddOSAP", in BuildOSAPCommand()
432 return cmd; in BuildOSAPCommand()
436 Command* cmd = newCommandWithTag(TPM_ORD_TakeOwnership, 624, in BuildTakeOwnershipCommand() local
438 cmd->name = "tpm_takeownership_cmd"; in BuildTakeOwnershipCommand()
440 AddInitializedField(cmd, offset, sizeof(uint16_t), TPM_PID_OWNER); in BuildTakeOwnershipCommand()
442 AddInitializedField(cmd, offset, sizeof(uint32_t), TPM_RSA_2048_LEN); in BuildTakeOwnershipCommand()
444 AddVisibleField(cmd, "encOwnerAuth", offset); in BuildTakeOwnershipCommand()
446 AddInitializedField(cmd, offset, sizeof(uint32_t), TPM_RSA_2048_LEN); in BuildTakeOwnershipCommand()
448 AddVisibleField(cmd, "encSrkAuth", offset); in BuildTakeOwnershipCommand()
452 AddInitializedField(cmd, offset, sizeof(uint16_t), TPM_TAG_KEY12); in BuildTakeOwnershipCommand()
454 AddInitializedField(cmd, offset, sizeof(uint16_t), 0); in BuildTakeOwnershipCommand()
456 AddInitializedField(cmd, offset, sizeof(uint16_t), TPM_KEY_USAGE_STORAGE); in BuildTakeOwnershipCommand()
458 AddInitializedField(cmd, offset, sizeof(uint32_t), 0 /* keyFlags */); in BuildTakeOwnershipCommand()
460 AddInitializedField(cmd, offset, sizeof(uint8_t), TPM_AUTH_ALWAYS); in BuildTakeOwnershipCommand()
462 AddInitializedField(cmd, offset, sizeof(uint32_t), TPM_ALG_RSA); in BuildTakeOwnershipCommand()
464 AddInitializedField(cmd, offset, sizeof(uint16_t), in BuildTakeOwnershipCommand()
467 AddInitializedField(cmd, offset, sizeof(uint16_t), TPM_SS_NONE); in BuildTakeOwnershipCommand()
469 AddInitializedField(cmd, offset, sizeof(uint32_t), in BuildTakeOwnershipCommand()
472 AddInitializedField(cmd, offset, sizeof(uint32_t), in BuildTakeOwnershipCommand()
475 AddInitializedField(cmd, offset, sizeof(uint32_t), in BuildTakeOwnershipCommand()
478 AddInitializedField(cmd, offset, sizeof(uint32_t), in BuildTakeOwnershipCommand()
481 AddInitializedField(cmd, offset, sizeof(uint32_t), 0 /* PCRInfoSize */); in BuildTakeOwnershipCommand()
483 AddInitializedField(cmd, offset, sizeof(uint32_t), 0 /* pubkey.keyLength */); in BuildTakeOwnershipCommand()
485 AddInitializedField(cmd, offset, sizeof(uint32_t), 0 /* encDataSize */); in BuildTakeOwnershipCommand()
491 assert(offset == cmd->size); in BuildTakeOwnershipCommand()
493 return cmd; in BuildTakeOwnershipCommand()
498 Command* cmd = newCommand(TPM_ORD_Delegate_Manage, size); in BuildCreateDelegationFamilyCommand() local
499 cmd->name = "tpm_create_delegation_family_cmd"; in BuildCreateDelegationFamilyCommand()
500 AddInitializedField(cmd, kTpmRequestHeaderLength, sizeof(uint32_t), in BuildCreateDelegationFamilyCommand()
502 AddInitializedField(cmd, kTpmRequestHeaderLength + sizeof(uint32_t), in BuildCreateDelegationFamilyCommand()
504 AddInitializedField(cmd, kTpmRequestHeaderLength + 2 * sizeof(uint32_t), in BuildCreateDelegationFamilyCommand()
506 AddVisibleField(cmd, "familyLabel", in BuildCreateDelegationFamilyCommand()
508 return cmd; in BuildCreateDelegationFamilyCommand()
512 Command* cmd = in BuildReadDelegationFamilyTableCommand() local
514 cmd->name = "tpm_delegate_read_table_cmd"; in BuildReadDelegationFamilyTableCommand()
515 return cmd; in BuildReadDelegationFamilyTableCommand()
534 int OutputBytes_(Command* cmd, Field* fld) { in OutputBytes_() argument
541 cursor = OutputBytes_(cmd, fld->next); in OutputBytes_()
581 void OutputBytes(Command* cmd) { in OutputBytes() argument
582 (void) OutputBytes_(cmd, cmd->fields); in OutputBytes()
585 void OutputFieldPointers(Command* cmd, Field* fld) { in OutputFieldPointers() argument
589 OutputFieldPointers(cmd, fld->next); in OutputFieldPointers()
598 void OutputCommands(Command* cmd) { in OutputCommands() argument
599 if (cmd == NULL) { in OutputCommands()
603 cmd->name, cmd->size == 0 ? cmd->max_size : cmd->size); in OutputCommands()
604 OutputFields(cmd->fields); in OutputCommands()
605 printf("} %s = {{", cmd->name); in OutputCommands()
606 OutputBytes(cmd); in OutputCommands()
608 OutputFieldPointers(cmd, cmd->fields); in OutputCommands()
611 OutputCommands(cmd->next); in OutputCommands()
656 static void FreeCommands(Command* cmd) { in FreeCommands() argument
657 if (cmd != NULL) { in FreeCommands()
658 Command* next_command = cmd->next; in FreeCommands()
659 FreeFields(cmd->fields); in FreeCommands()
660 free(cmd); in FreeCommands()
669 Command* cmd = builders[i](); in main() local
670 cmd->next = commands; in main()
671 commands = cmd; in main()