summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorJi Luo <ji.luo@nxp.com>2020-12-17 14:03:06 +0800
committerJi Luo <ji.luo@nxp.com>2020-12-22 20:26:12 +0800
commit35ab562a3b610878146d94fb64ee5e200cd55f77 (patch)
treea9b0a2ced99f3d3fbb66f8379c74f3b25b1276d9 /lib
parent5b339f5614b76a983f4aafd2b51af2948fa93415 (diff)
LFU-15 Fix using uninitialized value
This commit fixes Coverity Issue: 11468195, avoid uninitialized value using. Test: AVB check. Change-Id: I04eb8faafd6c9a9fec1aeae0b29edc6940251094 Signed-off-by: Ji Luo <ji.luo@nxp.com>
Diffstat (limited to 'lib')
-rwxr-xr-xlib/avb/fsl/fsl_bootctrl.c26
1 files changed, 4 insertions, 22 deletions
diff --git a/lib/avb/fsl/fsl_bootctrl.c b/lib/avb/fsl/fsl_bootctrl.c
index 38733cebb1..8afb41ff13 100755
--- a/lib/avb/fsl/fsl_bootctrl.c
+++ b/lib/avb/fsl/fsl_bootctrl.c
@@ -888,10 +888,9 @@ AvbABFlowResult avb_flow_dual_uboot(AvbABOps* ab_ops,
AvbOps* ops = ab_ops->ops;
AvbSlotVerifyData* slot_data = NULL;
AvbSlotVerifyData* data = NULL;
- AvbABFlowResult ret;
+ AvbABFlowResult ret = 0;
struct bootloader_control ab_data, ab_data_orig;
AvbIOResult io_ret;
- bool saw_and_allowed_verification_error = false;
AvbSlotVerifyResult verify_result;
bool set_slot_unbootable = false;
int target_slot, n;
@@ -960,8 +959,7 @@ AvbABFlowResult avb_flow_dual_uboot(AvbABOps* ab_ops,
"AVB_SLOT_VERIFY_FLAGS_ALLOW_VERIFICATION_ERROR "
"is set.\n",
NULL);
- saw_and_allowed_verification_error =
- true;
+ ret = AVB_AB_FLOW_RESULT_OK_WITH_VERIFICATION_ERROR;
} else {
set_slot_unbootable = true;
}
@@ -1040,13 +1038,6 @@ AvbABFlowResult avb_flow_dual_uboot(AvbABOps* ab_ops,
avb_assert(slot_data != NULL);
data = slot_data;
slot_data = NULL;
- if (saw_and_allowed_verification_error) {
- avb_assert(
- flags & AVB_SLOT_VERIFY_FLAGS_ALLOW_VERIFICATION_ERROR);
- ret = AVB_AB_FLOW_RESULT_OK_WITH_VERIFICATION_ERROR;
- } else {
- ret = AVB_AB_FLOW_RESULT_OK;
- }
out:
io_ret = fsl_save_metadata_if_changed(ab_ops, &ab_data, &ab_data_orig);
@@ -1212,11 +1203,10 @@ AvbABFlowResult avb_ab_flow_fast(AvbABOps* ab_ops,
AvbOps* ops = ab_ops->ops;
AvbSlotVerifyData* slot_data[2] = {NULL, NULL};
AvbSlotVerifyData* data = NULL;
- AvbABFlowResult ret;
+ AvbABFlowResult ret = 0;
struct bootloader_control ab_data, ab_data_orig;
size_t slot_index_to_boot, n;
AvbIOResult io_ret;
- bool saw_and_allowed_verification_error = false;
size_t target_slot;
AvbSlotVerifyResult verify_result;
bool set_slot_unbootable = false;
@@ -1285,9 +1275,8 @@ AvbABFlowResult avb_ab_flow_fast(AvbABOps* ab_ops,
"AVB_SLOT_VERIFY_FLAGS_ALLOW_VERIFICATION_ERROR "
"is set.\n",
NULL);
- saw_and_allowed_verification_error =
- true;
slot_index_to_boot = target_slot;
+ ret = AVB_AB_FLOW_RESULT_OK_WITH_VERIFICATION_ERROR;
n = 2;
} else {
set_slot_unbootable = true;
@@ -1375,13 +1364,6 @@ AvbABFlowResult avb_ab_flow_fast(AvbABOps* ab_ops,
avb_assert(slot_data[slot_index_to_boot] != NULL);
data = slot_data[slot_index_to_boot];
slot_data[slot_index_to_boot] = NULL;
- if (saw_and_allowed_verification_error) {
- avb_assert(
- flags & AVB_SLOT_VERIFY_FLAGS_ALLOW_VERIFICATION_ERROR);
- ret = AVB_AB_FLOW_RESULT_OK_WITH_VERIFICATION_ERROR;
- } else {
- ret = AVB_AB_FLOW_RESULT_OK;
- }
/* ... and decrement tries remaining, if applicable. */
if (!ab_data.slot_info[slot_index_to_boot].successful_boot &&