1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2<html xml:lang="en-US" lang="en-US" xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 5 <meta http-equiv="Content-Style-Type" content="text/css" /> 6 <link rel="stylesheet" href="../../css/manpage.css" type="text/css" /> 7<title>Socket</title> 8 </head> 9 <body> 10<h1><CODE><a href="../../nn/Overview.html">nn</a>::<a href="../../nn/socket/Overview.html">socket</a>::Socket</CODE> Function</h1> 11<h2>Syntax</h2> 12 <div class="section"> 13 <pre class="definition"> 14s32 Socket( 15 s32 af, 16 s32 type, 17 s32 protocol 18); 19</pre> 20 </div> 21<h2>Arguments</h2> 22 <div class="section"> 23 <table class="arguments"> 24 <thead> 25 <tr> 26 <td width="15" /> 27<th>Name</th> 28<td>Description</td> 29 </tr> 30 </thead> 31 <tr> 32<td>in</td> 33<th>af</th> 34<td> Specify <CODE>PF_INET</CODE>.</td> 35 </tr> 36 <tr> 37<td>in</td> 38<th>type</th> 39<td>Specifies the type of socket to create. Currently, <CODE>SOCK_STREAM</CODE> and <CODE>SOCK_DGRAM</CODE> are supported.</td> 40 </tr> 41 <tr> 42<td>in</td> 43<th>protocol</th> 44<td>Specifies the protocol to use with the socket. If <SPAN class="argument">protocol</SPAN> is <CODE>0</CODE>, the default protocol for the specified protocol family and type is used. Currently, <CODE>0</CODE> is the only value you can specify.</td> 45 </tr> </table> 46 </div> 47<h2>Return Values</h2> 48 <div class="section"> 49 <br /> <br /> 50 <table class="arguments"> 51 <thead> 52 <tr> 53<th>Value</th> 54<td>Description</td> 55 </tr> 56 </thead> 57 <tr> 58<th>1 or higher</th> 59<td>The new socket descriptor.</td> 60 </tr> 61 <tr> 62<th><CODE>EAFNOSUPPORT</CODE></th> 63<td>The protocol family is not supported.</td> 64 </tr> 65 <tr> 66<th><CODE>EINVAL</CODE></th> 67<td>Invalid call.</td> 68 </tr> 69 <tr> 70<th><CODE>EMFILE</CODE></th> 71<td>The maximum supported number of sockets has been exceeded.</td> 72 </tr> 73 <tr> 74<th><CODE>ENETDOWN</CODE></th> 75<td>The network is not available.</td> 76 </tr> 77 <tr> 78<th><CODE>ENETRESET</CODE></th> 79<td>Socket library is not initialized.</td> 80 </tr> 81 <tr> 82<th><CODE>ENOMEM</CODE></th> 83<td>Cannot allocate the memory required for the process.</td> 84 </tr> 85 <tr> 86<th><CODE>EPROTOTYPE</CODE></th> 87<td>The socket type is not supported.</td> 88 </tr> 89 <tr> 90<th><CODE>EOPNOTSUPP</CODE></th> 91<td>The socket is not a stream socket.</td> 92 </tr> 93 <tr> 94<th><CODE>EWOULDBLOCK</CODE></th> 95<td>Same as <CODE>EAGAIN</CODE>.</td> 96 </tr> 97 </table> </div> 98<h2>Description</h2> 99 <div class="section"> 100<p>Creates new socket descriptors.</p><p>The current version allows you to create at least eight sockets at the same time.</p><!-- write here --></div> 101<h2>See Also</h2> 102 <div class="section"> 103<p class="reference"><a href="../../nn/socket/Close.html"><CODE>Close</CODE></a><br /> </p> 104 </div> 105<h2>Revision History</h2> 106 <div class="section"> 107 <dl class="history"> 108 <dt>2010/06/14</dt> 109<dd>Initial version.<br /> 110 </dd> 111 </dl> 112 </div> 113 <hr><p>CONFIDENTIAL</p></body> 114</html> 115