#include <INET_Addr.h>
Inheritance diagram for ACE_INET_Addr:
Public Methods | |
ACE_INET_Addr (void) | |
Default constructor. More... | |
ACE_INET_Addr (const ACE_INET_Addr &) | |
Copy constructor. More... | |
ACE_INET_Addr (const sockaddr_in *, int len) | |
Creates an <ACE_INET_Addr> from a sockaddr_in structure. More... | |
ACE_INET_Addr (u_short port_number, const char host_name[], int address_family=AF_UNSPEC) | |
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
| |
ACE_EXPLICIT | ACE_INET_Addr (const char address[]) |
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"). More... | |
ACE_INET_Addr (u_short port_number, ACE_UINT32 ip_addr=INADDR_ANY) | |
Creates an <ACE_INET_Addr> from a <port_number> and an Internet <ip_addr>. More... | |
ACE_INET_Addr (const char port_name[], const char host_name[], const char protocol[]="tcp") | |
Uses <getservbyname> to create an <ACE_INET_Addr> from a <port_name>, the remote <host_name>, and the <protocol>. More... | |
ACE_INET_Addr (const char port_name[], ACE_UINT32 ip_addr, const char protocol[]="tcp") | |
Uses <getservbyname> to create an <ACE_INET_Addr> from a <port_name>, an Internet <ip_addr>, and the <protocol>. More... | |
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. More... | |
int | set (const ACE_INET_Addr &) |
Initializes from another <ACE_INET_Addr>. More... | |
int | set (u_short port_number, const char host_name[], int encode=1, int address_family=AF_UNSPEC) |
Initializes an <ACE_INET_Addr> from a <port_number> and the remote <host_name>. More... | |
int | set (u_short port_number, ACE_UINT32 ip_addr=INADDR_ANY, int encode=1) |
Initializes an <ACE_INET_Addr> from a port_number and an Internet ip_addr. More... | |
int | set (const char port_name[], const char host_name[], const char protocol[]="tcp") |
Uses <getservbyname> to initialize an <ACE_INET_Addr> from a <port_name>, the remote <host_name>, and the <protocol>. More... | |
int | set (const char port_name[], ACE_UINT32 ip_addr, const char protocol[]="tcp") |
Uses <getservbyname> to initialize an <ACE_INET_Addr> from a <port_name>, an <ip_addr>, and the <protocol>. More... | |
int | set (const char addr[]) |
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"). More... | |
int | set (const sockaddr_in *, int len) |
Creates an <ACE_INET_Addr> from a sockaddr_in structure. More... | |
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. More... | |
int | get_addr_size (void) const |
virtual void | set_addr (void *, int len) |
Set a pointer to the address. More... | |
virtual int | addr_to_string (ACE_TCHAR buffer[], size_t size, int ipaddr_format=1) const |
Transform the current <ACE_INET_Addr> address into string format. More... | |
virtual int | string_to_addr (const char address[]) |
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"). More... | |
void | set_port_number (u_short, int encode=1) |
Sets the port number without affecting the host name. More... | |
int | set_address (const char *ip_addr, int len, int encode=1) |
Sets the address without affecting the port number. More... | |
u_short | get_port_number (void) const |
Return the port number, converting it into host byte-order. More... | |
int | get_host_name (char hostname[], size_t hostnamelen) const |
Return the character representation of the name of the host, storing it in the <hostname> (which is assumed to be <hostnamelen> bytes long). More... | |
int | get_host_name (wchar_t hostname[], size_t hostnamelen) const |
const char * | get_host_name (void) const |
Return the character representation of the hostname (this version is non-reentrant since it returns a pointer to a static data area). More... | |
const char * | get_host_addr (void) const |
Return the "dotted decimal" Internet address. More... | |
const char * | get_host_addr (char *dst, int size) const |
ACE_UINT32 | get_ip_address (void) const |
Return the 4-byte IP address, converting it into host byte order. More... | |
int | operator< (const ACE_INET_Addr &rhs) const |
Returns true if <this> is less than <rhs>. More... | |
int | operator== (const ACE_INET_Addr &SAP) const |
Compare two addresses for equality. The addresses are considered equal if they contain the same IP address and port number. More... | |
int | operator!= (const ACE_INET_Addr &SAP) const |
Compare two addresses for inequality. More... | |
virtual u_long | hash (void) const |
Computes and returns hash value. More... | |
void | dump (void) const |
Dump the state of an object. More... | |
Public Attributes | |
ACE_ALLOC_HOOK_DECLARE | |
Declare the dynamic allocation hooks. More... | |
Private Methods | |
int | get_host_name_i (char hostname[], size_t hostnamelen) const |
Insure that hostname is properly null-terminated. More... | |
void * | ip_addr_pointer (void) const |
int | ip_addr_size (void) const |
int | determine_type (void) const |
Private Attributes | |
union { | |
sockaddr_in in4_ | |
} | inet_addr_ |
Underlying representation. This union uses the knowledge that the two structures share the first member, sa_family (as all sockaddr structures do). More... |
|
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.
|
|
|
|
|
|
|
|
|
|
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. |
|
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.
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. |
|
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. |
|
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).
|