blob: a6e5abd859b0ca670172232f223bd0249365f841 [file] [log] [blame]
Deepak Kodihalli1b24f972019-02-01 04:09:13 -06001#pragma once
2
3#include <stdint.h>
4
5#include <vector>
6
7#include "libpldm/base.h"
8
9namespace pldm
10{
11
12using Type = uint8_t;
13
vkaverapa6575b82019-04-03 05:33:52 -050014using Response = std::vector<uint8_t>;
15
Deepak Kodihalli1b24f972019-02-01 04:09:13 -060016namespace responder
17{
18
Jinu Joy Thomasf666db12019-05-29 05:22:31 -050019namespace base
20{
21/** @brief Register handlers for command from the base spec
22 */
23void registerHandlers();
24} // namespace base
25
Deepak Kodihalli1b24f972019-02-01 04:09:13 -060026/** @brief Handler for getPLDMTypes
27 *
28 * @param[in] request - Request message payload
vkaverapa6575b82019-04-03 05:33:52 -050029 * @param[in] payload_length - Request message payload length
30 * @param[return] Response - PLDM Response message
Deepak Kodihalli1b24f972019-02-01 04:09:13 -060031 */
vkaverapa6575b82019-04-03 05:33:52 -050032Response getPLDMTypes(const pldm_msg* request, size_t payloadLength);
Deepak Kodihalli1b24f972019-02-01 04:09:13 -060033
34/** @brief Handler for getPLDMCommands
35 *
36 * @param[in] request - Request message payload
vkaverapa6575b82019-04-03 05:33:52 -050037 * @param[in] payload_length - Request message payload length
38 * @param[return] Response - PLDM Response message
Deepak Kodihalli1b24f972019-02-01 04:09:13 -060039 */
vkaverapa6575b82019-04-03 05:33:52 -050040Response getPLDMCommands(const pldm_msg* request, size_t payloadLength);
Deepak Kodihalli1b24f972019-02-01 04:09:13 -060041
Sampa Misra432e1872019-02-13 03:49:43 -060042/** @brief Handler for getPLDMCommands
43 *
44 * @param[in] request - Request message payload
vkaverapa6575b82019-04-03 05:33:52 -050045 * @param[in] payload_length - Request message payload length
46 * @param[return] Response - PLDM Response message
Sampa Misra432e1872019-02-13 03:49:43 -060047 */
vkaverapa6575b82019-04-03 05:33:52 -050048Response getPLDMVersion(const pldm_msg* request, size_t payloadLength);
John Wang5c4f80d2019-07-29 11:12:18 +080049
50/** @brief Handler for getTID
51 *
52 * @param[in] request - Request message payload
53 * @param[in] payload_length - Request message payload length
54 * @param[return] Response - PLDM Response message
55 */
56Response getTID(const pldm_msg* request, size_t payloadLength);
Deepak Kodihalli1b24f972019-02-01 04:09:13 -060057} // namespace responder
58} // namespace pldm