xref: /openbmc/phosphor-networkd/src/system_queries.hpp (revision f02fc4a5adaf8c9d1b8e45980b50c12174d23bb4)
1 #pragma once
2 #include "types.hpp"
3 
4 #include <stdplus/zstring_view.hpp>
5 
6 #include <cstdint>
7 #include <string_view>
8 
9 namespace phosphor::network::system
10 {
11 struct EthInfo
12 {
13     bool autoneg;
14     uint16_t speed;
15     bool fullDuplex;
16 };
17 EthInfo getEthInfo(stdplus::zstring_view ifname);
18 
19 void setMTU(std::string_view ifname, unsigned mtu);
20 
21 void setNICUp(std::string_view ifname, bool up);
22 
23 void deleteIntf(unsigned idx);
24 
25 bool deleteLinkLocalIPv4ViaNetlink(unsigned ifidx,
26                                    const stdplus::SubnetAny& ip);
27 
28 } // namespace phosphor::network::system
29