Fix core dump issue during fru edit

Core-dumps are getting generated while editing the multi-record
area offset in the common header area of FRU.

Current code does not check whether it has crossed the cached fru
memory area size while trying to get End-of-list and data-length.
Added a check for fru-size before accessing these fields.

Tested:
ipmitool raw 0x0A 0x12 0 0 0 0x1 0x0 0xXX 0xXX 0xXX 0xXX 0x0 0xXX

Change-Id: Ie6aca8712b994cf8b10095626d9bfebbff44fbc7
Signed-off-by: Jitendra Tripathy <jitendra.kumarx.tripathy@intel.com>
1 file changed
tree: 173852e8098fccf997759000e7e4769af5ed0a1b
  1. docs/
  2. include/
  3. src/
  4. subprojects/
  5. tests/
  6. .clang-format
  7. .gitignore
  8. generate-allowlist.py
  9. ipmi-allowlist.conf
  10. LICENSE
  11. meson.build
  12. meson.options
  13. OWNERS
  14. README.md
README.md

Intel IPMI OEM support library

This component is intended to provide Intel-specific IPMI[3] command handlers for OpenBMC. These handlers are intended to integrate BMC with servers based on Intel architecture.

Overview

intel-ipmi-oem serves as an extension[1] to OpenBMC IPMI daemon[2]. It is compiled as a shared library and intended to both:

  • override existing implementation of standard IPMI commands to comply with Intel-specific solutions,
  • provide implementation for non-standard OEM extensions.

Capabilities

Related features provided by the library are grouped in separate source files. Main extensions to vanilla OpenBMC IPMI stack are the following:

  • Acquiring SMBIOS data over IPMI
  • Commands for better integration with Intel hardware
  • Firmware update extensions
  • Extended parsing of IPMI Platform Events[4]

References

  1. OpenBMC IPMI Architecture
  2. Phosphor IPMI Host
  3. IPMI Specification v2.0
  4. Intel Platform Events parsing