Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Examples  

ost::IPV6Cidr Class Reference

The CIDR class is used to support routing tables and validate address policies. Classless Internet Domain Routing. More...

#include <address.h>

List of all members.

Public Methods

struct in6_addr getNetwork (void) const
 Get network address associated with this cidr. More...

struct in6_addr getNetmask (void) const
 Get network mask associated with this cidr. More...

struct in6_addr getBroadcast (void) const
 Compute the broadcast address associated with this cidr. More...

void set (const char *cidr)
 Set the cidr from a full or partial hostname, or from a host/bits specification. More...

 IPV6Cidr (const char *cidr)
 Construct a new cidr from a string. More...

 IPV6Cidr ()
 Construct an empty cidr. More...

 IPV6Cidr (IPV6Cidr &)
 Construct a copy of a cidr. More...

bool isMember (const struct sockaddr *saddr) const
 See if a socket address is a member of this cidr's network. More...

bool isMember (const struct in6_addr &inaddr) const
 See if a low level address object is a member of this cidr's net. More...

bool operator== (const struct sockaddr *sa) const
bool operator== (const struct in6_addr &a) const

Protected Methods

unsigned getMask (const char *cp) const

Protected Attributes

struct in6_addr netmask network


Detailed Description

The CIDR class is used to support routing tables and validate address policies. Classless Internet Domain Routing.

Author:
David Sugar <dyfet@gnutelephony.org>


Constructor & Destructor Documentation

ost::IPV6Cidr::IPV6Cidr ( const char * cidr )
 

Construct a new cidr from a string.

Parameters:
cidr   string to use.

ost::IPV6Cidr::IPV6Cidr ( )
 

Construct an empty cidr.

ost::IPV6Cidr::IPV6Cidr ( IPV6Cidr & )
 

Construct a copy of a cidr.

Parameters:
cidr   to copy from.


Member Function Documentation

struct in6_addr ost::IPV6Cidr::getBroadcast ( void ) const
 

Compute the broadcast address associated with this cidr.

Returns:
system binary coded network address.

unsigned ost::IPV6Cidr::getMask ( const char * cp ) const [protected]
 

struct in6_addr ost::IPV6Cidr::getNetmask ( void ) const [inline]
 

Get network mask associated with this cidr.

Returns:
system binary coded network mask.

struct in6_addr ost::IPV6Cidr::getNetwork ( void ) const [inline]
 

Get network address associated with this cidr.

Returns:
system binary coded address.

bool ost::IPV6Cidr::isMember ( const struct in6_addr & inaddr ) const
 

See if a low level address object is a member of this cidr's net.

Parameters:
inaddr   object to test.
Returns:
true if member of cidr.

bool ost::IPV6Cidr::isMember ( const struct sockaddr * saddr ) const
 

See if a socket address is a member of this cidr's network.

Parameters:
saddr   pointer to test.
Returns:
true if member of cidr.

bool ost::IPV6Cidr::operator== ( const struct in6_addr & a ) const [inline]
 

bool ost::IPV6Cidr::operator== ( const struct sockaddr * sa ) const [inline]
 

void ost::IPV6Cidr::set ( const char * cidr )
 

Set the cidr from a full or partial hostname, or from a host/bits specification.

Parameters:
cidr   string to use.


Member Data Documentation

struct in6_addr netmask ost::IPV6Cidr::network [protected]
 


The documentation for this class was generated from the following file:
Generated at Fri May 30 14:51:02 2008 for GNU CommonC++ by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001