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

Unified Diff: src/platform/vboot_reference/vfirmware/include/firmware_image_fw.h

Issue 1578035: Change VerifyFirmware() to take separate pointers to firmware verification header and firmware data. (Closed)
Patch Set: review fixes Created 10 years, 8 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
« no previous file with comments | « src/platform/vboot_reference/vfirmware/firmware_image_fw.c ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/platform/vboot_reference/vfirmware/include/firmware_image_fw.h
diff --git a/src/platform/vboot_reference/vfirmware/include/firmware_image_fw.h b/src/platform/vboot_reference/vfirmware/include/firmware_image_fw.h
index dc6db90d8f6b62e24a78909d9092868eb6eb9eba..8cba176c4bd127555041b3ee09269bd2383fe89b 100644
--- a/src/platform/vboot_reference/vfirmware/include/firmware_image_fw.h
+++ b/src/platform/vboot_reference/vfirmware/include/firmware_image_fw.h
@@ -88,7 +88,7 @@ int VerifyFirmwarePreamble(RSAPublicKey* sign_key,
uint64_t* firmware_len);
/* Checks the signature on the preamble + firmware data at
- * [preamble_start] and [firmware_data_start].
+ * [preamble_start] and [firmware_data].
* The length of the actual firmware data is firmware_len and it is assumed to
* be prepended with the signature whose size depends on the signature_algorithm
* [algorithm]. This signature also covers the preamble data (but not the
@@ -98,21 +98,24 @@ int VerifyFirmwarePreamble(RSAPublicKey* sign_key,
*/
int VerifyFirmwareData(RSAPublicKey* sign_key,
const uint8_t* preamble_start,
- const uint8_t* firmware_data_start,
+ const uint8_t* firmware_data,
uint64_t firmware_len,
int algorithm);
-/* Performs a chained verify of the firmware blob [firmware_blob].
+/* Performs a chained verify of the firmware blob [firmware_blob], using root
+ * key [root_key] and verification header [verification_header_blob].
*
* Returns 0 on success, error code on failure.
*
* NOTE: The length of the firmware blob is derived from reading the fields
- * in the first few bytes of the buffer. This might look risky but in firmware
- * land, the start address of the firmware_blob will always be fixed depending
- * on the memory map on the particular platform. In addition, the signature on
- * length itself is checked early in the verification process for extra safety.
+ * in the first few bytes of the verification header. This might look risky but
+ * in firmware land, the start address of the firmware_blob will always be fixed
+ * depending on the memory map on the particular platform. In addition, the
+ * signature on length itself is checked early in the verification process for
+ * extra safety.
*/
int VerifyFirmware(const uint8_t* root_key_blob,
+ const uint8_t* verification_header_blob,
const uint8_t* firmware_blob);
/* Returns the logical version of a firmware blob which is calculated as
@@ -134,8 +137,9 @@ uint32_t GetLogicalFirmwareVersion(uint8_t* firmware_blob);
* BOOT_FIRMWARE_RECOVERY_CONTINUE Jump to recovery mode
*/
int VerifyFirmwareDriver_f(uint8_t* root_key_blob,
+ uint8_t* verification_headerA,
uint8_t* firmwareA,
+ uint8_t* verification_headerB,
uint8_t* firmwareB);
-
#endif /* VBOOT_REFERENCE_FIRMWARE_IMAGE_FW_H_ */
« no previous file with comments | « src/platform/vboot_reference/vfirmware/firmware_image_fw.c ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698