blob: 6bad7db1c9c70a585d81345dbc91469ff81248b7 [file] [log] [blame]
Patrick Venture123b5c02019-03-05 14:01:00 -08001#pragma once
2
3#include <cstdint>
4#include <vector>
5
6namespace host_tool
7{
8
9class IpmiInterface
10{
11 public:
12 virtual ~IpmiInterface() = default;
13
14 /**
15 * Send an IPMI packet to the BMC.
16 *
17 * @param[in] data - a vector of the IPMI packet contents.
18 * @return the bytes returned.
19 * @throws IpmiException on failure.
20 */
21 virtual std::vector<std::uint8_t>
22 sendPacket(std::vector<std::uint8_t>& data) = 0;
23};
24
25} // namespace host_tool