GNU CommonC++
Public Member Functions | Friends | List of all members
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. More...
 
 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. More...
 
IPV6Hostoperator &= (const IPV6Mask &mask)
 Mask the internet host address object with a network mask address. More...
 
- 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. More...
 
 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. More...
 
 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. More...
 
 IPV6Address (const IPV6Address &rhs)
 Copy constructor. More...
 
virtual ~IPV6Address ()
 Destructor. More...
 
const char * getHostname (void) const
 Provide a string representation of the value (Internet Address) held in the IPV6Address object. More...
 
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. More...
 
struct in6_addr getAddress (void) const
 Provide a low level system usable struct in_addr object from the contents of IPV6Address. More...
 
struct in6_addr getAddress (size_t i) const
 Provide a low level system usable struct in_addr object from the contents of IPV6Address. More...
 
size_t getAddressCount () const
 Returns the number of internet addresses that an IPV6Address object contains. More...
 
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). More...
 
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). More...
 

Friends

class __EXPORT IPV6Mask
 
__EXPORT 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". More...
 
void setAddress (const char *host)
 Used to specify a host name or numeric internet address. More...
 
- 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.

◆ 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.

Friends And Related Function Documentation

◆ IPV6Mask

friend class __EXPORT IPV6Mask
friend

◆ operator &

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

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