Newer
Older
UbixOS / doc / html / sockets_8c.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>UbixOS V2: src/sys/net/api/sockets.c File Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.7 -->
<div class="tabs">
  <ul>
    <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
    <li><a href="classes.html"><span>Data&nbsp;Structures</span></a></li>
    <li id="current"><a href="files.html"><span>Files</span></a></li>
    <li><a href="dirs.html"><span>Directories</span></a></li>
    <li>
      <form action="search.php" method="get">
        <table cellspacing="0" cellpadding="0" border="0">
          <tr>
            <td><label>&nbsp;<u>S</u>earch&nbsp;for&nbsp;</label></td>
            <td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
          </tr>
        </table>
      </form>
    </li>
  </ul></div>
<div class="tabs">
  <ul>
    <li><a href="files.html"><span>File&nbsp;List</span></a></li>
    <li><a href="globals.html"><span>Globals</span></a></li>
  </ul></div>
<div class="nav">
<a class="el" href="dir_897b6a2d7bab147dd1db58381aad3984.html">src</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_832905b1f7f5feaf61a306b40c0ac817.html">sys</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_da977d215fccd664f66e7711fda26f76.html">net</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_5377d826f41208e35c1e6ec985f139cd.html">api</a></div>
<h1>sockets.c File Reference</h1><code>#include &lt;<a class="el" href="types_8h-source.html">ubixos/types.h</a>&gt;</code><br>
<code>#include &quot;<a class="el" href="debug_8h-source.html">net/debug.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="api_8h-source.html">net/api.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="sockets_8h-source.html">net/sockets.h</a>&quot;</code><br>

<p>
<a href="sockets_8c-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structlwip__socket.html">lwip_socket</a></td></tr>

<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockets_8c.html#1c803e4ececfb47d2791c9283c85eb00">NUM_SOCKETS</a>&nbsp;&nbsp;&nbsp;10</td></tr>

<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockets_8c.html#cfcb93611c8f8e67e69d87561a72c3ee">alloc_socket</a> (struct <a class="el" href="structnetconn.html">netconn</a> *newconn)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static struct <a class="el" href="structlwip__socket.html">lwip_socket</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockets_8c.html#2c14650cba5521231ebeefa1ae807e67">get_socket</a> (int s)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockets_8c.html#f32c7d1377562b7b35fdd0535f6fa952">lwip_accept</a> (int s, struct <a class="el" href="structsockaddr.html">sockaddr</a> *addr, int *addrlen)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockets_8c.html#1675042812d3bc6d5f9eeaa28c8f37a7">lwip_bind</a> (int s, struct <a class="el" href="structsockaddr.html">sockaddr</a> *<a class="el" href="pci_8c.html#8f8f80d37794cde9472343e4487ba3eb">name</a>, int namelen)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockets_8c.html#fd0897a2e23d99a5dffcc976c7e5d72c">lwip_close</a> (int s)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockets_8c.html#9688d733f4d571cef85948fe74e0f6c7">lwip_connect</a> (int s, struct <a class="el" href="structsockaddr.html">sockaddr</a> *<a class="el" href="pci_8c.html#8f8f80d37794cde9472343e4487ba3eb">name</a>, int namelen)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockets_8c.html#bee6ee286147cf334a1ba19f19b2e08b">lwip_listen</a> (int s, int backlog)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockets_8c.html#6853356e8156a0b652fa13105dd77397">lwip_read</a> (int s, void *mem, int len)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockets_8c.html#47db87caa9030759f3ffd872df113661">lwip_recv</a> (int s, void *mem, int len, unsigned int flags)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockets_8c.html#a433d1ebe9c87f57160c0d260e225705">lwip_recvfrom</a> (int s, void *mem, int len, unsigned int flags, struct <a class="el" href="structsockaddr.html">sockaddr</a> *from, int *fromlen)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockets_8c.html#cb3ba0c7f21116c629f116e15e40ce2b">lwip_send</a> (int s, void *data, int size, unsigned int flags)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockets_8c.html#8dba95d254d6cb221ba4039ad8f3337b">lwip_sendto</a> (int s, void *data, int size, unsigned int flags, struct <a class="el" href="structsockaddr.html">sockaddr</a> *to, int tolen)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockets_8c.html#d1afafec89b608d54649d7d02117d17c">lwip_socket</a> (int domain, int type, int protocol)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockets_8c.html#e3d92ccb1ddfafe7df89185dbc881ec2">lwip_write</a> (int s, void *data, int size)</td></tr>

<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static struct <a class="el" href="structlwip__socket.html">lwip_socket</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockets_8c.html#f7251745bb404cb82fd45c10982fb9f8">sockets</a> [NUM_SOCKETS]</td></tr>

</table>
<hr><h2>Define Documentation</h2>
<a class="anchor" name="1c803e4ececfb47d2791c9283c85eb00"></a><!-- doxytag: member="sockets.c::NUM_SOCKETS" ref="1c803e4ececfb47d2791c9283c85eb00" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define NUM_SOCKETS&nbsp;&nbsp;&nbsp;10          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sockets_8c-source.html#l00043">43</a> of file <a class="el" href="sockets_8c-source.html">sockets.c</a>.
<p>
Referenced by <a class="el" href="sockets_8c-source.html#l00074">alloc_socket()</a>, and <a class="el" href="sockets_8c-source.html#l00055">get_socket()</a>.
</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="cfcb93611c8f8e67e69d87561a72c3ee"></a><!-- doxytag: member="sockets.c::alloc_socket" ref="cfcb93611c8f8e67e69d87561a72c3ee" args="(struct netconn *newconn)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int alloc_socket           </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structnetconn.html">netconn</a> *&nbsp;</td>
          <td class="paramname"> <em>newconn</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sockets_8c-source.html#l00074">74</a> of file <a class="el" href="sockets_8c-source.html">sockets.c</a>.
<p>
References <a class="el" href="sockets_8c-source.html#l00046">lwip_socket::conn</a>, <a class="el" href="sockets_8c-source.html#l00047">lwip_socket::lastdata</a>, <a class="el" href="sockets_8c-source.html#l00048">lwip_socket::lastoffset</a>, <a class="el" href="def_8h-source.html#l00041">NULL</a>, <a class="el" href="sockets_8c-source.html#l00043">NUM_SOCKETS</a>, and <a class="el" href="sockets_8c-source.html#l00051">sockets</a>.
<p>
Referenced by <a class="el" href="sockets_8c-source.html#l00091">lwip_accept()</a>, and <a class="el" href="sockets_8c-source.html#l00383">lwip_socket()</a>.
</div>
</div><p>
<a class="anchor" name="2c14650cba5521231ebeefa1ae807e67"></a><!-- doxytag: member="sockets.c::get_socket" ref="2c14650cba5521231ebeefa1ae807e67" args="(int s)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static struct <a class="el" href="structlwip__socket.html">lwip_socket</a>* get_socket           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>s</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sockets_8c-source.html#l00055">55</a> of file <a class="el" href="sockets_8c-source.html">sockets.c</a>.
<p>
References <a class="el" href="sockets_8c-source.html#l00046">lwip_socket::conn</a>, <a class="el" href="def_8h-source.html#l00041">NULL</a>, <a class="el" href="sockets_8c-source.html#l00043">NUM_SOCKETS</a>, and <a class="el" href="sockets_8c-source.html#l00051">sockets</a>.
<p>
Referenced by <a class="el" href="sockets_8c-source.html#l00091">lwip_accept()</a>, <a class="el" href="sockets_8c-source.html#l00121">lwip_bind()</a>, <a class="el" href="sockets_8c-source.html#l00147">lwip_close()</a>, <a class="el" href="sockets_8c-source.html#l00169">lwip_connect()</a>, <a class="el" href="sockets_8c-source.html#l00195">lwip_listen()</a>, <a class="el" href="sockets_8c-source.html#l00216">lwip_recvfrom()</a>, <a class="el" href="sockets_8c-source.html#l00305">lwip_send()</a>, <a class="el" href="sockets_8c-source.html#l00354">lwip_sendto()</a>, and <a class="el" href="sockets_8c-source.html#l00417">lwip_write()</a>.
</div>
</div><p>
<a class="anchor" name="f32c7d1377562b7b35fdd0535f6fa952"></a><!-- doxytag: member="sockets.c::lwip_accept" ref="f32c7d1377562b7b35fdd0535f6fa952" args="(int s, struct sockaddr *addr, int *addrlen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int lwip_accept           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structsockaddr.html">sockaddr</a> *&nbsp;</td>
          <td class="paramname"> <em>addr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>addrlen</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sockets_8c-source.html#l00091">91</a> of file <a class="el" href="sockets_8c-source.html">sockets.c</a>.
<p>
References <a class="el" href="ipv6_2ip__addr_8h-source.html#l00043">ip_addr::addr</a>, <a class="el" href="sockets_8c-source.html#l00074">alloc_socket()</a>, <a class="el" href="sockets_8c-source.html#l00046">lwip_socket::conn</a>, <a class="el" href="sockets_8c-source.html#l00055">get_socket()</a>, <a class="el" href="api__lib_8c-source.html#l00416">netconn_accept()</a>, <a class="el" href="api__lib_8c-source.html#l00227">netconn_delete()</a>, <a class="el" href="api__lib_8c-source.html#l00287">netconn_peer()</a>, and <a class="el" href="def_8h-source.html#l00041">NULL</a>.
</div>
</div><p>
<a class="anchor" name="1675042812d3bc6d5f9eeaa28c8f37a7"></a><!-- doxytag: member="sockets.c::lwip_bind" ref="1675042812d3bc6d5f9eeaa28c8f37a7" args="(int s, struct sockaddr *name, int namelen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int lwip_bind           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structsockaddr.html">sockaddr</a> *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>namelen</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sockets_8c-source.html#l00121">121</a> of file <a class="el" href="sockets_8c-source.html">sockets.c</a>.
<p>
References <a class="el" href="ipv6_2ip__addr_8h-source.html#l00043">ip_addr::addr</a>, <a class="el" href="sockets_8c-source.html#l00046">lwip_socket::conn</a>, <a class="el" href="err_8h-source.html#l00048">ERR_OK</a>, <a class="el" href="sockets_8c-source.html#l00055">get_socket()</a>, <a class="el" href="pci_8c-source.html#l00039">name</a>, <a class="el" href="api__lib_8c-source.html#l00325">netconn_bind()</a>, <a class="el" href="ipv4_2inet_8h-source.html#l00081">ntohs</a>, and <a class="el" href="def_8h-source.html#l00041">NULL</a>.
</div>
</div><p>
<a class="anchor" name="fd0897a2e23d99a5dffcc976c7e5d72c"></a><!-- doxytag: member="sockets.c::lwip_close" ref="fd0897a2e23d99a5dffcc976c7e5d72c" args="(int s)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int lwip_close           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>s</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sockets_8c-source.html#l00147">147</a> of file <a class="el" href="sockets_8c-source.html">sockets.c</a>.
<p>
References <a class="el" href="sockets_8c-source.html#l00046">lwip_socket::conn</a>, <a class="el" href="debug_8h-source.html#l00092">DEBUGF</a>, <a class="el" href="sockets_8c-source.html#l00055">get_socket()</a>, <a class="el" href="sockets_8c-source.html#l00047">lwip_socket::lastdata</a>, <a class="el" href="sockets_8c-source.html#l00048">lwip_socket::lastoffset</a>, <a class="el" href="api__lib_8c-source.html#l00066">netbuf_delete()</a>, <a class="el" href="api__lib_8c-source.html#l00227">netconn_delete()</a>, <a class="el" href="def_8h-source.html#l00041">NULL</a>, and <a class="el" href="debug_8h-source.html#l00107">SOCKETS_DEBUG</a>.
</div>
</div><p>
<a class="anchor" name="9688d733f4d571cef85948fe74e0f6c7"></a><!-- doxytag: member="sockets.c::lwip_connect" ref="9688d733f4d571cef85948fe74e0f6c7" args="(int s, struct sockaddr *name, int namelen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int lwip_connect           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structsockaddr.html">sockaddr</a> *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>namelen</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sockets_8c-source.html#l00169">169</a> of file <a class="el" href="sockets_8c-source.html">sockets.c</a>.
<p>
References <a class="el" href="ipv6_2ip__addr_8h-source.html#l00043">ip_addr::addr</a>, <a class="el" href="sockets_8c-source.html#l00046">lwip_socket::conn</a>, <a class="el" href="err_8h-source.html#l00048">ERR_OK</a>, <a class="el" href="sockets_8c-source.html#l00055">get_socket()</a>, <a class="el" href="pci_8c-source.html#l00039">name</a>, <a class="el" href="api__lib_8c-source.html#l00355">netconn_connect()</a>, <a class="el" href="ipv4_2inet_8h-source.html#l00081">ntohs</a>, and <a class="el" href="def_8h-source.html#l00041">NULL</a>.
</div>
</div><p>
<a class="anchor" name="bee6ee286147cf334a1ba19f19b2e08b"></a><!-- doxytag: member="sockets.c::lwip_listen" ref="bee6ee286147cf334a1ba19f19b2e08b" args="(int s, int backlog)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int lwip_listen           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>backlog</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sockets_8c-source.html#l00195">195</a> of file <a class="el" href="sockets_8c-source.html">sockets.c</a>.
<p>
References <a class="el" href="sockets_8c-source.html#l00046">lwip_socket::conn</a>, <a class="el" href="err_8h-source.html#l00048">ERR_OK</a>, <a class="el" href="sockets_8c-source.html#l00055">get_socket()</a>, <a class="el" href="api__lib_8c-source.html#l00389">netconn_listen()</a>, and <a class="el" href="def_8h-source.html#l00041">NULL</a>.
</div>
</div><p>
<a class="anchor" name="6853356e8156a0b652fa13105dd77397"></a><!-- doxytag: member="sockets.c::lwip_read" ref="6853356e8156a0b652fa13105dd77397" args="(int s, void *mem, int len)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int lwip_read           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>mem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>len</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sockets_8c-source.html#l00293">293</a> of file <a class="el" href="sockets_8c-source.html">sockets.c</a>.
<p>
References <a class="el" href="sockets_8c-source.html#l00299">lwip_recv()</a>.
</div>
</div><p>
<a class="anchor" name="47db87caa9030759f3ffd872df113661"></a><!-- doxytag: member="sockets.c::lwip_recv" ref="47db87caa9030759f3ffd872df113661" args="(int s, void *mem, int len, unsigned int flags)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int lwip_recv           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>mem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>flags</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sockets_8c-source.html#l00299">299</a> of file <a class="el" href="sockets_8c-source.html">sockets.c</a>.
<p>
References <a class="el" href="sockets_8c-source.html#l00216">lwip_recvfrom()</a>, and <a class="el" href="def_8h-source.html#l00041">NULL</a>.
<p>
Referenced by <a class="el" href="sockets_8c-source.html#l00293">lwip_read()</a>.
</div>
</div><p>
<a class="anchor" name="a433d1ebe9c87f57160c0d260e225705"></a><!-- doxytag: member="sockets.c::lwip_recvfrom" ref="a433d1ebe9c87f57160c0d260e225705" args="(int s, void *mem, int len, unsigned int flags, struct sockaddr *from, int *fromlen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int lwip_recvfrom           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>mem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>flags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structsockaddr.html">sockaddr</a> *&nbsp;</td>
          <td class="paramname"> <em>from</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>fromlen</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sockets_8c-source.html#l00216">216</a> of file <a class="el" href="sockets_8c-source.html">sockets.c</a>.
<p>
References <a class="el" href="ipv6_2ip__addr_8h-source.html#l00043">ip_addr::addr</a>, <a class="el" href="sockets_8c-source.html#l00046">lwip_socket::conn</a>, <a class="el" href="sockets_8c-source.html#l00055">get_socket()</a>, <a class="el" href="ipv4_2inet_8h-source.html#l00066">htons</a>, <a class="el" href="sockets_8c-source.html#l00047">lwip_socket::lastdata</a>, <a class="el" href="sockets_8c-source.html#l00048">lwip_socket::lastoffset</a>, <a class="el" href="api__lib_8c-source.html#l00158">netbuf_copy_partial()</a>, <a class="el" href="api__lib_8c-source.html#l00066">netbuf_delete()</a>, <a class="el" href="api__lib_8c-source.html#l00192">netbuf_fromaddr()</a>, <a class="el" href="api__lib_8c-source.html#l00198">netbuf_fromport()</a>, <a class="el" href="api__lib_8c-source.html#l00122">netbuf_len()</a>, <a class="el" href="api__lib_8c-source.html#l00430">netconn_recv()</a>, <a class="el" href="api_8h.html#aba260d28d105fb4bce9185fd0300d9175d14318b91af7a452230189f47e5e1a">NETCONN_TCP</a>, <a class="el" href="api__lib_8c-source.html#l00281">netconn_type()</a>, and <a class="el" href="def_8h-source.html#l00041">NULL</a>.
<p>
Referenced by <a class="el" href="sockets_8c-source.html#l00299">lwip_recv()</a>.
</div>
</div><p>
<a class="anchor" name="cb3ba0c7f21116c629f116e15e40ce2b"></a><!-- doxytag: member="sockets.c::lwip_send" ref="cb3ba0c7f21116c629f116e15e40ce2b" args="(int s, void *data, int size, unsigned int flags)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int lwip_send           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>flags</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sockets_8c-source.html#l00305">305</a> of file <a class="el" href="sockets_8c-source.html">sockets.c</a>.
<p>
References <a class="el" href="sockets_8c-source.html#l00046">lwip_socket::conn</a>, <a class="el" href="debug_8h-source.html#l00092">DEBUGF</a>, <a class="el" href="api_8h-source.html#l00072">netbuf::err</a>, <a class="el" href="err_8h-source.html#l00060">ERR_ARG</a>, <a class="el" href="err_8h-source.html#l00048">ERR_OK</a>, <a class="el" href="sockets_8c-source.html#l00055">get_socket()</a>, <a class="el" href="api__lib_8c-source.html#l00066">netbuf_delete()</a>, <a class="el" href="api__lib_8c-source.html#l00051">netbuf_new()</a>, <a class="el" href="api__lib_8c-source.html#l00102">netbuf_ref()</a>, <a class="el" href="api_8h-source.html#l00050">NETCONN_COPY</a>, <a class="el" href="api__lib_8c-source.html#l00509">netconn_send()</a>, <a class="el" href="api_8h.html#aba260d28d105fb4bce9185fd0300d9175d14318b91af7a452230189f47e5e1a">NETCONN_TCP</a>, <a class="el" href="api__lib_8c-source.html#l00281">netconn_type()</a>, <a class="el" href="api_8h.html#aba260d28d105fb4bce9185fd0300d916b8ec191d69f7e639f4ab40779069636">NETCONN_UDP</a>, <a class="el" href="api__lib_8c-source.html#l00537">netconn_write()</a>, <a class="el" href="def_8h-source.html#l00041">NULL</a>, and <a class="el" href="debug_8h-source.html#l00107">SOCKETS_DEBUG</a>.
<p>
Referenced by <a class="el" href="sockets_8c-source.html#l00354">lwip_sendto()</a>, and <a class="el" href="sockets_8c-source.html#l00417">lwip_write()</a>.
</div>
</div><p>
<a class="anchor" name="8dba95d254d6cb221ba4039ad8f3337b"></a><!-- doxytag: member="sockets.c::lwip_sendto" ref="8dba95d254d6cb221ba4039ad8f3337b" args="(int s, void *data, int size, unsigned int flags, struct sockaddr *to, int tolen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int lwip_sendto           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>flags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structsockaddr.html">sockaddr</a> *&nbsp;</td>
          <td class="paramname"> <em>to</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>tolen</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sockets_8c-source.html#l00354">354</a> of file <a class="el" href="sockets_8c-source.html">sockets.c</a>.
<p>
References <a class="el" href="ipv6_2ip__addr_8h-source.html#l00043">ip_addr::addr</a>, <a class="el" href="sockets_8c-source.html#l00046">lwip_socket::conn</a>, <a class="el" href="sockets_8c-source.html#l00055">get_socket()</a>, <a class="el" href="sockets_8c-source.html#l00305">lwip_send()</a>, <a class="el" href="api__lib_8c-source.html#l00355">netconn_connect()</a>, <a class="el" href="api__lib_8c-source.html#l00287">netconn_peer()</a>, and <a class="el" href="def_8h-source.html#l00041">NULL</a>.
</div>
</div><p>
<a class="anchor" name="d1afafec89b608d54649d7d02117d17c"></a><!-- doxytag: member="sockets.c::lwip_socket" ref="d1afafec89b608d54649d7d02117d17c" args="(int domain, int type, int protocol)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="structlwip__socket.html">lwip_socket</a>           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>domain</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>protocol</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sockets_8c-source.html#l00383">383</a> of file <a class="el" href="sockets_8c-source.html">sockets.c</a>.
<p>
References <a class="el" href="sockets_8c-source.html#l00074">alloc_socket()</a>, <a class="el" href="debug_8h-source.html#l00092">DEBUGF</a>, <a class="el" href="api__lib_8c-source.html#l00227">netconn_delete()</a>, <a class="el" href="api__lib_8c-source.html#l00204">netconn_new()</a>, <a class="el" href="api_8h.html#aba260d28d105fb4bce9185fd0300d9175d14318b91af7a452230189f47e5e1a">NETCONN_TCP</a>, <a class="el" href="api_8h.html#aba260d28d105fb4bce9185fd0300d916b8ec191d69f7e639f4ab40779069636">NETCONN_UDP</a>, <a class="el" href="def_8h-source.html#l00041">NULL</a>, <a class="el" href="sockets_8h-source.html#l00062">SOCK_DGRAM</a>, <a class="el" href="sockets_8h-source.html#l00061">SOCK_STREAM</a>, and <a class="el" href="debug_8h-source.html#l00107">SOCKETS_DEBUG</a>.
</div>
</div><p>
<a class="anchor" name="e3d92ccb1ddfafe7df89185dbc881ec2"></a><!-- doxytag: member="sockets.c::lwip_write" ref="e3d92ccb1ddfafe7df89185dbc881ec2" args="(int s, void *data, int size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int lwip_write           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>size</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sockets_8c-source.html#l00417">417</a> of file <a class="el" href="sockets_8c-source.html">sockets.c</a>.
<p>
References <a class="el" href="sockets_8c-source.html#l00046">lwip_socket::conn</a>, <a class="el" href="debug_8h-source.html#l00092">DEBUGF</a>, <a class="el" href="err_8h-source.html#l00060">ERR_ARG</a>, <a class="el" href="err_8h-source.html#l00048">ERR_OK</a>, <a class="el" href="sockets_8c-source.html#l00055">get_socket()</a>, <a class="el" href="sockets_8c-source.html#l00305">lwip_send()</a>, <a class="el" href="api_8h-source.html#l00050">NETCONN_COPY</a>, <a class="el" href="api_8h.html#aba260d28d105fb4bce9185fd0300d9175d14318b91af7a452230189f47e5e1a">NETCONN_TCP</a>, <a class="el" href="api__lib_8c-source.html#l00281">netconn_type()</a>, <a class="el" href="api_8h.html#aba260d28d105fb4bce9185fd0300d916b8ec191d69f7e639f4ab40779069636">NETCONN_UDP</a>, <a class="el" href="api__lib_8c-source.html#l00537">netconn_write()</a>, <a class="el" href="def_8h-source.html#l00041">NULL</a>, and <a class="el" href="debug_8h-source.html#l00107">SOCKETS_DEBUG</a>.
</div>
</div><p>
<hr><h2>Variable Documentation</h2>
<a class="anchor" name="f7251745bb404cb82fd45c10982fb9f8"></a><!-- doxytag: member="sockets.c::sockets" ref="f7251745bb404cb82fd45c10982fb9f8" args="[NUM_SOCKETS]" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct <a class="el" href="structlwip__socket.html">lwip_socket</a> <a class="el" href="sockets_8c.html#f7251745bb404cb82fd45c10982fb9f8">sockets</a>[NUM_SOCKETS]<code> [static]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sockets_8c-source.html#l00051">51</a> of file <a class="el" href="sockets_8c-source.html">sockets.c</a>.
<p>
Referenced by <a class="el" href="sockets_8c-source.html#l00074">alloc_socket()</a>, and <a class="el" href="sockets_8c-source.html#l00055">get_socket()</a>.
</div>
</div><p>
<hr size="1"><address style="align: right;"><small>Generated on Tue Dec 12 08:52:15 2006 for UbixOS V2 by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
</body>
</html>