Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(42)

Side by Side Diff: utility/tpmc.c

Issue 3163045: Add a command to enable the physical presence command. (Closed) Base URL: ssh://git@gitrw.chromium.org:9222/vboot_reference.git
Patch Set: extra upload for version.c Created 10 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « utility/tlcl_generator.c ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* Copyright (c) 2010 The Chromium OS Authors. All rights reserved. 1 /* Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
2 * Use of this source code is governed by a BSD-style license that can be 2 * Use of this source code is governed by a BSD-style license that can be
3 * found in the LICENSE file. 3 * found in the LICENSE file.
4 * 4 *
5 * TPM command utility. Runs simple TPM commands. Mostly useful when physical 5 * TPM command utility. Runs simple TPM commands. Mostly useful when physical
6 * presence has not been locked. 6 * presence has not been locked.
7 */ 7 */
8 8
9 #include <stdio.h> 9 #include <stdio.h>
10 #include <string.h> 10 #include <string.h>
(...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after
250 */ 250 */
251 command_record command_table[] = { 251 command_record command_table[] = {
252 { "getflags", "getf", "read and print the value of selected flags", 252 { "getflags", "getf", "read and print the value of selected flags",
253 HandlerGetFlags }, 253 HandlerGetFlags },
254 { "startup", "sta", "issue a Startup command", TlclStartup }, 254 { "startup", "sta", "issue a Startup command", TlclStartup },
255 { "selftestfull", "test", "issue a SelfTestFull command", TlclSelfTestFull }, 255 { "selftestfull", "test", "issue a SelfTestFull command", TlclSelfTestFull },
256 { "continueselftest", "ctest", "issue a ContinueSelfTest command", 256 { "continueselftest", "ctest", "issue a ContinueSelfTest command",
257 TlclContinueSelfTest }, 257 TlclContinueSelfTest },
258 { "assertphysicalpresence", "ppon", "assert Physical Presence", 258 { "assertphysicalpresence", "ppon", "assert Physical Presence",
259 TlclAssertPhysicalPresence }, 259 TlclAssertPhysicalPresence },
260 { "physicalpresencecmdenable", "ppcmd", "turn on software PP",
261 TlclPhysicalPresenceCMDEnable },
260 { "enable", "ena", "enable the TPM (needs PP)", TlclSetEnable }, 262 { "enable", "ena", "enable the TPM (needs PP)", TlclSetEnable },
261 { "disable", "dis", "disable the TPM (needs PP)", TlclClearEnable }, 263 { "disable", "dis", "disable the TPM (needs PP)", TlclClearEnable },
262 { "activate", "act", "activate the TPM (needs PP, maybe reboot)", 264 { "activate", "act", "activate the TPM (needs PP, maybe reboot)",
263 HandlerActivate }, 265 HandlerActivate },
264 { "deactivate", "deact", "deactivate the TPM (needs PP, maybe reboot)", 266 { "deactivate", "deact", "deactivate the TPM (needs PP, maybe reboot)",
265 HandlerDeactivate }, 267 HandlerDeactivate },
266 { "clear", "clr", "clear the TPM owner (needs PP)", TlclForceClear }, 268 { "clear", "clr", "clear the TPM owner (needs PP)", TlclForceClear },
267 { "setnvlocked", "setnv", "set the nvLocked flag permanently (IRREVERSIBLE!)", 269 { "setnvlocked", "setnv", "set the nvLocked flag permanently (IRREVERSIBLE!)",
268 TlclSetNvLocked }, 270 TlclSetNvLocked },
269 { "lockphysicalpresence", "pplock", "lock PP to current value until reboot", 271 { "lockphysicalpresence", "pplock", "lock PP to current value until reboot",
(...skipping 21 matching lines...) Expand all
291 fprintf(stderr, "usage: %s <TPM command> [args]\n or: %s help\n", 293 fprintf(stderr, "usage: %s <TPM command> [args]\n or: %s help\n",
292 argv[0], argv[0]); 294 argv[0], argv[0]);
293 exit(1); 295 exit(1);
294 } else { 296 } else {
295 command_record* c; 297 command_record* c;
296 const char* cmd = argv[1]; 298 const char* cmd = argv[1];
297 nargs = argc; 299 nargs = argc;
298 args = argv; 300 args = argv;
299 301
300 if (strcmp(cmd, "help") == 0) { 302 if (strcmp(cmd, "help") == 0) {
301 printf("%23s %7s %s\n\n", "command", "abbr.", "description"); 303 printf("%26s %7s %s\n\n", "command", "abbr.", "description");
302 for (c = command_table; c < command_table + n_commands; c++) { 304 for (c = command_table; c < command_table + n_commands; c++) {
303 printf("%23s %7s %s\n", c->name, c->abbr, c->description); 305 printf("%26s %7s %s\n", c->name, c->abbr, c->description);
304 } 306 }
305 return 0; 307 return 0;
306 } 308 }
307 309
308 TlclLibInit(); 310 TlclLibInit();
309 311
310 for (c = command_table; c < command_table + n_commands; c++) { 312 for (c = command_table; c < command_table + n_commands; c++) {
311 if (strcmp(cmd, c->name) == 0 || strcmp(cmd, c->abbr) == 0) { 313 if (strcmp(cmd, c->name) == 0 || strcmp(cmd, c->abbr) == 0) {
312 return ErrorCheck(c->handler(), cmd); 314 return ErrorCheck(c->handler(), cmd);
313 } 315 }
314 } 316 }
315 317
316 /* No command matched. */ 318 /* No command matched. */
317 fprintf(stderr, "%s: unknown command: %s\n", argv[0], cmd); 319 fprintf(stderr, "%s: unknown command: %s\n", argv[0], cmd);
318 return 1; 320 return 1;
319 } 321 }
320 } 322 }
OLDNEW
« no previous file with comments | « utility/tlcl_generator.c ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698