| 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 * Tests for firmware image library. | 5 * Tests for firmware image library. |
| 6 */ | 6 */ |
| 7 | 7 |
| 8 #include <stdio.h> | 8 #include <stdio.h> |
| 9 #include <stdlib.h> | 9 #include <stdlib.h> |
| 10 | 10 |
| (...skipping 30 matching lines...) Expand all Loading... |
| 41 | 41 |
| 42 Memcpy(image->magic, FIRMWARE_MAGIC, FIRMWARE_MAGIC_SIZE); | 42 Memcpy(image->magic, FIRMWARE_MAGIC, FIRMWARE_MAGIC_SIZE); |
| 43 image->firmware_sign_algorithm = algorithm; | 43 image->firmware_sign_algorithm = algorithm; |
| 44 image->firmware_sign_key = (uint8_t*) Malloc( | 44 image->firmware_sign_key = (uint8_t*) Malloc( |
| 45 RSAProcessedKeySize(image->firmware_sign_algorithm)); | 45 RSAProcessedKeySize(image->firmware_sign_algorithm)); |
| 46 Memcpy(image->firmware_sign_key, firmware_sign_key, | 46 Memcpy(image->firmware_sign_key, firmware_sign_key, |
| 47 RSAProcessedKeySize(image->firmware_sign_algorithm)); | 47 RSAProcessedKeySize(image->firmware_sign_algorithm)); |
| 48 image->firmware_key_version = firmware_key_version; | 48 image->firmware_key_version = firmware_key_version; |
| 49 | 49 |
| 50 /* Update correct header length. */ | 50 /* Update correct header length. */ |
| 51 image->header_len = (sizeof(image->header_len) + | 51 image->header_len = GetFirmwareHeaderLen(image); |
| 52 sizeof(image->firmware_sign_algorithm) + | |
| 53 RSAProcessedKeySize(image->firmware_sign_algorithm) + | |
| 54 sizeof(image->firmware_key_version) + | |
| 55 sizeof(image->header_checksum)); | |
| 56 | 52 |
| 57 /* Calculate SHA-512 digest on header and populate header_checksum. */ | 53 /* Calculate SHA-512 digest on header and populate header_checksum. */ |
| 58 DigestInit(&ctx, ROOT_SIGNATURE_ALGORITHM); | 54 DigestInit(&ctx, ROOT_SIGNATURE_ALGORITHM); |
| 59 DigestUpdate(&ctx, (uint8_t*) &image->header_len, | 55 DigestUpdate(&ctx, (uint8_t*) &image->header_len, |
| 60 sizeof(image->header_len)); | 56 sizeof(image->header_len)); |
| 61 DigestUpdate(&ctx, (uint8_t*) &image->firmware_sign_algorithm, | 57 DigestUpdate(&ctx, (uint8_t*) &image->firmware_sign_algorithm, |
| 62 sizeof(image->firmware_sign_algorithm)); | 58 sizeof(image->firmware_sign_algorithm)); |
| 63 DigestUpdate(&ctx, image->firmware_sign_key, | 59 DigestUpdate(&ctx, image->firmware_sign_key, |
| 64 RSAProcessedKeySize(image->firmware_sign_algorithm)); | 60 RSAProcessedKeySize(image->firmware_sign_algorithm)); |
| 65 DigestUpdate(&ctx, (uint8_t*) &image->firmware_key_version, | 61 DigestUpdate(&ctx, (uint8_t*) &image->firmware_key_version, |
| (...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 214 | 210 |
| 215 failure: | 211 failure: |
| 216 Free(firmware_blob); | 212 Free(firmware_blob); |
| 217 FirmwareImageFree(image); | 213 FirmwareImageFree(image); |
| 218 Free(firmware_sign_key_buf); | 214 Free(firmware_sign_key_buf); |
| 219 Free(root_key_blob); | 215 Free(root_key_blob); |
| 220 RSAPublicKeyFree(root_key); | 216 RSAPublicKeyFree(root_key); |
| 221 | 217 |
| 222 return error_code; | 218 return error_code; |
| 223 } | 219 } |
| OLD | NEW |