Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

InetAddress Class Reference

The network name and address objects are all derived from a common InetAddress base class. Internet Address binary data type. More...

#include <socket.h>

Inheritance diagram for InetAddress:

BroadcastAddress InetHostAddress InetMaskAddress List of all members.

Public Methods

 InetAddress ()
 Create an Internet Address object with an empty (0.0.0.0) address.

 InetAddress (struct in_addr)
 Convert the system internet address data type (struct in_addr) into a Common C++ InetAddress object. More...

 InetAddress (const char *address)
 Convert a null terminated ASCII host address string (example: "127.0.0.1") directly into a Common C++ InetAddress object. More...

const char* getHostname (void) const
 Provide a string representation of the value (Internet Address) held in the InetAddress object. More...

bool isInetAddress (void) const
 May be used to verify if a given InetAddress returned by another function contains a "valid" address, or "0.0.0.0" which is often used to mark "invalid" InetAddress values. More...

struct in_addr getAddress (void) const
 Provide a low level system usable struct in_addr object from the contents of InetAddress. More...

InetAddress& operator= (const char *str)
InetAddress& operator= (struct in_addr addr)
bool operator! () const
bool operator== (const InetAddress &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 InetAddress &a) const
 Compare two internet addresses to see if they are not equal (if they each refer to unique and different physical ip addresses).


Protected Methods

void setAddress (const char *address)
 Used to specify a host name or numeric internet address. More...


Protected Attributes

struct in_addr ipaddr

Static Protected Attributes

Mutex mutex

Detailed Description

The network name and address objects are all derived from a common InetAddress base class. Internet Address binary data type.

Specific classes, such as InetHostAddress, InetMaskAddress, etc, are defined from InetAddress entirely so that the manner a network address is being used can easily be documented and understood from the code and to avoid common errors and accidental misuse of the wrong address object. For example, a "connection" to something that is declared as a "InetHostAddress" can be kept type-safe from a "connection" accidently being made to something that was declared a "InetBroadcastAddress".

Author(s):
David Sugar <dyfet@oste.com>


Constructor & Destructor Documentation

InetAddress::InetAddress ( )
 

Create an Internet Address object with an empty (0.0.0.0) address.

InetAddress::InetAddress ( struct in_addr )
 

Convert the system internet address data type (struct in_addr) into a Common C++ InetAddress object.

Parameters:
addr   struct of system used binary internet address.

InetAddress::InetAddress ( const char * address )
 

Convert a null terminated ASCII host address string (example: "127.0.0.1") directly into a Common C++ InetAddress object.

Parameters:
address   null terminated C string.


Member Function Documentation

struct in_addr InetAddress::getAddress ( void ) const [inline]
 

Provide a low level system usable struct in_addr object from the contents of InetAddress.

This is needed for services such as bind() and connect().

Returns:
system binary coded internet address.

const char * InetAddress::getHostname ( void ) const
 

Provide a string representation of the value (Internet Address) held in the InetAddress object.

Returns:
string representation of InetAddress.

bool InetAddress::isInetAddress ( void ) const
 

May be used to verify if a given InetAddress returned by another function contains a "valid" address, or "0.0.0.0" which is often used to mark "invalid" InetAddress values.

Returns:
true if address != 0.0.0.0.

bool InetAddress::operator! ( void ) const [inline]
 

bool InetAddress::operator!= ( const InetAddress & a ) const
 

Compare two internet addresses to see if they are not equal (if they each refer to unique and different physical ip addresses).

InetAddress& InetAddress::operator= ( struct in_addr addr )
 

InetAddress& InetAddress::operator= ( const char * str )
 

bool InetAddress::operator== ( const InetAddress & a ) const
 

Compare two internet addresses to see if they are equal (if they specify the physical address of the same internet host).

void InetAddress::setAddress ( const char * address ) [protected]
 

Used to specify a host name or numeric internet address.

Parameters:
address.  


Member Data Documentation

struct in_addr InetAddress::ipaddr [protected]
 

Mutex InetAddress::mutex [static, protected]
 


The documentation for this class was generated from the following file:
Generated at Fri Dec 15 07:08:32 2000 for CommonC++ by doxygen1.2.1 written by Dimitri van Heesch, © 1997-2000