diff options
| author | Garrett D'Amore <garrett@damore.org> | 2024-10-11 23:03:08 -0700 |
|---|---|---|
| committer | Garrett D'Amore <garrett@damore.org> | 2024-10-11 23:03:33 -0700 |
| commit | 08bfec878de6d686f586f85c9da71b7f1804ad85 (patch) | |
| tree | 12ff9d5a0cc4b7577dd68b1c873ba1909b5fe133 /docs/ref | |
| parent | fce09d4e8774f9623d689865f9e2281c93cfcbe4 (diff) | |
| download | nng-08bfec878de6d686f586f85c9da71b7f1804ad85.tar.gz nng-08bfec878de6d686f586f85c9da71b7f1804ad85.tar.bz2 nng-08bfec878de6d686f586f85c9da71b7f1804ad85.zip | |
Add missing nng_socket_pair.md
Diffstat (limited to 'docs/ref')
| -rw-r--r-- | docs/ref/api/util/nng_socket_pair.md | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/docs/ref/api/util/nng_socket_pair.md b/docs/ref/api/util/nng_socket_pair.md new file mode 100644 index 00000000..454c15fc --- /dev/null +++ b/docs/ref/api/util/nng_socket_pair.md @@ -0,0 +1,42 @@ +# nng_socket_pair + +## NAME + +nng_socket_pair --- create a connected pair of BSD sockets + +## SYNOPSIS + +```c +#include <nng/nng.h> + +int nng_socket_pair(int fds[2]); +``` + +## DESCRIPTION + +The `nng_socket_pair` function creates a pair of connected BSD sockets. +These sockets, which are returned in the _fds_ array, are suitable for +use with the [BSD socket transport][socket]. + +On POSIX platforms, this is a thin wrapper around the standard `socketpair` function, +using the {{i:`AF_UNIX`}} family and the `SOCK_STREAM` socket type. +{{footnote: At present only POSIX platforms implementing `socketpair` support this function.}} + +> [!TIP] +> This function may be useful for creating a shared connection between a parent process and +> a child process on UNIX platforms, without requiring the processes use a shared filesystem or TCP connection. + +## RETURN VALUES + +This function returns 0 on success, and non-zero otherwise. + +## ERRORS + +- `NNG_ENOMEM`: Insufficient memory exists. +- `NNG_ENOTSUP`: This platform does not support socket pairs. + +## SEE ALSO + +[BSD Socket Transport][socket] + +[socket]: ../../tran/socket.md |
