summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLucian Cojocar <cojocar@google.com>2016-07-20 10:34:04 -0700
committerchrome-bot <chrome-bot@chromium.org>2016-07-22 01:49:13 -0700
commitfac4f79fc5aac4c90c9026cf750d9157684cdc0a (patch)
tree437b4dc86424362ddfe0d5348ec704a80bac1636
parent3d4c4ffdfa81eeae04410186b8c149535fa79658 (diff)
downloadchrome-ec-fac4f79fc5aac4c90c9026cf750d9157684cdc0a.tar.gz
upgrade_fw: fw_upgrade_command_handler: fix cmd_size check
body_size is unsigned so the comparison was always false BUG=None BRANCH=none TEST=tested the update process on CR50 board using the usb_updater Change-Id: I004ee94653656449ae6f8699f06422e925d9e1b6 Signed-off-by: Lucian Cojocar <cojocar@google.com> Reviewed-on: https://chromium-review.googlesource.com/362082 Commit-Ready: Dan Shi <dshi@chromium.org> Tested-by: Vadim Bendebury <vbendeb@chromium.org> Reviewed-by: Vadim Bendebury <vbendeb@chromium.org>
-rw-r--r--chip/g/upgrade_fw.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/chip/g/upgrade_fw.c b/chip/g/upgrade_fw.c
index 26d3d32517..c8ff5b80d5 100644
--- a/chip/g/upgrade_fw.c
+++ b/chip/g/upgrade_fw.c
@@ -102,12 +102,12 @@ void fw_upgrade_command_handler(void *body,
*/
*response_size = sizeof(*rv);
- body_size = cmd_size - offsetof(struct upgrade_command, block_body);
- if (body_size < 0) {
+ if (cmd_size < offsetof(struct upgrade_command, block_body)) {
CPRINTF("%s:%d\n", __func__, __LINE__);
*rv = UPGRADE_GEN_ERROR;
return;
}
+ body_size = cmd_size - offsetof(struct upgrade_command, block_body);
if (!cmd_body->block_base && !body_size) {
/*