socketpair

TriggerTek Logo
abcdefghijklmnopqrstuvwxyz_
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  option-
       ally  specified protocol.  The descriptors used in referencing the new
       sockets are returned in sv[0] and sv[1].	 The two sockets  are  indis-
       tinguishable.

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,	SUSv2,	POSIX  1003.1-2001.   The  socketpair  function	 call
       appeared in 4.2BSD. It is generally portable to/from  non-BSD  systems
       supporting  clones  of  the BSD socket layer (including System V vari-
       ants).

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)