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

Unified Diff: src/platform/vboot_reference/utility/kernel_utility.cc

Issue 2310002: Add a --subkey switch to kernel signing utility. (Closed) Base URL: ssh://git@gitrw.chromium.org/chromiumos
Patch Set: Created 10 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: src/platform/vboot_reference/utility/kernel_utility.cc
diff --git a/src/platform/vboot_reference/utility/kernel_utility.cc b/src/platform/vboot_reference/utility/kernel_utility.cc
index 99f637f60a6d3af57a96e6039f40d3f7eef7dccd..a75e4fbb878c6f6a48f43fdf99ca9f50c137b348 100644
--- a/src/platform/vboot_reference/utility/kernel_utility.cc
+++ b/src/platform/vboot_reference/utility/kernel_utility.cc
@@ -76,8 +76,9 @@ void KernelUtility::PrintUsage(void) {
" --out <outfile>\t\t\tOutput file for verified boot image\n"
"\n"
"Optional arguments for \"--generate\" are:\n"
+ " --padding <size>\t\t\tPad the header to this size\n"
+ " --subkey_out\t\t\t\tJust output the subkey (key verification) header\n"
" --vblock\t\t\t\tJust output the verification block\n"
- " --padding\t\t\t\tPad the header to this size\n"
"\n"
"<algoid> (for --*_sign_algorithm) is one of the following:\n";
for (int i = 0; i < kNumAlgorithms; i++) {
@@ -108,6 +109,7 @@ bool KernelUtility::ParseCmdLineOptions(int argc, char* argv[]) {
OPT_VMLINUZ,
OPT_CONFIG,
OPT_PADDING,
+ OPT_SUBKEY,
};
static struct option long_options[] = {
{"firmware_key", 1, 0, OPT_FIRMWARE_KEY },
@@ -128,6 +130,7 @@ bool KernelUtility::ParseCmdLineOptions(int argc, char* argv[]) {
{"vmlinuz", 1, 0, OPT_VMLINUZ },
{"config", 1, 0, OPT_CONFIG },
{"padding", 1, 0, OPT_PADDING },
+ {"subkey_out", 0, 0, OPT_SUBKEY },
{NULL, 0, 0, 0}
};
while ((i = getopt_long(argc, argv, "", long_options, &option_index)) != -1) {
@@ -222,6 +225,9 @@ bool KernelUtility::ParseCmdLineOptions(int argc, char* argv[]) {
return false;
}
break;
+ case OPT_SUBKEY:
+ is_subkey_out_ = true;
+ break;
}
}
return CheckOptions();
@@ -229,7 +235,9 @@ bool KernelUtility::ParseCmdLineOptions(int argc, char* argv[]) {
void KernelUtility::OutputSignedImage(void) {
if (image_) {
- if (!WriteKernelImage(out_file_.c_str(), image_, is_only_vblock_)) {
+ if (!WriteKernelImage(out_file_.c_str(), image_,
+ is_only_vblock_,
+ is_subkey_out_)) {
cerr << "Couldn't write verified boot kernel image to file "
<< out_file_ <<".\n";
}
@@ -389,6 +397,7 @@ bool KernelUtility::CheckOptions(void) {
cerr << "No vmlinuz file specified.\n";
return false;
}
+ // TODO(gauravsh): Enforce only one of --vblock or --subkey_out is specified
}
return true;
}

Powered by Google App Engine
This is Rietveld 408576698