GNU CommonC++
ost::IPV6Host Class Reference

This object is used to hold the actual and valid internet address of a specific host machine that will be accessed through a socket. More...

#include <address.h>

Inheritance diagram for ost::IPV6Host:
ost::IPV6Address

Public Member Functions

 IPV6Host (const char *host=NULL)
 Create a new host address for a specific internet host.
 IPV6Host (struct in6_addr addr)
 Convert a system socket binary address such as may be returned through the accept() call or getsockpeer() into an internet host address object.
IPV6Hostoperator&= (const IPV6Mask &mask)
 Mask the internet host address object with a network mask address.
Public Member Functions inherited from ost::IPV6Address
 IPV6Address (const IPV6Validator *validator=NULL)
 Create an Internet Address object with an empty (0.0.0.0) address.
 IPV6Address (struct in6_addr addr, const IPV6Validator *validator=NULL)
 Convert the system internet address data type (struct in_addr) into a Common C++ IPV6Address object.
 IPV6Address (const char *address, const IPV6Validator *validator=NULL)
 Convert a null terminated ASCII host address string (example: "127.0.0.1") or host address name (example: "www.voxilla.org") directly into a Common C++ IPV6Address object.
 IPV6Address (const IPV6Address &rhs)
 Copy constructor.
virtual ~IPV6Address ()
 Destructor.
const char * getHostname (void) const
 Provide a string representation of the value (Internet Address) held in the IPV6Address object.
bool isInetAddress (void) const
 May be used to verify if a given IPV6Address returned by another function contains a "valid" address, or "0.0.0.0" which is often used to mark "invalid" IPV6Address values.
struct in6_addr getAddress (void) const
 Provide a low level system usable struct in_addr object from the contents of IPV6Address.
struct in6_addr getAddress (size_t i) const
 Provide a low level system usable struct in_addr object from the contents of IPV6Address.
size_t getAddressCount () const
 Returns the number of internet addresses that an IPV6Address object contains.
IPV6Addressoperator= (const char *str)
IPV6Addressoperator= (struct in6_addr addr)
IPV6Addressoperator= (const IPV6Address &rhs)
bool operator! () const
bool operator== (const IPV6Address &a) const
 Compare two internet addresses to see if they are equal (if they specify the physical address of the same internet host).
bool operator!= (const IPV6Address &a) const
 Compare two internet addresses to see if they are not equal (if they each refer to unique and different physical ip addresses).

Friends

class IPV6Mask
IPV6Host operator& (const IPV6Host &addr, const IPV6Mask &mask)

Additional Inherited Members

Protected Member Functions inherited from ost::IPV6Address
bool setIPAddress (const char *host)
 Sets the IP address from a string representation of the numeric address, ie "127.0.0.1".
void setAddress (const char *host)
 Used to specify a host name or numeric internet address.
Protected Attributes inherited from ost::IPV6Address
struct in6_addr * ipaddr
size_t addr_count
char * hostname
Static Protected Attributes inherited from ost::IPV6Address
static Mutex mutex

Detailed Description

This object is used to hold the actual and valid internet address of a specific host machine that will be accessed through a socket.

Author
David Sugar dyfet.nosp@m.@ost.nosp@m.el.co.nosp@m.m

Address of a specific Internet host machine.

Constructor & Destructor Documentation

◆ IPV6Host() [1/2]

ost::IPV6Host::IPV6Host ( const char * host = NULL)

Create a new host address for a specific internet host.

The internet host can be specified in a null terminated ASCII string and include either the physical host address or the DNS name of a host machine. Hence, an IPV6Host ("www.voxilla.org") can be directly declaired in this manner.

Defaults to the IP address that represents the interface matching "gethostname()".

Parameters
hostdns or physical address of an Internet host.

Referenced by operator&, and operator&=().

◆ IPV6Host() [2/2]

ost::IPV6Host::IPV6Host ( struct in6_addr addr)

Convert a system socket binary address such as may be returned through the accept() call or getsockpeer() into an internet host address object.

Parameters
addrbinary address of internet host.

Member Function Documentation

◆ operator&=()

IPV6Host & ost::IPV6Host::operator&= ( const IPV6Mask & mask)

Mask the internet host address object with a network mask address.

This is commonly used to coerce an address by subnet.

References IPV6Host(), and IPV6Mask.

◆ IPV6Mask

friend class IPV6Mask
friend

References __EXPORT, and IPV6Mask.

Referenced by IPV6Mask, operator&, and operator&=().

◆ operator&

IPV6Host operator& ( const IPV6Host & addr,
const IPV6Mask & mask )
friend

References __EXPORT, IPV6Host(), and IPV6Mask.


The documentation for this class was generated from the following file: