9 #ifndef INCLUDE_FUNAPI_SYSTEM_HARDWARE_INFO_H_
10 #define INCLUDE_FUNAPI_SYSTEM_HARDWARE_INFO_H_
12 #include <boost/array.hpp>
13 #include <boost/asio.hpp>
14 #include <boost/noncopyable.hpp>
31 boost::array<uint8_t, 6> hw_address_;
47 typedef std::map<FunapiProtocol, uint16_t> ProtocolPortMap;
69 DEPRECATED(
static boost::asio::ip::address_v4 GetAwsPublicIpv4());
74 #endif // INCLUDE_FUNAPI_SYSTEM_HARDWARE_INFO_H_
boost::asio::ip::address netmask_
Netmask applying to the NIC.
Definition: hardware_info.h:30
static boost::asio::ip::address GetExternalIp()
Returns an external IP the server is assigned.
std::map< string, const NicInfo > NicInfoMap
NIC name to NIC information mapping.
Definition: hardware_info.h:44
static const NicInfoMap & GetNicInfo()
Returns available NICs.
DEPRECATED(static boost::asio::ip::address_v4 GetAwsPublicIpv4())
Returns a public IP if the server is on AWS.
static ProtocolPortMap GetExternalPorts()
Returns <protocol, port> tuples.
Datastructure to hold IP-capable Network Interface Card (NIC) information.
Definition: hardware_info.h:27
static std::string GetExternalHostname()
Returns an hostname or IP address for the server.
string name_
NIC name.
Definition: hardware_info.h:28
boost::asio::ip::address address_
IP address associated with the NIC.
Definition: hardware_info.h:29
Class to access hardware information.
Definition: hardware_info.h:24