#include <INET_Addr.h>
Inheritance diagram for ACE_INET_Addr:
Public Methods | |
ACE_INET_Addr (void) | |
Default constructor. | |
ACE_INET_Addr (const ACE_INET_Addr &) | |
Copy constructor. | |
ACE_INET_Addr (const sockaddr_in *, int len) | |
Creates an <ACE_INET_Addr> from a sockaddr_in structure. | |
ACE_INET_Addr (u_short port_number, const char host_name[], int address_family=AF_UNSPEC) | |
ACE_EXPLICIT | ACE_INET_Addr (const char address[]) |
ACE_INET_Addr (u_short port_number, ACE_UINT32 ip_addr=INADDR_ANY) | |
ACE_INET_Addr (const char port_name[], const char host_name[], const char protocol[]="tcp") | |
ACE_INET_Addr (const char port_name[], ACE_UINT32 ip_addr, const char protocol[]="tcp") | |
ACE_INET_Addr (u_short port_number, const wchar_t host_name[], int address_family=AF_UNSPEC) | |
ACE_EXPLICIT | ACE_INET_Addr (const wchar_t address[]) |
ACE_INET_Addr (const wchar_t port_name[], const wchar_t host_name[], const wchar_t protocol[]=ACE_TEXT_WIDE("tcp")) | |
ACE_INET_Addr (const wchar_t port_name[], ACE_UINT32 ip_addr, const wchar_t protocol[]=ACE_TEXT_WIDE("tcp")) | |
~ACE_INET_Addr (void) | |
Default dtor. | |
int | set (const ACE_INET_Addr &) |
Initializes from another <ACE_INET_Addr>. | |
int | set (u_short port_number, const char host_name[], int encode=1, int address_family=AF_UNSPEC) |
int | set (u_short port_number, ACE_UINT32 ip_addr=INADDR_ANY, int encode=1, int map=0) |
int | set (const char port_name[], const char host_name[], const char protocol[]="tcp") |
int | set (const char port_name[], ACE_UINT32 ip_addr, const char protocol[]="tcp") |
int | set (const char addr[]) |
int | set (const sockaddr_in *, int len) |
Creates an <ACE_INET_Addr> from a sockaddr_in structure. | |
int | set (u_short port_number, const wchar_t host_name[], int encode=1, int address_family=AF_UNSPEC) |
int | set (const wchar_t port_name[], const wchar_t host_name[], const wchar_t protocol[]=ACE_TEXT_WIDE("tcp")) |
int | set (const wchar_t port_name[], ACE_UINT32 ip_addr, const wchar_t protocol[]=ACE_TEXT_WIDE("tcp")) |
int | set (const wchar_t addr[]) |
virtual void * | get_addr (void) const |
Return a pointer to the underlying network address. | |
int | get_addr_size (void) const |
virtual void | set_addr (void *, int len) |
Set a pointer to the address. | |
virtual void | set_addr (void *, int len, int map) |
Set a pointer to the address. | |
virtual int | addr_to_string (ACE_TCHAR buffer[], size_t size, int ipaddr_format=1) const |
virtual int | string_to_addr (const char address[]) |
void | set_port_number (u_short, int encode=1) |
int | set_address (const char *ip_addr, int len, int encode=1, int map=0) |
u_short | get_port_number (void) const |
Return the port number, converting it into host byte-order. | |
int | get_host_name (char hostname[], size_t hostnamelen) const |
int | get_host_name (wchar_t hostname[], size_t hostnamelen) const |
const char * | get_host_name (void) const |
const char * | get_host_addr (void) const |
Return the "dotted decimal" Internet address. | |
const char * | get_host_addr (char *dst, int size) const |
ACE_UINT32 | get_ip_address (void) const |
int | operator< (const ACE_INET_Addr &rhs) const |
int | operator== (const ACE_INET_Addr &SAP) const |
int | operator!= (const ACE_INET_Addr &SAP) const |
Compare two addresses for inequality. | |
virtual u_long | hash (void) const |
Computes and returns hash value. | |
void | dump (void) const |
Dump the state of an object. | |
Public Attributes | |
ACE_ALLOC_HOOK_DECLARE | |
Declare the dynamic allocation hooks. | |
Private Methods | |
int | get_host_name_i (char hostname[], size_t hostnamelen) const |
Insure that hostname is properly null-terminated. | |
void * | ip_addr_pointer (void) const |
int | ip_addr_size (void) const |
int | determine_type (void) const |
void | reset (void) |
Initialize underlying inet_addr_ to default values. | |
Private Attributes | |
union { | |
sockaddr_in in4_ | |
} | inet_addr_ |
|
Default constructor.
|
|
Copy constructor.
|
|
Creates an <ACE_INET_Addr> from a sockaddr_in structure.
|
|
Creates an <ACE_INET_Addr> from a <port_number> and the remote <host_name>. The port number is assumed to be in host byte order. To set a port already in network byte order, please
|
|
Initializes an <ACE_INET_Addr> from the <address>, which can be "ip-number:port-number" (e.g., "tango.cs.wustl.edu:1234" or "128.252.166.57:1234"). If there is no ':' in the <address> it is assumed to be a port number, with the IP address being INADDR_ANY. |
|
Creates an <ACE_INET_Addr> from a <port_number> and an Internet <ip_addr>. This method assumes that <port_number> and <ip_addr> are in host byte order. If you have addressing information in network byte order,
|
|
Uses <getservbyname> to create an <ACE_INET_Addr> from a <port_name>, the remote <host_name>, and the <protocol>. |
|
Uses <getservbyname> to create an <ACE_INET_Addr> from a <port_name>, an Internet <ip_addr>, and the <protocol>. This method assumes that <ip_addr> is in host byte order. |
|
|
|
|
|
|
|
|
|
Default dtor.
|
|
Transform the current <ACE_INET_Addr> address into string format. If <ipaddr_format> is non-0 this produces "ip-number:port-number" (e.g., "128.252.166.57:1234"), whereas if <ipaddr_format> is 0 this produces "ip-name:port-number" (e.g., "tango.cs.wustl.edu:1234"). Returns -1 if the <size> of the <buffer> is too small, else 0. |
|
|
|
Dump the state of an object.
Reimplemented from ACE_Addr. |
|
Return a pointer to the underlying network address.
Reimplemented from ACE_Addr. |
|
|
|
|
|
Return the "dotted decimal" Internet address.
|
|
Return the character representation of the hostname (this version is non-reentrant since it returns a pointer to a static data area). |
|
|
|
Return the character representation of the name of the host, storing it in the <hostname> (which is assumed to be <hostnamelen> bytes long). This version is reentrant. If <hostnamelen> is greater than 0 then <hostname> will be NUL-terminated even if -1 is returned. |
|
Insure that hostname is properly null-terminated.
|
|
Return the 4-byte IP address, converting it into host byte order. |
|
Return the port number, converting it into host byte-order.
|
|
Computes and returns hash value.
Reimplemented from ACE_Addr. |
|
|
|
|
|
Compare two addresses for inequality.
|
|
Returns true if <this> is less than <rhs>. In this context, "less than" is defined in terms of IP address and TCP port number. This operator makes it possible to use <ACE_INET_Addr>s in STL maps. |
|
Compare two addresses for equality. The addresses are considered equal if they contain the same IP address and port number. |
|
Initialize underlying inet_addr_ to default values.
|
|
|
|
|
|
|
|
|
|
Creates an <ACE_INET_Addr> from a sockaddr_in structure.
|
|
Initializes an <ACE_INET_Addr> from the <addr>, which can be "ip-number:port-number" (e.g., "tango.cs.wustl.edu:1234" or "128.252.166.57:1234"). If there is no ':' in the <address> it is assumed to be a port number, with the IP address being INADDR_ANY. |
|
Uses <getservbyname> to initialize an <ACE_INET_Addr> from a <port_name>, an <ip_addr>, and the <protocol>. This assumes that <ip_addr> is already in network byte order. |
|
Uses <getservbyname> to initialize an <ACE_INET_Addr> from a <port_name>, the remote <host_name>, and the <protocol>. |
|
Initializes an <ACE_INET_Addr> from a port_number and an Internet ip_addr. If encode is non-zero then the port number and IP address are converted into network byte order, otherwise they are assumed to be in network byte order already and are passed straight through. If <map> is non-zero and IPv6 support has been compiled in, then this address will be set to the IPv4-mapped IPv6 address of it. |
|
Initializes an <ACE_INET_Addr> from a <port_number> and the remote <host_name>. If <encode> is non-zero then <port_number> is converted into network byte order, otherwise it is assumed to be in network byte order already and are passed straight through. address_family can be used to select IPv4/IPv6 if the OS has IPv6 capability (ACE_HAS_IPV6 is defined). To specify IPv6, use the value AF_INET6. To specify IPv4, use AF_INET. |
|
Initializes from another <ACE_INET_Addr>.
|
|
Set a pointer to the address.
|
|
Set a pointer to the address.
Reimplemented from ACE_Addr. |
|
Sets the address without affecting the port number. If <encode> is enabled then <ip_addr> is converted into network byte order, otherwise it is assumed to be in network byte order already and are passed straight through. The size of the address is specified in the <len> parameter. If <map> is non-zero, IPv6 support has been compiled in, and <ip_addr> is an IPv4 address, then this address is set to the IPv4-mapped IPv6 address of it. |
|
Sets the port number without affecting the host name. If <encode> is enabled then <port_number> is converted into network byte order, otherwise it is assumed to be in network byte order already and are passed straight through. Reimplemented in ACE_Multihomed_INET_Addr. |
|
Initializes an <ACE_INET_Addr> from the <address>, which can be "ip-addr:port-number" (e.g., "tango.cs.wustl.edu:1234"), "ip-addr:port-name" (e.g., "tango.cs.wustl.edu:telnet"), "ip-number:port-number" (e.g., "128.252.166.57:1234"), or "ip-number:port-name" (e.g., "128.252.166.57:telnet"). If there is no ':' in the <address> it is assumed to be a port number, with the IP address being INADDR_ANY. |
|
Declare the dynamic allocation hooks.
Reimplemented from ACE_Addr. |
|
|
|
Underlying representation. This union uses the knowledge that the two structures share the first member, sa_family (as all sockaddr structures do). |