NAME
socketpair - create a pair of connected sockets

SYNOPSIS
#include <sys/types.h>
#include <sys/socket.h>

socketpair(d, type, protocol, sv)
int d, type, protocol;
int sv[2];

DESCRIPTION
The socketpair 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[0] and sv[1]. The two sockets
are indistinguishable.

DIAGNOSTICS
A 0 is returned if the call succeeds, -1 if it fails.

ERRORS
The call succeeds unless:

[EMFILE] Too many descriptors are in use by this
process.

[EAFNOSUPPORT] The specified address family is not supported
on this machine.

[EPROTONOSUPPORT] The specified protocol is not supported on this
machine.

[EOPNOSUPPORT] 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.

SEE ALSO
read(2), write(2), pipe(2)

BUGS
This call is currently implemented only for the UNIX domain.