xref: /openbmc/google-ipmi-sys/machine_name.hpp (revision 444b5ea4847ea7c014114094d4b63672122f9786)
1a2056e9cSWilly Tu // Copyright 2021 Google LLC
2a2056e9cSWilly Tu //
3a2056e9cSWilly Tu // Licensed under the Apache License, Version 2.0 (the "License");
4a2056e9cSWilly Tu // you may not use this file except in compliance with the License.
5a2056e9cSWilly Tu // You may obtain a copy of the License at
6a2056e9cSWilly Tu //
7a2056e9cSWilly Tu //      http://www.apache.org/licenses/LICENSE-2.0
8a2056e9cSWilly Tu //
9a2056e9cSWilly Tu // Unless required by applicable law or agreed to in writing, software
10a2056e9cSWilly Tu // distributed under the License is distributed on an "AS IS" BASIS,
11a2056e9cSWilly Tu // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12a2056e9cSWilly Tu // See the License for the specific language governing permissions and
13a2056e9cSWilly Tu // limitations under the License.
14a2056e9cSWilly Tu 
1529f35bceSWilliam A. Kennington III #pragma once
1629f35bceSWilliam A. Kennington III 
1729f35bceSWilliam A. Kennington III #include "handler.hpp"
1829f35bceSWilliam A. Kennington III 
1929f35bceSWilliam A. Kennington III #include <ipmid/api.h>
2029f35bceSWilliam A. Kennington III 
21ff3cd8e9SWilly Tu #include <ipmid/api-types.hpp>
22*444b5ea4SPatrick Williams 
23b4e3704cSWilly Tu #include <span>
24ff3cd8e9SWilly Tu 
2529f35bceSWilliam A. Kennington III namespace google
2629f35bceSWilliam A. Kennington III {
2729f35bceSWilliam A. Kennington III namespace ipmi
2829f35bceSWilliam A. Kennington III {
2929f35bceSWilliam A. Kennington III 
30ff3cd8e9SWilly Tu struct GetMachineNameReply
31ff3cd8e9SWilly Tu {
32ff3cd8e9SWilly Tu     uint8_t machineNameLength;
33ff3cd8e9SWilly Tu } __attribute__((packed));
34ff3cd8e9SWilly Tu 
3529f35bceSWilliam A. Kennington III // Handle the machine name command.
36b4e3704cSWilly Tu Resp getMachineName(std::span<const uint8_t> data, HandlerInterface* handler);
3729f35bceSWilliam A. Kennington III 
3829f35bceSWilliam A. Kennington III } // namespace ipmi
3929f35bceSWilliam A. Kennington III } // namespace google
40