diff --git a/include/ipmitool/ipmi_fru.h b/include/ipmitool/ipmi_fru.h index 7ea14d6..b0f183c 100644 --- a/include/ipmitool/ipmi_fru.h +++ b/include/ipmitool/ipmi_fru.h @@ -42,6 +42,8 @@ # include #endif +#define FRU_END_OF_FIELDS 0xc1 + #define GET_FRU_INFO 0x10 #define GET_FRU_DATA 0x11 #define SET_FRU_DATA 0x12 diff --git a/lib/ipmi_fru.c b/lib/ipmi_fru.c index e839ad2..51b1234 100644 --- a/lib/ipmi_fru.c +++ b/lib/ipmi_fru.c @@ -1000,8 +1000,7 @@ fru_area_print_chassis(struct ipmi_intf * intf, struct fru_info * fru, } /* read any extra fields */ - while ((fru_data[i] != 0xc1) && (i < fru_len)) - { + while ((i < fru_len) && (fru_data[i] != FRU_END_OF_FIELDS)) { int j = i; fru_area = get_fru_area_str(fru_data, &i); if (fru_area) { @@ -1124,8 +1123,7 @@ fru_area_print_board(struct ipmi_intf * intf, struct fru_info * fru, } /* read any extra fields */ - while ((fru_data[i] != 0xc1) && (i < fru_len)) - { + while ((i < fru_len) && (fru_data[i] != FRU_END_OF_FIELDS)) { int j = i; fru_area = get_fru_area_str(fru_data, &i); if (fru_area) { @@ -1259,8 +1257,7 @@ fru_area_print_product(struct ipmi_intf * intf, struct fru_info * fru, } /* read any extra fields */ - while ((fru_data[i] != 0xc1) && (i < fru_len)) - { + while ((i < fru_len) && (fru_data[i] != FRU_END_OF_FIELDS)) { int j = i; fru_area = get_fru_area_str(fru_data, &i); if (fru_area) {