Add FRU device presence check
Resolves: openbmc/openbmc#3287
Check the FRU device's Present property upon a
FRU device info reading request.
Return 0xCB completion code for missing devices.
Tested:
Verified using ipmitool commands.
Test case 1, request info about existing FRU device:
Command: ipmitool -I lanplus -U root -P <password> -H
<ip_addr> fru print <fru_id>
Response: //Success, FRU data
Test case 2, request info about missing FRU device:
Command: ipmitool -I lanplus -U root -P <password> -H
<ip_addr> fru print <fru_id>
Response: Device not present (Requested sensor, data, or record not found)
Change-Id: Iaf20f616858d5954ed2c5f5fe96363383aa943be
Signed-off-by: Kirill Pakhomov <k.pakhomov@yadro.com>
diff --git a/read_fru_data.hpp b/read_fru_data.hpp
index d89646c..cd5f661 100644
--- a/read_fru_data.hpp
+++ b/read_fru_data.hpp
@@ -15,6 +15,8 @@
static constexpr auto invMgrInterface = "xyz.openbmc_project.Inventory.Manager";
static constexpr auto invObjPath = "/xyz/openbmc_project/inventory";
static constexpr auto propInterface = "org.freedesktop.DBus.Properties";
+static constexpr auto invItemInterface = "xyz.openbmc_project.Inventory.Item";
+static constexpr auto itemPresentProp = "Present";
/**
* @brief Get fru area data as per IPMI specification