ABCDEFGHIJKLMNOPQRSTUVWXYZ

socketpair

SOCKETPAIR(2)              Linux Programmer's Manual             SOCKETPAIR(2)



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, 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 sock-
       ets are returned in sv[0] and sv[1].  The  two  sockets  are  indistin-
       guishable.

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.

       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.

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

NOTES
       On Linux, the only supported domain for this call is AF_UNIX  (or  syn-
       onymously,  AF_LOCAL).   (Most  implementations  have the same restric-
       tion.)

SEE ALSO
       read(2), write(2), pipe(2), socket(2), unix(7)



BSD Man Page                      1993-07-24                     SOCKETPAIR(2)