Movatterモバイル変換


[0]ホーム

URL:


man7.org > Linux >man-pages

Linux/UNIX system programming training


socketpair(2) — Linux manual page

NAME |LIBRARY |SYNOPSIS |DESCRIPTION |RETURN VALUE |ERRORS |VERSIONS |STANDARDS |HISTORY |SEE ALSO |COLOPHON

socketpair(2)              System Calls Manualsocketpair(2)

NAME        top

       socketpair - create a pair of connected sockets

LIBRARY        top

       Standard C library (libc,-lc)

SYNOPSIS        top

#include <sys/socket.h>int socketpair(intdomain, inttype, intprotocol, intsv[2]);

DESCRIPTION        top

       Thesocketpair() call creates an unnamed pair of connected sockets       in the specifieddomain, of the specifiedtype, and using the       optionally specifiedprotocol.  For further details of these       arguments, seesocket(2).       The file descriptors used in referencing the new sockets are       returned insv[0] andsv[1].  The two sockets are       indistinguishable.

RETURN VALUE        top

       On success, zero is returned.  On error, -1 is returned,errno is       set to indicate the error, andsv is left unchanged       On Linux (and other systems),socketpair() does not modifysv on       failure.  A requirement standardizing this behavior was added in       POSIX.1-2008 TC2.

ERRORS        top

EAFNOSUPPORT              The specified address family is not supported on this              machine.EFAULTThe addresssv does not specify a valid part of the process              address space.EMFILEThe per-process limit on the number of open file              descriptors has been reached.ENFILEThe system-wide limit on the total number of open files has              been reached.EOPNOTSUPP              The specified protocol does not support creation of socket              pairs.EPROTONOSUPPORT              The specified protocol is not supported on this machine.

VERSIONS        top

       On Linux, the only supported domains for this call areAF_UNIX(or       synonymously,AF_LOCAL) andAF_TIPC(since Linux 4.12).

STANDARDS        top

       POSIX.1-2008.

HISTORY        top

       POSIX.1-2001, 4.4BSD.socketpair() first appeared in 4.2BSD.  It is generally portable       to/from non-BSD systems supporting clones of the BSD socket layer       (including System V variants).       Since Linux 2.6.27,socketpair() supports theSOCK_NONBLOCKandSOCK_CLOEXECflags in thetype argument, as described insocket(2).

SEE ALSO        top

pipe(2),read(2),socket(2),write(2),socket(7),unix(7)

COLOPHON        top

       This page is part of theman-pages (Linux kernel and C library       user-space interface documentation) project.  Information about       the project can be found at        ⟨https://www.kernel.org/doc/man-pages/⟩.  If you have a bug report       for this manual page, see       ⟨https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING⟩.       This page was obtained from the tarball man-pages-6.15.tar.gz       fetched from       ⟨https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/⟩ on       2025-08-11.  If you discover any rendering problems in this HTML       version of the page, or you believe there is a better or more up-       to-date source for the page, or you have corrections or       improvements to the information in this COLOPHON (which isnot       part of the original manual page), send a mail to       man-pages@man7.orgLinux man-pages 6.15            2025-05-17socketpair(2)

Pages that refer to this page:pipe(2)socket(2)socketcall(2)syscalls(2)sockaddr(3type)fifo(7)pipe(7)signal-safety(7)socket(7)unix(7)



HTML rendering created 2025-09-06 byMichael Kerrisk, author ofThe Linux Programming Interface.

For details of in-depthLinux/UNIX system programming training courses that I teach, lookhere.

Hosting byjambit GmbH.

Cover of TLPI


[8]ページ先頭

©2009-2025 Movatter.jp