Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
SOCKETPAIR(2)		  FreeBSD System Calls Manual		 SOCKETPAIR(2)

NAME
     socketpair	-- create a pair of connected sockets

LIBRARY
     Standard C	Library	(libc, -lc)

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

     int
     socketpair(int fd,	int type, int protocol,	int *sv);

DESCRIPTION
     The socketpair() system call creates an unnamed pair of connected sockets
     in	the specified domain fd, 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 indistin-
     guishable.

     The SOCK_CLOEXEC and SOCK_NONBLOCK	flags in the type argument apply to
     both descriptors.

RETURN VALUES
     The socketpair() function returns the value 0 if successful; otherwise
     the value -1 is returned and the global variable errno is set to indicate
     the error.

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.

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

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

HISTORY
     The socketpair() system call appeared in 4.2BSD.

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

FreeBSD	10.1		      September	11, 2013		  FreeBSD 10.1

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | SEE ALSO | HISTORY | BUGS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=socketpair&sektion=2&manpath=FreeBSD+10.0-RELEASE>

home | help