NAME

     socketpair - create a pair of connected sockets


SYNOPSIS

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

     int socketpair(int d, int type, int protocol


DESCRIPTION

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


RETURN VALUE

     On success, zero is returned.  On error, -1 is returned, and
     errno is set appropriately.


ERRORS

     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.


CONFORMING TO

     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).


SEE ALSO

     read(2), write(2), pipe(2)