socketpair(2) - NetBSD Manual Pages

Command: Section: Arch: Collection:  
SOCKETPAIR(2)             NetBSD System Calls Manual             SOCKETPAIR(2)

socketpair -- create a pair of connected sockets
Standard C Library (libc, -lc)
#include <sys/socket.h> int socketpair(int d, int type, int protocol, int *sv);
The socketpair() call creates an unnamed pair of connected sockets in the specified domain d, of the specified type, and using the optionally spec- ified protocol. The descriptors used in referencing the new sockets are returned in sv[0] and sv[1]. The two sockets are indistinguishable.
A 0 is returned if the call succeeds, -1 if it fails.
The call succeeds unless: [EMFILE] Too many descriptors are in use by this process. [ENFILE] The system file table is full. [EAFNOSUPPORT] The specified address family is not supported on this machine. [EPROTONOSUPPORT] The specified protocol is not supported on this machine. [EOPNOTSUPP] The specified protocol does not support creation of socket pairs. [EFAULT] The address sv does not specify a valid part of the process address space.
pipe(2), read(2), write(2)
The socketpair() function call appeared in 4.2BSD.
This call is currently implemented only for the LOCAL domain. Many oper- ating systems only accept a protocol of PF_UNSPEC, so that should be used instead of PF_LOCAL for maximal portability. NetBSD 5.0 August 18, 2002 NetBSD 5.0
Powered by man-cgi (2020-09-24). Maintained for NetBSD by Kimmo Suominen. Based on man-cgi by Panagiotis Christias.