socketpair - create a pair of connected sockets
int socketpair(int d, int type, int protocol
The call creates an unnamed pair of connected sockets in the
specified domain d, of the specified type, and using the
optionally specified protocol. The descriptors used in
referencing the new sockets are returned in sv and sv.
The two sockets are indistinguishable.
On success, zero is returned. On error, -1 is returned, and
errno is set appropriately.
EMFILE Too many descriptors are in use by this process.
The specified address family is not supported on
The specified protocol is not supported on this
The specified protocol does not support creation of
EFAULT The address sv does not specify a valid part of the
process address space.
4.4BSD (the socketpair function call appeared in 4.2BSD).
Generally portable to/from non-BSD systems supporting clones
of the BSD socket layer (including System V variants).
read(2), write(2), pipe(2)