summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Amelkin <alexander@amelkin.msk.ru>2021-05-21 02:39:16 +0300
committerAlexander Amelkin <alexander@amelkin.msk.ru>2021-05-21 02:39:16 +0300
commit9a1c0e68ba8c764025c2aefe442387ad8a5f92e7 (patch)
tree7e404fe510d21b1f935463ea401b7bcfe5c68801
parent1f429f1ed70218c00fd3f66438c2fdab9d2f342f (diff)
downloadipmitool-9a1c0e68ba8c764025c2aefe442387ad8a5f92e7.tar.gz
ekanalyzer: Fix internal use area off-by-one bug
The length of internal use area printed by ekanalyzer didn't take in account the version byte. The data printed was also 1 byte longer than needed. Signed-off-by: Alexander Amelkin <alexander@amelkin.msk.ru>
-rw-r--r--lib/ipmi_ekanalyzer.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/ipmi_ekanalyzer.c b/lib/ipmi_ekanalyzer.c
index 8a3e5a5..dbc76b4 100644
--- a/lib/ipmi_ekanalyzer.c
+++ b/lib/ipmi_ekanalyzer.c
@@ -2488,6 +2488,8 @@ ipmi_ek_display_fru_header_detail(char *filename)
*/
if (next_offset < UINT8_MAX) {
len = (next_offset - header.offset.internal) * FACTOR_OFFSET;
+ --len; /* First byte of internal use area is version and we've
+ already read it */
}
else {
struct stat fs;