UCommon
|
Common socket class and address manipulation. More...
#include <ucommon/timers.h>
#include <ucommon/linked.h>
#include <ucommon/string.h>
#include <ucommon/typeref.h>
#include <unistd.h>
#include <sys/socket.h>
#include <net/if.h>
#include <netinet/in.h>
#include <netdb.h>
#include <errno.h>
#include <stdio.h>
Go to the source code of this file.
Data Structures | |
struct | hostaddr_internet |
An object that holds ipv4 or ipv6 binary encoded host addresses. More... | |
struct | sockaddr_internet |
An object that can hold a ipv4 or ipv6 socket address. More... | |
class | ucommon::linked_pointer< sockaddr_struct > |
Linked pointer for address lists. More... | |
Namespaces | |
namespace | ucommon |
Common namespace for all ucommon objects. | |
Macros | |
#define | DCCP_SOCKOPT_AVAILABLE_CCIDS 12 |
#define | DCCP_SOCKOPT_CCID 13 |
#define | DCCP_SOCKOPT_RX_CCID 15 |
#define | DCCP_SOCKOPT_TX_CCID 14 |
#define | DEFAULT_FAMILY AF_INET |
#define | IPTOS_LOWDELAY 0x10 |
#define | IPTOS_MINCOST 0x02 |
#define | IPTOS_RELIABILITY 0x04 |
#define | IPTOS_THROUGHPUT 0x08 |
#define | SOCK_DCCP 6 |
#define | SOL_DCCP 269 |
Typedefs | |
typedef struct sockaddr | sockaddr_struct |
typedef struct sockaddr * | sockaddr_t |
typedef TCPServer | ucommon::tcpserv_t |
Functions | |
class | ucommon::__attribute__ ((visibility("default"))) ExclusiveProtocol |
An exclusive locking protocol interface base. More... | |
const struct sockaddr * | ucommon::addr (Socket::address &address) |
A convenience function to convert a socket address list into a socket address. More... | |
struct addrinfo * | ucommon::addrinfo (Socket::address &address) |
A convenience function to convert a socket address list into an addrinfo. More... | |
bool | ucommon::eq (const struct sockaddr *s1, const struct sockaddr *s2) |
Compare two socket addresses to see if equal. More... | |
bool | ucommon::eq (const struct sockaddr_storage *s1, const struct sockaddr_storage *s2) |
Compare two stored socket addresses to see if equal. More... | |
bool | ucommon::eq_host (const struct sockaddr *s1, const struct sockaddr *s2) |
Compare two host addresses to see if equal. More... | |
bool | ucommon::eq_subnet (const struct sockaddr *s1, const struct sockaddr *s2) |
String | ucommon::str (Socket &so, size_t size) |
Common socket class and address manipulation.
This offers a common socket base class that exposes socket functionality based on what the target platform supports. Support for multicast, IPV6 addressing, and manipulation of cidr policies are all supported here.
Definition in file socket.h.