diff --git a/lib/dimm_spd.c b/lib/dimm_spd.c index 245599d..1b0eec8 100644 --- a/lib/dimm_spd.c +++ b/lib/dimm_spd.c @@ -950,6 +950,9 @@ ipmi_spd_print(uint8_t *spd_data, int len) } else { + if (len < 100) { + return (-1); + } ii = (spd_data[3] & 0x0f) + (spd_data[4] & 0x0f) - 17; k = ((spd_data[5] & 0x7) + 1) * spd_data[17];