GNU CommonC++
Classes | Namespaces | Macros | Typedefs | Functions | Variables
address.h File Reference

Network addresses and sockets related classes. More...

#include <cc++/config.h>
#include <cc++/missing.h>
#include <cc++/thread.h>
#include <cc++/exception.h>

Go to the source code of this file.

Classes

class  ost::IPV4Validator
 Classes derived from IPV4Address would require an specific validator to pass to the IPV4Address constructor. More...
 
class  ost::IPV4MulticastValidator
 Class for the function object that validates multicast addresses. More...
 
class  ost::IPV4Cidr
 The CIDR class is used to support routing tables and validate address policies. More...
 
class  ost::IPV6Cidr
 The CIDR class is used to support routing tables and validate address policies. More...
 
class  ost::IPV4Address
 The network name and address objects are all derived from a common IPV4Address base class. More...
 
class  ost::IPV4Mask
 Internet addresses used specifically as masking addresses (such as " 255.255.255.0") are held in the IPV4Mask derived object. More...
 
class  ost::IPV4Host
 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...
 
class  ost::IPV4Broadcast
 The broadcast address object is used to store the broadcast address for a specific subnet. More...
 
class  ost::IPV4Multicast
 A specialization of IPV4Address that provides address validation for multicast addresses. More...
 
class  ost::IPV6Validator
 Classes derived from IPV6Address would require an specific validator to pass to the IPV6Address constructor. More...
 
class  ost::IPV6MulticastValidator
 Class for the function object that validates multicast addresses. More...
 
class  ost::IPV6Address
 The network name and address objects are all derived from a common IPV6Address base class. More...
 
class  ost::IPV6Mask
 Internet addresses used specifically as masking addresses (such as " 255.255.255.0") are held in the IPV6Mask derived object. More...
 
class  ost::IPV6Host
 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...
 
class  ost::IPV6Broadcast
 The broadcast address object is used to store the broadcast address for a specific subnet. More...
 
class  ost::IPV6Multicast
 A specialization of IPV6Address that provides address validation for multicast addresses. More...
 

Namespaces

 ost
 

Macros

#define INET_IPV4_ADDRESS_SIZE   16
 
#define CIDR_IPV4_ADDRESS_SIZE   32
 
#define INET_IPV6_ADDRESS_SIZE   40
 
#define CIDR_IPV6_ADDRESS_SIZE   45
 
#define CIDR   IPV4Cidr
 
#define InetAddress   IPV4Address
 
#define InetHostAddress   IPV4Host
 
#define InetMaskAddress   IPV4Mask
 
#define InetMcastAddress   IPV4Multicast
 
#define InetMcastAddressValidator   IPV4MulticastValidator
 
#define InetAddrValidator   IPV4Validator
 
#define BroadcastAddress   IPV4Broadcast
 

Typedefs

typedef unsigned short ost::tpport_t
 Transport Protocol Ports. More...
 

Functions

__EXPORT std::ostream & ost::operator<< (std::ostream &os, const IPV4Address &ia)
 
struct in_addr ost::getaddress (const IPV4Address &ia)
 
__EXPORT std::ostream & ost::operator<< (std::ostream &os, const IPV6Address &ia)
 
struct in6_addr ost::getaddress (const IPV6Address &ia)
 

Variables

class __EXPORT ost::IPV4Host
 
class __EXPORT ost::IPV6Host
 

Detailed Description

Network addresses and sockets related classes.

Macro Definition Documentation

◆ BroadcastAddress

#define BroadcastAddress   IPV4Broadcast
Examples:
tcpthread.cpp.

◆ CIDR

#define CIDR   IPV4Cidr

◆ CIDR_IPV4_ADDRESS_SIZE

#define CIDR_IPV4_ADDRESS_SIZE   32

◆ CIDR_IPV6_ADDRESS_SIZE

#define CIDR_IPV6_ADDRESS_SIZE   45

◆ INET_IPV4_ADDRESS_SIZE

#define INET_IPV4_ADDRESS_SIZE   16

◆ INET_IPV6_ADDRESS_SIZE

#define INET_IPV6_ADDRESS_SIZE   40

◆ InetAddress

#define InetAddress   IPV4Address
Examples:
tcp.cpp, tcpstr1.cpp, and tcpthread.cpp.

◆ InetAddrValidator

#define InetAddrValidator   IPV4Validator

◆ InetHostAddress

#define InetHostAddress   IPV4Host

◆ InetMaskAddress

#define InetMaskAddress   IPV4Mask

◆ InetMcastAddress

#define InetMcastAddress   IPV4Multicast

◆ InetMcastAddressValidator

#define InetMcastAddressValidator   IPV4MulticastValidator