pldmtool: fix incorrect size assumption
The GetPDR request size was incorrectly set to a small value, which
would cause truncation of the GetPDR response. Fixed the same.
Signed-off-by: Deepak Kodihalli <dkodihal@in.ibm.com>
Change-Id: Ib4f6af73f505163d4e3ff6e2d7ed0dadc823443b
diff --git a/pldmtool/pldm_platform_cmd.cpp b/pldmtool/pldm_platform_cmd.cpp
index a122435..0774b68 100644
--- a/pldmtool/pldm_platform_cmd.cpp
+++ b/pldmtool/pldm_platform_cmd.cpp
@@ -30,10 +30,6 @@
using CommandInterface::CommandInterface;
- // The maximum number of record bytes requested to be returned in the
- // response to this instance of the GetPDR command.
- static constexpr uint16_t requestCount = 128;
-
explicit GetPDR(const char* type, const char* name, CLI::App* app) :
CommandInterface(type, name, app)
{
@@ -51,16 +47,16 @@
PLDM_GET_PDR_REQ_BYTES);
auto request = reinterpret_cast<pldm_msg*>(requestMsg.data());
- auto rc = encode_get_pdr_req(instanceId, recordHandle, 0,
- PLDM_GET_FIRSTPART, requestCount, 0,
- request, PLDM_GET_PDR_REQ_BYTES);
+ auto rc =
+ encode_get_pdr_req(instanceId, recordHandle, 0, PLDM_GET_FIRSTPART,
+ UINT16_MAX, 0, request, PLDM_GET_PDR_REQ_BYTES);
return {rc, requestMsg};
}
void parseResponseMsg(pldm_msg* responsePtr, size_t payloadLength) override
{
uint8_t completionCode = 0;
- uint8_t recordData[65535] = {0};
+ uint8_t recordData[UINT16_MAX] = {0};
uint32_t nextRecordHndl = 0;
uint32_t nextDataTransferHndl = 0;
uint8_t transferFlag = 0;