diff options
author | Patrick Georgi <pgeorgi@google.com> | 2018-07-26 12:30:45 +0200 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2018-08-15 16:37:36 -0700 |
commit | 84d2e6824b8eaa68dc0d0920822a5c6489005683 (patch) | |
tree | f66f8b182e6e8aa3dd8aa586ed856af785f02e8e | |
parent | bcd6842fb861b99588039b0bb72fafd92853525e (diff) | |
download | chrome-ec-84d2e6824b8eaa68dc0d0920822a5c6489005683.tar.gz |
util/ecst: Fail on partial reads
Change-Id: Iadc031195773f7f1eac6642de6995659eab42707
Signed-off-by: Patrick Georgi <pgeorgi@google.com>
Found-by: Coverity Scan #58140, #58142, #58143
Reviewed-on: https://chromium-review.googlesource.com/1151187
Commit-Ready: Patrick Georgi <pgeorgi@chromium.org>
Tested-by: Patrick Georgi <pgeorgi@chromium.org>
Reviewed-by: Stefan Reinauer <reinauer@google.com>
-rwxr-xr-x | util/ecst.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/util/ecst.c b/util/ecst.c index 81dd76f7c7..73e6deb0e4 100755 --- a/util/ecst.c +++ b/util/ecst.c @@ -1872,9 +1872,9 @@ int calc_header_crc_bin(unsigned int *p_cksum) /* Go thru the BIN File and calculate the Checksum */ fseek(g_hfd_pointer, 0x00000000, SEEK_SET); if (fread(g_header_array, - 1, HEADER_SIZE, - g_hfd_pointer) == 0) + 1, + g_hfd_pointer) != 1) return 0; for (i = 0; i < (HEADER_SIZE - HEADER_CRC_FIELDS_SIZE); i++) { @@ -1960,9 +1960,9 @@ int calc_firmware_csum_bin(unsigned int *p_cksum, fseek(input_file_pointer, 0L, SEEK_SET); fseek(input_file_pointer, calc_curr_position, SEEK_SET); if (fread(g_fw_array, - 1, calc_read_bytes, - input_file_pointer) == 0) + 1, + input_file_pointer) != 1) return 0; for (i = 0; i < calc_read_bytes; i++) { @@ -2305,9 +2305,9 @@ unsigned int calc_api_csum_bin(void) fseek(api_file_pointer, 0L, SEEK_SET); fseek(api_file_pointer, calc_curr_position, SEEK_SET); if (fread(g_fw_array, - 1, calc_read_bytes, - api_file_pointer) == 0) + 1, + api_file_pointer) != 1) return 0; for (i = 0; i < calc_read_bytes; i++) { |