*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->OpenBSD man pages -> socketpair (2)              
Title
Content
Arch
Section
 

SOCKETPAIR(2)

Contents


NAME    [Toc]    [Back]

     socketpair - create a pair of connected sockets

SYNOPSIS    [Toc]    [Back]

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

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

DESCRIPTION    [Toc]    [Back]

     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
sockets are
     returned  in sv[0] and sv[1].  The two sockets are indistinguishable.

RETURN VALUES    [Toc]    [Back]

     A 0 is returned if the call succeeds, -1 if it fails.

ERRORS    [Toc]    [Back]

     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.

     [ENFILE]      The system file table is full.

SEE ALSO    [Toc]    [Back]

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

STANDARDS    [Toc]    [Back]

     The  socketpair()  function  conforms  to X/Open Portability
Guide Issue 4.2
     (``XPG4.2'').

HISTORY    [Toc]    [Back]

     The socketpair() function call appeared in 4.2BSD.

BUGS    [Toc]    [Back]

     This call is currently implemented only for  the  LOCAL  domain.  Many operating
  systems  only accept a protocol of PF_UNSPEC, so that
should be used
     instead of PF_LOCAL for maximal portability.

OpenBSD      3.6                           June      4,      1993
[ Back ]
 Similar pages
Name OS Title
recv Tru64 Receive messages from connected sockets
BIO_new_bio_pair NetBSD create a new BIO pair
BIO_new_bio_pair Tru64 Create a new BIO pair
pipe FreeBSD create descriptor pair for interprocess communication
pipe NetBSD create descriptor pair for interprocess communication
pipe OpenBSD create descriptor pair for interprocess communication
newkey HP-UX create a new Diffie-Hellman key pair in the publickey database
getpeername OpenBSD get name of connected peer
getpeername FreeBSD get name of connected peer
getpeername Linux get name of connected peer
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service