#ifndef CCXX_INETINTERFACE_H #define CCXX_INETINTERFACE_H #include #ifndef CCXX_CONFIG_H_ #include #endif #ifndef CCXX_SOCKET_H_ #include #endif #ifndef CCXX_STRING_H_ #include #endif #ifdef CCXX_NAMESPACES namespace ost { #endif /**! InetInterface class * * This class is used to hold various informations about an internet (TCP/IP) * network device. */ class __EXPORT InetInterface : public NetworkInterface { public: /** * Creates a InetInterface from the system node (i.e. eth0 or ether0). */ InetInterface(const ost::String& node); ~InetInterface(); /** * Returns the IP address used by the interface. */ ost::InetHostAddress getAddress(); /** * Sets the IP address of the interface to address. */ bool setAddress(const ost::InetHostAddress& address); /** * Sets the netmask address of the interface to address. */ ost::InetMaskAddress getNetmask(); /** * Returns the netmask address used by the interface. */ bool setNetmask(const ost::InetMaskAddress& address); /** * Returns the broadcast address used by the interface. */ ost::BroadcastAddress getBroadcast(); /** * Sets the broadcast address of the interface to address. */ bool setBroadcast(const BroadcastAddress& address); }; #ifdef CCXX_NAMESPACES } #endif #endif