GNU CommonC++
Public Member Functions | Friends

ost::IPV4Mask Class Reference

Internet addresses used specifically as masking addresses (such as " 255.255.255.0") are held in the IPV4Mask derived object. More...

#include <address.h>

Inheritance diagram for ost::IPV4Mask:
ost::IPV4Address

List of all members.

Public Member Functions

 IPV4Mask (const char *mask)
 Create the mask from a null terminated ASCII string such as "255.255.255.128".
IPV4Addressoperator= (unsigned long addr)
 Allows assignment from the return of functions like inet_addr() or htonl()

Friends

__EXPORT IPV4Host operator& (const IPV4Host &addr, const IPV4Mask &mask)
 Masks are usually used to coerce host addresses into a specific router or class domain.

Detailed Description

Internet addresses used specifically as masking addresses (such as " 255.255.255.0") are held in the IPV4Mask derived object.

The seperate class is used so that C++ type casting can automatically determine when an IPV4Address object is really a mask address object rather than simply using the base class. This also allows manipulative operators for address masking to operate only when presented with a Masked address as well as providing cleaner and safer source.

Author:
David Sugar <dyfet@ostel.com> Internet Address Mask such as subnet masks.

Constructor & Destructor Documentation

ost::IPV4Mask::IPV4Mask ( const char *  mask)

Create the mask from a null terminated ASCII string such as "255.255.255.128".

Parameters:
masknull terminated ASCII mask string.

Member Function Documentation

IPV4Address& ost::IPV4Mask::operator= ( unsigned long  addr) [inline]

Allows assignment from the return of functions like inet_addr() or htonl()

Reimplemented from ost::IPV4Address.

References ost::IPV4Address::operator=().


Friends And Related Function Documentation

__EXPORT IPV4Host operator& ( const IPV4Host addr,
const IPV4Mask mask 
) [friend]

Masks are usually used to coerce host addresses into a specific router or class domain.

This can be done by taking the Inet Host Address object and "and"ing it with an address mask. This operation can be directly expressed in C++ through the & operator.

Returns:
a internet host address that has been masked.
Parameters:
addrhost address to be masked by subnet.
maskinetnet mask address object to mask by.

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