HP-UX Reference (11i v2 04/09) - 2 System Calls (vol 5)

s
socketpair(2) socketpair(2)
NAME
socketpair() - create a pair of connected sockets
SYNOPSIS
#include <sys/socket.h>
int socketpair(int af, int type, int protocol, int sv[2]);
DESCRIPTION
The socketpair() system call creates an unnamed pair of connected sockets and returns two file
descriptors in sv [0] and sv[1]. The two sockets are indistinguishable. af specifies the address family.
See socket (2). type specifies the semantics of communication for the socket. protocol specifies a particu-
lar protocol to be used. protocol can be specified as zero, which causes the system to choose a protocol
type to use.
RETURN VALUE
socketpair() returns the following values:
0 Successful completion.
-1 Failure.
errno is set to indicate the error.
ERRORS
If
socketpair() fails, errno is set to one of the following values.
[EAFNOSUPPORT] The specified address family is not supported in this version of the system.
[EFAULT] The sv parameter is not valid.
[EMFILE] The per-process file descriptor table is full.
[ENFILE] The system file table is temporarily full.
[ENOBUFS] No buffer space is available for the operation to complete.
[EOPNOTSUPP] The specified protocol does not support creation of socket pairs.
[EPROTONOSUPPORT]
The specified protocol is not supported in this version of the system.
DEPENDENCIES
socketpair() is supported only for AF_UNIX.
FUTURE DIRECTION
Currently, the default behavior is the HP-UX BSD Sockets; however, it might be changed to X/Open
Sockets in a future release. At that time, any HP-UX BSD Sockets behavior that is incompatible with
X/Open Sockets might be obsoleted. Applications that conform to the X/Open specification now will
avoid migration problems (see xopen_networking(7)).
AUTHOR
socketpair() was developed by HP and the University of California, Berkeley.
SEE ALSO
read(2), socket(2), write(2), thread_safety(5), xopen_networking(7).
STANDARDS CONFORMANCE
socketpair(): XPG4
Section 2406 Hewlett-Packard Company 1 HP-UX 11i Version 2: September 2004