OLD | NEW |
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 * Data structure and API definitions for a verified boot kernel image. | 5 * Data structure and API definitions for a verified boot kernel image. |
6 */ | 6 */ |
7 | 7 |
8 #ifndef VBOOT_REFERENCE_KERNEL_IMAGE_H_ | 8 #ifndef VBOOT_REFERENCE_KERNEL_IMAGE_H_ |
9 #define VBOOT_REFERENCE_KERNEL_IMAGE_H_ | 9 #define VBOOT_REFERENCE_KERNEL_IMAGE_H_ |
10 | 10 |
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
134 | 134 |
135 /* Checks for the sanity of the kernel header pointed by [kernel_header_blob]. | 135 /* Checks for the sanity of the kernel header pointed by [kernel_header_blob]. |
136 * If [dev_mode] is enabled, also checks the firmware key signature using the | 136 * If [dev_mode] is enabled, also checks the firmware key signature using the |
137 * pre-processed public firmware signing key [firmware_sign_key_blob]. | 137 * pre-processed public firmware signing key [firmware_sign_key_blob]. |
138 * | 138 * |
139 * On success, put firmware signature algorithm in [firmware_algorithm], | 139 * On success, put firmware signature algorithm in [firmware_algorithm], |
140 * kernel signature algorithm in [kernel_algorithm], kernel header | 140 * kernel signature algorithm in [kernel_algorithm], kernel header |
141 * length in [header_len], and return 0. | 141 * length in [header_len], and return 0. |
142 * Else, return error code on failure. | 142 * Else, return error code on failure. |
143 */ | 143 */ |
144 int VerifyFirmwareHeader(const uint8_t* firmware_sign_key_blob, | 144 int VerifyKernelHeader(const uint8_t* firmware_sign_key_blob, |
145 const uint8_t* kernel_header_blob, | 145 const uint8_t* kernel_header_blob, |
146 const int dev_mode, | 146 const int dev_mode, |
147 int* firmware_algorithm, | 147 int* firmware_algorithm, |
148 int* kernel_algorithm, | 148 int* kernel_algorithm, |
149 int* header_len); | 149 int* header_len); |
150 | 150 |
151 /* Checks the kernel config (analogous to preamble for firmware) signature on | 151 /* Checks the kernel config (analogous to preamble for firmware) signature on |
152 * kernel config pointed by [kernel_config_blob] using the signing key | 152 * kernel config pointed by [kernel_config_blob] using the signing key |
153 * [kernel_sign_key]. | 153 * [kernel_sign_key]. |
154 * | 154 * |
155 * On success, put kernel length into [kernel_len], and return 0. | 155 * On success, put kernel length into [kernel_len], and return 0. |
156 * Else, return error code on failure. | 156 * Else, return error code on failure. |
157 */ | 157 */ |
158 int VerifyKernelConfig(RSAPublicKey* kernel_sign_key, | 158 int VerifyKernelConfig(RSAPublicKey* kernel_sign_key, |
159 const uint8_t* kernel_config_blob, | 159 const uint8_t* kernel_config_blob, |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
215 | 215 |
216 /* Add a kernel and kernel config signature to a kernel image [image] | 216 /* Add a kernel and kernel config signature to a kernel image [image] |
217 * using the private signing key in file [kernel_sigining_key_file]. | 217 * using the private signing key in file [kernel_sigining_key_file]. |
218 * | 218 * |
219 * Return 1 on success, 0 on failure. | 219 * Return 1 on success, 0 on failure. |
220 */ | 220 */ |
221 int AddKernelSignature(KernelImage* image, | 221 int AddKernelSignature(KernelImage* image, |
222 const char* kernel_sigining_key_file); | 222 const char* kernel_sigining_key_file); |
223 | 223 |
224 #endif /* VBOOT_REFERENCE_KERNEL_IMAGE_H_ */ | 224 #endif /* VBOOT_REFERENCE_KERNEL_IMAGE_H_ */ |
OLD | NEW |