xref: /openbmc/pldm/oem/meta/utils.hpp (revision e482087f23e46a9b42b2433fe57cbf5dd5202d68)
1*e482087fSSora Su #pragma once
2*e482087fSSora Su 
3*e482087fSSora Su #include <libpldm/base.h>
4*e482087fSSora Su 
5*e482087fSSora Su #include <string>
6*e482087fSSora Su 
7*e482087fSSora Su namespace pldm::oem_meta
8*e482087fSSora Su {
9*e482087fSSora Su 
10*e482087fSSora Su /**
11*e482087fSSora Su  * @brief Check the IANA of the MCTP endpoint device that sent the OEM message.
12*e482087fSSora Su  *
13*e482087fSSora Su  * @param[in] tid - PLDM TID of the sender.
14*e482087fSSora Su  * @param[out] bool - True if the endpoint used META IANA, false otherwise.
15*e482087fSSora Su  */
16*e482087fSSora Su bool checkMetaIana(const pldm_tid_t& tid);
17*e482087fSSora Su 
18*e482087fSSora Su /**
19*e482087fSSora Su  * @brief Get the slot number from D-Bus for the given sender tid.
20*e482087fSSora Su  *
21*e482087fSSora Su  *        - If no configurations available, it will return std::string("0").
22*e482087fSSora Su  *        - If any error or exception occurs during the process, it
23*e482087fSSora Su  *          will fall back to a hardcoded slot number based on the TID.
24*e482087fSSora Su  *
25*e482087fSSora Su  *        This function does not throw exceptions.
26*e482087fSSora Su  *
27*e482087fSSora Su  * @param[in] tid - PLDM TID of the sender.
28*e482087fSSora Su  * @param[out] std::string - Corresponding slot number.
29*e482087fSSora Su  */
30*e482087fSSora Su std::string getSlotNumberStringByTID(const pldm_tid_t& tid);
31*e482087fSSora Su 
32*e482087fSSora Su } // namespace pldm::oem_meta
33