]> git.kernelconcepts.de Git - karo-tx-redboot.git/blob - doc/html/ref/net-common-tcpip-manpages-socketpair.html
Initial revision
[karo-tx-redboot.git] / doc / html / ref / net-common-tcpip-manpages-socketpair.html
1 <!-- Copyright (C) 2003 Red Hat, Inc.                                -->
2 <!-- This material may be distributed only subject to the terms      -->
3 <!-- and conditions set forth in the Open Publication License, v1.0  -->
4 <!-- or later (the latest version is presently available at          -->
5 <!-- http://www.opencontent.org/openpub/).                           -->
6 <!-- Distribution of the work or derivative of the work in any       -->
7 <!-- standard (paper) book form is prohibited unless prior           -->
8 <!-- permission is obtained from the copyright holder.               -->
9 <HTML
10 ><HEAD
11 ><TITLE
12 >socketpair</TITLE
13 ><meta name="MSSmartTagsPreventParsing" content="TRUE">
14 <META
15 NAME="GENERATOR"
16 CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
17 "><LINK
18 REL="HOME"
19 TITLE="eCos Reference Manual"
20 HREF="ecos-ref.html"><LINK
21 REL="UP"
22 TITLE="TCP/IP Library Reference"
23 HREF="tcpip-library-reference.html"><LINK
24 REL="PREVIOUS"
25 TITLE="socket"
26 HREF="net-common-tcpip-manpages-socket.html"><LINK
27 REL="NEXT"
28 TITLE="FreeBSD TCP/IP Stack port for eCos"
29 HREF="tcpip-freebsd.html"></HEAD
30 ><BODY
31 CLASS="SECT1"
32 BGCOLOR="#FFFFFF"
33 TEXT="#000000"
34 LINK="#0000FF"
35 VLINK="#840084"
36 ALINK="#0000FF"
37 ><DIV
38 CLASS="NAVHEADER"
39 ><TABLE
40 SUMMARY="Header navigation table"
41 WIDTH="100%"
42 BORDER="0"
43 CELLPADDING="0"
44 CELLSPACING="0"
45 ><TR
46 ><TH
47 COLSPAN="3"
48 ALIGN="center"
49 >eCos Reference Manual</TH
50 ></TR
51 ><TR
52 ><TD
53 WIDTH="10%"
54 ALIGN="left"
55 VALIGN="bottom"
56 ><A
57 HREF="net-common-tcpip-manpages-socket.html"
58 ACCESSKEY="P"
59 >Prev</A
60 ></TD
61 ><TD
62 WIDTH="80%"
63 ALIGN="center"
64 VALIGN="bottom"
65 >Chapter 38. TCP/IP Library Reference</TD
66 ><TD
67 WIDTH="10%"
68 ALIGN="right"
69 VALIGN="bottom"
70 ><A
71 HREF="tcpip-freebsd.html"
72 ACCESSKEY="N"
73 >Next</A
74 ></TD
75 ></TR
76 ></TABLE
77 ><HR
78 ALIGN="LEFT"
79 WIDTH="100%"></DIV
80 ><DIV
81 CLASS="SECT1"
82 ><H1
83 CLASS="SECT1"
84 ><A
85 NAME="NET-COMMON-TCPIP-MANPAGES-SOCKETPAIR">socketpair</H1
86 ><TABLE
87 BORDER="5"
88 BGCOLOR="#E0E0F0"
89 WIDTH="70%"
90 ><TR
91 ><TD
92 ><PRE
93 CLASS="SCREEN"
94 >SOCKETPAIR(2)                 System Calls Manual                SOCKETPAIR(2)
95
96 NAME
97      socketpair - create a pair of connected sockets
98
99 SYNOPSIS
100      #include &lt;sys/types.h&#62;
101      #include &lt;sys/socket.h&#62;
102
103      int
104      socketpair(int d, int type, int protocol, int *sv);
105
106 DESCRIPTION
107      The socketpair() call creates an unnamed pair of connected sockets in the
108      specified domain d, of the specified type, and using the optionally spec-
109      ified protocol.  The descriptors used in referencing the new sockets are
110      returned in sv[0] and sv[1].  The two sockets are indistinguishable.
111
112 RETURN VALUES
113      A 0 is returned if the call succeeds, -1 if it fails.
114
115 ERRORS
116      The call succeeds unless:
117
118      [EMFILE]           Too many descriptors are in use by this process.
119
120      [EAFNOSUPPORT]     The specified address family is not supported on this
121                         machine.
122
123      [EPROTONOSUPPORT]  The specified protocol is not supported on this
124                         machine.
125
126      [EOPNOTSUPP]       The specified protocol does not support creation of
127                         socket pairs.
128
129      [EFAULT]           The address sv does not specify a valid part of the
130                         process address space.
131
132      [ENFILE]           The system file table is full.
133
134 SEE ALSO
135      pipe(2), read(2), write(2)
136
137 BUGS
138      This call is currently implemented only for the LOCAL domain.  Many oper-
139      ating systems only accept a protocol of PF_UNSPEC, so that should be used
140      instead of PF_LOCAL for maximal portability.
141
142 STANDARDS
143      The socketpair() function conforms to X/Open Portability Guide Issue 4.2
144      (``XPG4.2'').
145
146 HISTORY
147      The socketpair() function call appeared in 4.2BSD.
148
149 BSD                              June 4, 1993                              BSD
150     </PRE
151 ></TD
152 ></TR
153 ></TABLE
154 ></DIV
155 ><DIV
156 CLASS="NAVFOOTER"
157 ><HR
158 ALIGN="LEFT"
159 WIDTH="100%"><TABLE
160 SUMMARY="Footer navigation table"
161 WIDTH="100%"
162 BORDER="0"
163 CELLPADDING="0"
164 CELLSPACING="0"
165 ><TR
166 ><TD
167 WIDTH="33%"
168 ALIGN="left"
169 VALIGN="top"
170 ><A
171 HREF="net-common-tcpip-manpages-socket.html"
172 ACCESSKEY="P"
173 >Prev</A
174 ></TD
175 ><TD
176 WIDTH="34%"
177 ALIGN="center"
178 VALIGN="top"
179 ><A
180 HREF="ecos-ref.html"
181 ACCESSKEY="H"
182 >Home</A
183 ></TD
184 ><TD
185 WIDTH="33%"
186 ALIGN="right"
187 VALIGN="top"
188 ><A
189 HREF="tcpip-freebsd.html"
190 ACCESSKEY="N"
191 >Next</A
192 ></TD
193 ></TR
194 ><TR
195 ><TD
196 WIDTH="33%"
197 ALIGN="left"
198 VALIGN="top"
199 >socket</TD
200 ><TD
201 WIDTH="34%"
202 ALIGN="center"
203 VALIGN="top"
204 ><A
205 HREF="tcpip-library-reference.html"
206 ACCESSKEY="U"
207 >Up</A
208 ></TD
209 ><TD
210 WIDTH="33%"
211 ALIGN="right"
212 VALIGN="top"
213 >FreeBSD TCP/IP Stack port for eCos</TD
214 ></TR
215 ></TABLE
216 ></DIV
217 ></BODY
218 ></HTML
219 >