#include <conexus/ip_address.h>
Inheritance diagram for Conexus::IPBase::AddressBase:
This class represents an IP address string based interface to both IPv4 and IPv6 addresses which are further implemented in IPv4::Address and IPv6::Address.
Public Types | |
typedef boost::shared_ptr< AddressBase > | pointer |
Public Member Functions | |
AddressBase (const struct sockaddr_storage &addr) | |
virtual std::string | address_string () const =0 |
Returns the address as a string. | |
virtual std::string | subnet_mask_string () const =0 |
Returns the netmask associated with this address as a string. | |
virtual unsigned | prefix_length () const =0 |
Returns the prefix length of the subnet mask associated with this address. | |
virtual std::string | prefix_length_string () const =0 |
Returns the prefix length of the subnet mask associated with this address as a string. | |
virtual std::string | address_subnet_mask_string () const =0 |
Returns the address as an address/subnetmask string. | |
virtual std::string | cidr_address_string () const =0 |
Returns the address as a CIDR address/prefixlen string. | |
virtual std::string | prefix_string () const =0 |
Returns the prefix part of this address as a string. | |
virtual std::string | local_address_string () const =0 |
Returns the local part of this address as a string. | |
virtual uint16_t | port () const =0 |
Returns the port number associated with this address. | |
virtual std::string | port_string () const =0 |
Returns the port number associated with this address as a string. | |
virtual void | set_address (std::string address)=0 |
Sets the address to the specified value. | |
virtual void | set_address (std::string address, uint16_t port)=0 |
Sets the address and port to the specified value. | |
virtual void | set_prefix_length (unsigned prefix_length)=0 |
Sets the prefix length to the specified value. | |
virtual void | set_prefix_length (std::string prefix_length)=0 |
Sets the prefix length to the specified value. | |
virtual void | set_port (uint16_t port)=0 |
Sets the port portion of this address. | |
virtual void | set_port (std::string port)=0 |
Sets the port to the specified value. | |
virtual std::string | hostname () const =0 |
Performs a DNS query on the currently set address and returns the hostname string. | |
virtual std::string | servicename () const =0 |
Performs a service name lookup on the currently set port and returns the servicename string. | |
virtual bool | is_multicast () const =0 |
True if this is a multicast address. | |
virtual bool | is_any () const =0 |
True if this is the any address. | |
virtual bool | is_loopback () const =0 |
True if this is the loopback address. | |
sigc::signal< void, unsigned > | signal_address_port_changed () |
sigc::signal< void > | signal_prefix_changed () |
virtual const std::string & | object_type () |
virtual bool | is_ipv4 ()=0 |
virtual bool | is_ipv6 ()=0 |
Protected Attributes | |
sigc::signal< void, unsigned > | m_signal_address_port_changed |
sigc::signal< void > | m_signal_prefix_changed |