Fix overwrite only encrypted to not use local var
Use existing global var instead of using locally declared variable,
reducing RAM usage.
Signed-off-by: Fabio Utzig <utzig@apache.org>
diff --git a/boot/bootutil/src/loader.c b/boot/bootutil/src/loader.c
index 996b49f..6839ddf 100644
--- a/boot/bootutil/src/loader.c
+++ b/boot/bootutil/src/loader.c
@@ -1102,9 +1102,6 @@
size_t last_sector;
const struct flash_area *fap_slot0;
const struct flash_area *fap_slot1;
-#ifdef MCUBOOT_ENC_IMAGES
- uint8_t enckey[BOOT_ENC_KEY_SIZE];
-#endif
(void)bs;
@@ -1140,11 +1137,11 @@
#ifdef MCUBOOT_ENC_IMAGES
if (boot_img_hdr(&boot_data, 1)->ih_flags & IMAGE_F_ENCRYPTED) {
- rc = boot_enc_load(boot_img_hdr(&boot_data, 1), fap_slot1, enckey);
+ rc = boot_enc_load(boot_img_hdr(&boot_data, 1), fap_slot1, bs->enckey[1]);
if (rc < 0) {
return BOOT_EBADIMAGE;
}
- if (rc == 0 && boot_enc_set_key(1, enckey)) {
+ if (rc == 0 && boot_enc_set_key(1, bs->enckey[1])) {
return BOOT_EBADIMAGE;
}
}