Newer
Older
UbixOS / doc / html / d2 / d6e / def_8c.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.16"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>UbixOS: net/core/def.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../navtreedata.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">UbixOS
   &#160;<span id="projectnumber">2.0</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.16 -->
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('../../',false,false,'search.php','Search');
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('d2/d6e/def_8c.html','../../');});
/* @license-end */
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">def.c File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="../../dc/dba/opt_8h_source.html">net/opt.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="../../d4/da4/def_8h_source.html">net/def.h</a>&quot;</code><br />
<code>#include &lt;<a class="el" href="../../da/d66/string_8h_source.html">string.h</a>&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for def.c:</div>
<div class="dyncontent">
<div class="center"><img src="../../d0/d7d/def_8c__incl.png" border="0" usemap="#net_2core_2def_8c" alt=""/></div>
<map name="net_2core_2def_8c" id="net_2core_2def_8c">
<area shape="rect" title=" " alt="" coords="367,5,469,32"/>
<area shape="rect" href="../../dc/dba/opt_8h.html" title=" " alt="" coords="301,155,375,181"/>
<area shape="rect" href="../../d4/da4/def_8h.html" title=" " alt="" coords="382,80,454,107"/>
<area shape="rect" href="../../da/d66/string_8h.html" title=" " alt="" coords="471,379,536,405"/>
<area shape="rect" href="../../d2/d78/lwipopts_8h.html" title=" " alt="" coords="165,229,268,256"/>
<area shape="rect" href="../../db/d16/debug_8h.html" title=" " alt="" coords="293,229,383,256"/>
<area shape="rect" href="../../d2/d2d/arch_8h.html" title=" " alt="" coords="298,304,378,331"/>
<area shape="rect" href="../../d0/d27/include_2sys_2types_8h.html" title=" " alt="" coords="387,528,478,555"/>
<area shape="rect" href="../../dc/df0/cc_8h.html" title=" " alt="" coords="49,379,147,405"/>
<area shape="rect" href="../../da/d28/kprintf_8h.html" title=" " alt="" coords="171,379,257,405"/>
<area shape="rect" href="../../d3/d24/kpanic_8h.html" title=" " alt="" coords="281,379,395,405"/>
<area shape="rect" href="../../d0/d6f/__types_8h.html" title=" " alt="" coords="392,752,489,779"/>
<area shape="rect" href="../../d9/dab/select_8h.html" title=" " alt="" coords="326,603,419,629"/>
<area shape="rect" href="../../d6/d92/cdefs_8h.html" title=" " alt="" coords="148,677,237,704"/>
<area shape="rect" href="../../d6/d30/__timespec_8h.html" title=" " alt="" coords="5,677,124,704"/>
<area shape="rect" href="../../df/dc5/__timeval_8h.html" title=" " alt="" coords="261,677,367,704"/>
<area shape="rect" href="../../d6/da4/__sigset_8h.html" title=" " alt="" coords="391,677,491,704"/>
<area shape="rect" href="../../de/df7/time_8h.html" title=" " alt="" coords="51,453,151,480"/>
<area shape="rect" href="../../dc/dac/io_8h.html" title=" " alt="" coords="103,528,171,555"/>
<area shape="rect" href="../../d1/d2d/stdarg_8h.html" title=" " alt="" coords="179,453,249,480"/>
<area shape="rect" href="../../d6/d90/strings_8h.html" title=" " alt="" coords="521,453,593,480"/>
</map>
</div>
</div>
<p><a href="../../d2/d6e/def_8c_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a14f94347a5b9b9e3602705b75b7ae524"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../de/d8c/group__compiler__abstraction.html#ga4c14294869aceba3ef9d4c0c302d0f33">u32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d6e/def_8c.html#a14f94347a5b9b9e3602705b75b7ae524">lwip_htonl</a> (<a class="el" href="../../de/d8c/group__compiler__abstraction.html#ga4c14294869aceba3ef9d4c0c302d0f33">u32_t</a> n)</td></tr>
<tr class="separator:a14f94347a5b9b9e3602705b75b7ae524"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad637280639de4066392e6b5614fa3e56"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../de/d8c/group__compiler__abstraction.html#ga77570ac4fcab86864fa1916e55676da2">u16_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d6e/def_8c.html#ad637280639de4066392e6b5614fa3e56">lwip_htons</a> (<a class="el" href="../../de/d8c/group__compiler__abstraction.html#ga77570ac4fcab86864fa1916e55676da2">u16_t</a> n)</td></tr>
<tr class="separator:ad637280639de4066392e6b5614fa3e56"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf15b4fbaaae5bb7f6da4301f3f979284"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d2e/group__sys__nonstandard.html#gaf15b4fbaaae5bb7f6da4301f3f979284">lwip_itoa</a> (char *result, <a class="el" href="../../d0/d27/include_2sys_2types_8h.html#a7619b847aeded8a6d14cbfa212b2cdfb">size_t</a> bufsize, int number)</td></tr>
<tr class="separator:gaf15b4fbaaae5bb7f6da4301f3f979284"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga263cbafcb697eff964139a9998a6668a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d2e/group__sys__nonstandard.html#ga263cbafcb697eff964139a9998a6668a">lwip_stricmp</a> (<a class="el" href="../../d6/d92/cdefs_8h.html#a2c212835823e3c54a8ab6d95c652660e">const</a> char *str1, <a class="el" href="../../d6/d92/cdefs_8h.html#a2c212835823e3c54a8ab6d95c652660e">const</a> char *str2)</td></tr>
<tr class="separator:ga263cbafcb697eff964139a9998a6668a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga997dcc49451121d4ed755b33bc7bd26a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d2e/group__sys__nonstandard.html#ga997dcc49451121d4ed755b33bc7bd26a">lwip_strnicmp</a> (<a class="el" href="../../d6/d92/cdefs_8h.html#a2c212835823e3c54a8ab6d95c652660e">const</a> char *str1, <a class="el" href="../../d6/d92/cdefs_8h.html#a2c212835823e3c54a8ab6d95c652660e">const</a> char *str2, <a class="el" href="../../d0/d27/include_2sys_2types_8h.html#a7619b847aeded8a6d14cbfa212b2cdfb">size_t</a> len)</td></tr>
<tr class="separator:ga997dcc49451121d4ed755b33bc7bd26a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaeece028198cdaea2f0d2f1d691752c02"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d2e/group__sys__nonstandard.html#gaeece028198cdaea2f0d2f1d691752c02">lwip_strnstr</a> (<a class="el" href="../../d6/d92/cdefs_8h.html#a2c212835823e3c54a8ab6d95c652660e">const</a> char *<a class="el" href="../../d6/d4f/shell_8c.html#aff2566f4c366b48d73479bef43ee4d2e">buffer</a>, <a class="el" href="../../d6/d92/cdefs_8h.html#a2c212835823e3c54a8ab6d95c652660e">const</a> char *token, <a class="el" href="../../d0/d27/include_2sys_2types_8h.html#a7619b847aeded8a6d14cbfa212b2cdfb">size_t</a> n)</td></tr>
<tr class="separator:gaeece028198cdaea2f0d2f1d691752c02"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Common functions used throughout the stack.</p>
<p>These are reference implementations of the byte swapping functions. Again with the aim of being simple, correct and fully portable. Byte swapping is the second thing you would want to optimize. You will need to port it to your architecture and in your <a class="el" href="../../dc/df0/cc_8h.html">cc.h</a>:</p>
<p>#define <a class="el" href="../../d4/da4/def_8h.html#a3cdda64857295e6661fb7962f66adfb9">lwip_htons(x)</a> your_htons #define <a class="el" href="../../d4/da4/def_8h.html#a9c0cf5ec6af0664ca8cea5bcf6319a56">lwip_htonl(x)</a> your_htonl</p>
<p>Note <a class="el" href="../../d4/da4/def_8h.html#ac642bf6057869696d7807564d8309ffc">lwip_ntohs()</a> and <a class="el" href="../../d4/da4/def_8h.html#a56098407d66feb75806f655bafbee81d">lwip_ntohl()</a> are merely references to the htonx counterparts.</p>
<p>If you #define them to <a class="el" href="../../d4/da4/def_8h.html#a51799f5ebb4c7228ef7e95c247030f42">htons()</a> and <a class="el" href="../../d4/da4/def_8h.html#ae4027a6ad07f13aa12eab285a1b46019">htonl()</a>, you should #define LWIP_DONT_PROVIDE_BYTEORDER_FUNCTIONS to prevent lwIP from defining htonx/ntohx compatibility macros. </p>

<p class="definition">Definition in file <a class="el" href="../../d2/d6e/def_8c_source.html">def.c</a>.</p>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="a14f94347a5b9b9e3602705b75b7ae524"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a14f94347a5b9b9e3602705b75b7ae524">&#9670;&nbsp;</a></span>lwip_htonl()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="../../de/d8c/group__compiler__abstraction.html#ga4c14294869aceba3ef9d4c0c302d0f33">u32_t</a> lwip_htonl </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../de/d8c/group__compiler__abstraction.html#ga4c14294869aceba3ef9d4c0c302d0f33">u32_t</a>&#160;</td>
          <td class="paramname"><em>n</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Convert an u32_t from host- to network byte order.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">n</td><td>u32_t in host byte order </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>n in network byte order </dd></dl>

<p class="definition">Definition at line <a class="el" href="../../d2/d6e/def_8c_source.html#l00088">88</a> of file <a class="el" href="../../d2/d6e/def_8c_source.html">def.c</a>.</p>

<p class="reference">References <a class="el" href="../../d4/da4/def_8h_source.html#l00081">PP_HTONL</a>.</p>

</div>
</div>
<a id="ad637280639de4066392e6b5614fa3e56"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad637280639de4066392e6b5614fa3e56">&#9670;&nbsp;</a></span>lwip_htons()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="../../de/d8c/group__compiler__abstraction.html#ga77570ac4fcab86864fa1916e55676da2">u16_t</a> lwip_htons </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../de/d8c/group__compiler__abstraction.html#ga77570ac4fcab86864fa1916e55676da2">u16_t</a>&#160;</td>
          <td class="paramname"><em>n</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Convert an u16_t from host- to network byte order.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">n</td><td>u16_t in host byte order </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>n in network byte order </dd></dl>

<p class="definition">Definition at line <a class="el" href="../../d2/d6e/def_8c_source.html#l00075">75</a> of file <a class="el" href="../../d2/d6e/def_8c_source.html">def.c</a>.</p>

<p class="reference">References <a class="el" href="../../d4/da4/def_8h_source.html#l00079">PP_HTONS</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="../../dir_427baa8a9a5be237f298d4545d0d1ce2.html">net</a></li><li class="navelem"><a class="el" href="../../dir_1cf66ead025f9237708795c937e76781.html">core</a></li><li class="navelem"><a class="el" href="../../d2/d6e/def_8c.html">def.c</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="../../doxygen.png" alt="doxygen"/></a> 1.8.16 </li>
  </ul>
</div>
</body>
</html>