Skip to content

Potential PLDM Instance ID Leak #141

Description

@santoshpuranik

We call PldmFramework::getInstanceID() to get a new PLDM instance ID each time someone executes a function that requires us to initiate a PLDM transfer to PHYP.

The panel code then calls pldm_send() to send the PLDM packet it creates. pldm_send() does not tell us if the remote end responded to the call. In case we do not receive a response, the expectation is that the previously generated instance ID be reused and the app not create a new one (the previous ID gets leaked in this case)

This issue is to figure out a solution to this potential issue. Idea include:

  • Track each instance ID with a timeout (worse case of 5.4s).
  • Move to pldm_send_recv() with an asio wrapper around it, this will ensure we get a response for every send.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions