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>Accept</title> 8 </head> 9 <body> 10<h1><CODE>nn::socket::Accept</CODE> Function</h1> 11<h2>Syntax</h2> 12 <div class="section"> 13 <pre class="definition"> 14s32 Accept( 15 s32 s, 16 <a href="../../nn/socket/SockAddrIn/Overview.html">SockAddrIn</a> * sockAddr 17); 18</pre> 19 </div> 20<h2>Arguments</h2> 21 <div class="section"> 22 <table class="arguments"> 23 <thead> 24 <tr> 25 <td width="15" /> 26<th>Name</th> 27<td>Description</td> 28 </tr> 29 </thead> 30 <tr> 31<td>in</td> 32<th>s</th> 33<td>Specifies a socket descriptor. Specifies a socket descriptor created using the <a href="../../nn/socket/Socket.html"><CODE>Socket</CODE></a> function, to which the <a href="../../nn/socket/Bind.html"><CODE>Bind</CODE></a> function has bound an address, and for which a <a href="../../nn/socket/Listen.html"><CODE>Listen</CODE></a> function call succeeded.</td> 34 </tr> 35 <tr> 36<td>out</td> 37<th>sockAddr</th> 38<td>Specifies a pointer to a socket address structure for recording the socket address of accepted connection partners.</td> 39 </tr> </table> 40 </div> 41<h2>Return Values</h2> 42 <div class="section"> 43 <br /> <br /> 44 <table class="arguments"> 45 <thead> 46 <tr> 47<th>Value</th> 48<td>Description</td> 49 </tr> 50 </thead> 51 <tr> 52<th>1 or higher</th> 53<td>Socket descriptor of the accepted connection.</td> 54 </tr> 55 <tr> 56<th><CODE>EINVAL</CODE></th> 57<td>Invalid processing.</td> 58 </tr> 59 <tr> 60<th><CODE>ENETRESET</CODE></th> 61<td>Socket library is not initialized.</td> 62 </tr> 63 <tr> 64<th><CODE>EBADF</CODE></th> 65<td>Invalid socket descriptor.</td> 66 </tr> 67 <tr> 68<th><CODE>EOPNOTSUPP</CODE></th> 69<td>Process not supported.</td> 70 </tr> 71 <tr> 72<th><CODE>ENOBUFS</CODE></th> 73<td>Insufficient resources.</td> 74 </tr> 75 <tr> 76<th><CODE>EAGAIN</CODE></th> 77<td><CODE>O_NONBLOCK</CODE> is set in the socket descriptor and there is no connection currently available for acceptance.</td> 78 </tr> 79 <tr> 80<th><CODE>ECONNABORTED</CODE></th> 81<td>The connection was cancelled.</td> 82 </tr> 83 <tr> 84<th><CODE>ENOMEM</CODE></th> 85<td>Insufficient memory.</td> 86 </tr> 87 </table> </div> 88<h2>Description</h2> 89 <div class="section"> 90<p>Accepts incoming connections.</p><p>Retrieves the first new socket connection from the connection queue; creates a new socket with the same socket type, protocol, and address family as the specified socket; and returns the new socket descriptor. The original socket is left to continue receiving connection requests.</p><p>Unless the socket descriptor is set to blocking mode using the <a href="../../nn/socket/Fcntl.html"><CODE>Fcntl</CODE></a> function, <CODE>Accept</CODE> blocks so long as there are no unprocessed connections in the queue.</p><p>This function allocates a backlog of one item in place of the retrieved new socket, but if no backlog could be allocated due to insufficient memory or some other limitation, this function returns <a href="../../nn/socket/ENOMEM.html"><CODE>ENOMEM</CODE></a>, regardless of whether there are any incoming connections.</p><!-- write here --></div> 91<h2>See Also</h2> 92 <div class="section"> 93<p class="reference"><a href="../../nn/socket/Fcntl.html"><CODE>Fcntl</CODE></a>, <a href="../../nn/socket/GetPeerName.html"><CODE>GetPeerName</CODE></a>, <a href="../../nn/socket/Listen.html"><CODE>Listen</CODE></a><br /> </p> 94 </div> 95<h2>Revision History</h2> 96 <div class="section"> 97 <dl class="history"> 98 <dt>2010/06/14</dt> 99<dd>Initial version.<br /> 100 </dd> 101 </dl> 102 </div> 103 <hr><p>CONFIDENTIAL</p></body> 104</html>