Provided by: libnng-dev_1.10.1-1_amd64 

NAME
nng_sockaddr - socket address
SYNOPSIS
#include <nng/nng.h>
typedef union nng_sockaddr {
uint16_t s_family;
nng_sockaddr_ipc s_ipc;
nng_sockaddr_inproc s_inproc;
nng_sockaddr_in s_in;
nng_sockaddr_in6 s_in6;
nng_sockaddr_zt s_zt;
nng_sockaddr_abstract s_abstract;
} nng_sockaddr;
enum sockaddr_family {
NNG_AF_UNSPEC = 0,
NNG_AF_INPROC = 1,
NNG_AF_IPC = 2,
NNG_AF_INET = 3,
NNG_AF_INET6 = 4,
NNG_AF_ZT = 5,
NNG_AF_ABSTRACT = 6
};
DESCRIPTION
An nng_sockaddr is a structure used for representing the addresses used by underlying transports, such as
TCP/IP addresses, IPC paths, and so forth.
The name sockaddr is based on its similarity with POSIX struct sockaddr, but in NNG, these addresses
are more closely affiliated with instances of nng_pipe than of nng_socket. The naming confusion is
unfortunate.
This structure is actually a union, with different members for different types of addresses.
Every member structure has as its first element a uint16_t field containing the address family. This
overlaps the s_family member of the union, and indicates which specific member should be used.
The values of s_family are as follows:
NNG_AF_UNSPEC
Invalid address, no other valid fields.
NNG_AF_INPROC
Address for intraprocess communication (nng_inproc(7)). The s_inproc member is valid.
NNG_AF_IPC
Address for interprocess communication (nng_ipc(7)). The s_path member is valid.
NNG_AF_INET
Address for TCP/IP (v4) communication. The s_in member is valid.
NNG_AF_INET6
Address for TCP/IP (v6) communication. The s_in6 member is valid.
NNG_AF_ZT
Address for ZeroTier transport (nng_zerotier(7)). The s_zt member is valid.
NNG_AF_ABSTRACT
Address for an abstract UNIX domain socket. The s_abstract member is valid.
Please see the manual pages for each individual type for more information.
SEE ALSO
nng_sockaddr_abstract(5), nng_sockaddr_in(5), nng_sockaddr_in6(5), nng_sockaddr_inproc(5),
nng_sockaddr_ipc(5), nng_sockaddr_zt(5), nng(7)
2025-02-02 NNG_SOCKADDR(5)