socketpair(3sock)


socketpair -- create a pair of connected sockets

Synopsis

cc [options] file -lsocket -lnsl
#include <sys/socket.h>

int socketpair(int d, int type, int protocol, int sv[2]);

Description

The socketpair library call creates an unnamed pair of connected sockets in the specified address family 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.

Files

/usr/lib/locale/locale/LC_MESSAGES/uxnsl

Return values

socketpair returns a -1 on failure, otherwise it returns the number of the second file descriptor it creates.

Errors

The call succeeds unless:

EACCES
The process does not have the appropriate privileges.

EAFNOSUPPORT
The specified address family is not supported on this machine.

EMFILE
Too many descriptors are in use by this process.

ENFILE
The system has no more file descriptors available.

ENOBUFS
There were insufficient system resources for the operation to complete.

ENOMEM
There was insufficient user memory for the operation to complete.

ENOSR
There were insufficient STREAMS resources for the operation to complete.

EOPNOSUPPORT
The specified protocol does not support creation of socket pairs.

EPROTONOSUPPORT
The specified protocol is not supported on this machine.

EPROTOTYPE
The protocol does not support the socket type.

References

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

Notices

This call is currently implemented only for the AF_UNIX address family.
© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 25 April 2004