xref: /openbmc/phosphor-networkd/src/rtnetlink.hpp (revision 9b2a20d3cfa1131521456b9ebfde7a7bb8b234bb)
1a7344c3aSWilliam A. Kennington III #pragma once
2a7344c3aSWilliam A. Kennington III #include "types.hpp"
3a7344c3aSWilliam A. Kennington III 
4a7344c3aSWilliam A. Kennington III #include <optional>
5a7344c3aSWilliam A. Kennington III #include <string_view>
6a7344c3aSWilliam A. Kennington III #include <tuple>
7a7344c3aSWilliam A. Kennington III 
8a7344c3aSWilliam A. Kennington III namespace phosphor::network::netlink
9a7344c3aSWilliam A. Kennington III {
106a92363eSWilliam A. Kennington III 
111aeacc90SWilliam A. Kennington III InterfaceInfo intfFromRtm(std::string_view msg);
121aeacc90SWilliam A. Kennington III 
13*9b2a20d3SWilliam A. Kennington III std::optional<std::tuple<unsigned, stdplus::InAnyAddr>>
14a7344c3aSWilliam A. Kennington III     gatewayFromRtm(std::string_view msg);
156a92363eSWilliam A. Kennington III 
166a92363eSWilliam A. Kennington III AddressInfo addrFromRtm(std::string_view msg);
176a92363eSWilliam A. Kennington III 
18a8426902SWilliam A. Kennington III NeighborInfo neighFromRtm(std::string_view msg);
19a8426902SWilliam A. Kennington III 
206a92363eSWilliam A. Kennington III } // namespace phosphor::network::netlink
21