SocketAddress class. More...
#include <SocketAddress.h>
Public Member Functions | |
| constexpr | SocketAddress ()=default |
| Create an unspecified SocketAddress. More... | |
| SocketAddress (const nsapi_addr_t &addr, uint16_t port=0) | |
| Create a SocketAddress from a raw IP address and port. More... | |
| SocketAddress (const char *addr, uint16_t port=0) | |
| Create a SocketAddress from an IP address and port. More... | |
| SocketAddress (const void *bytes, nsapi_version_t version, uint16_t port=0) | |
| Create a SocketAddress from raw IP bytes, IP version, and port. More... | |
| SocketAddress (const SocketAddress &addr) | |
| Create a SocketAddress from another SocketAddress. More... | |
| ~SocketAddress ()=default | |
| Destructor. More... | |
| bool | set_ip_address (const char *addr) |
| Set the IP address. More... | |
| void | set_ip_bytes (const void *bytes, nsapi_version_t version) |
| Set the raw IP bytes and IP version. More... | |
| void | set_addr (const nsapi_addr_t &addr) |
| Set the raw IP address. More... | |
| void | set_port (uint16_t port) |
| Set the port. More... | |
| const char * | get_ip_address () const |
| Get the human-readable IP address. More... | |
| const void * | get_ip_bytes () const |
| Get the raw IP bytes. More... | |
| nsapi_version_t | get_ip_version () const |
| Get the IP address version. More... | |
| nsapi_addr_t | get_addr () const |
| Get the raw IP address. More... | |
| uint16_t | get_port () const |
| Get the port. More... | |
| operator bool () const | |
| Test if address is zero. More... | |
| SocketAddress & | operator= (const SocketAddress &addr) |
| Copy address from another SocketAddress. More... | |
Friends | |
| bool | operator== (const SocketAddress &a, const SocketAddress &b) |
| Compare two addresses for equality. More... | |
| bool | operator!= (const SocketAddress &a, const SocketAddress &b) |
| Compare two addresses for equality. More... | |
SocketAddress class.
Representation of an IP address and port pair.
Definition at line 37 of file SocketAddress.h.
|
default |
Create an unspecified SocketAddress.
| SocketAddress | ( | const nsapi_addr_t & | addr, |
| uint16_t | port = 0 |
||
| ) |
Create a SocketAddress from a raw IP address and port.
| addr | Raw IP address |
| port | Optional 16-bit port, defaults to 0 |
| SocketAddress | ( | const char * | addr, |
| uint16_t | port = 0 |
||
| ) |
Create a SocketAddress from an IP address and port.
| addr | Null-terminated representation of the IP address |
| port | Optional 16-bit port, defaults to 0 |
| SocketAddress | ( | const void * | bytes, |
| nsapi_version_t | version, | ||
| uint16_t | port = 0 |
||
| ) |
Create a SocketAddress from raw IP bytes, IP version, and port.
| bytes | Raw IP address in big-endian order |
| version | IP address version, NSAPI_IPv4 or NSAPI_IPv6 |
| port | Optional 16-bit port, defaults to 0 |
| SocketAddress | ( | const SocketAddress & | addr | ) |
Create a SocketAddress from another SocketAddress.
| addr | SocketAddress to copy |
|
default |
Destructor.
| nsapi_addr_t get_addr | ( | ) | const |
| const char* get_ip_address | ( | ) | const |
Get the human-readable IP address.
Allocates memory for a string and converts binary address to human-readable format. String is freed in the destructor.
| const void* get_ip_bytes | ( | ) | const |
Get the raw IP bytes.
Definition at line 119 of file SocketAddress.h.
| nsapi_version_t get_ip_version | ( | ) | const |
Get the IP address version.
Definition at line 128 of file SocketAddress.h.
| uint16_t get_port | ( | ) | const |
|
explicit |
Test if address is zero.
| SocketAddress& operator= | ( | const SocketAddress & | addr | ) |
Copy address from another SocketAddress.
| addr | SocketAddress to copy |
| SocketAddress | reference to this address |
| void set_addr | ( | const nsapi_addr_t & | addr | ) |
Set the raw IP address.
| addr | Raw IP address |
| bool set_ip_address | ( | const char * | addr | ) |
Set the IP address.
| addr | Null-terminated represention of the IP address |
| void set_ip_bytes | ( | const void * | bytes, |
| nsapi_version_t | version | ||
| ) |
Set the raw IP bytes and IP version.
| bytes | Raw IP address in big-endian order |
| version | IP address version, NSAPI_IPv4 or NSAPI_IPv6 |
| void set_port | ( | uint16_t | port | ) |
|
friend |
Compare two addresses for equality.
|
friend |
Compare two addresses for equality.