blob: f3b9a79587dac8634a741dd7b5f82a1e30366fe0 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>lwIP: Options</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">
$(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></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">lwIP
&#160;<span id="projectnumber">2.1.2</span>
</div>
<div id="projectbrief">Lightweight IP stack</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</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">
$(document).ready(function(){initNavTree('group__bridgeif__opts.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#define-members">Macros</a> </div>
<div class="headertitle">
<div class="title">Options<div class="ingroups"><a class="el" href="group__netifs.html">NETIFs</a> &raquo; <a class="el" href="group__bridgeif.html">IEEE 802.1D bridge</a></div></div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ga5aed5cd9b01ba1345b47845cd04ca30d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__bridgeif__opts.html#ga5aed5cd9b01ba1345b47845cd04ca30d">BRIDGEIF_PORT_NETIFS_OUTPUT_DIRECT</a>&#160;&#160;&#160;<a class="el" href="group__lwip__opts__nosys.html#gae00ba99de94a5bf84d832be8976df59b">NO_SYS</a></td></tr>
<tr class="separator:ga5aed5cd9b01ba1345b47845cd04ca30d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6fe03b84359150b7dea3dfca942b6414"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__bridgeif__opts.html#ga6fe03b84359150b7dea3dfca942b6414">BRIDGEIF_MAX_PORTS</a>&#160;&#160;&#160;7</td></tr>
<tr class="separator:ga6fe03b84359150b7dea3dfca942b6414"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaab45e20e9b09a98217994082968cec73"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__bridgeif__opts.html#gaab45e20e9b09a98217994082968cec73">BRIDGEIF_DEBUG</a>&#160;&#160;&#160;<a class="el" href="group__debugging__levels.html#gadab1cdc3f45939a3a5c9a3d7e04987e1">LWIP_DBG_OFF</a></td></tr>
<tr class="separator:gaab45e20e9b09a98217994082968cec73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga72e389f592470dc50288a68f3db70730"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__bridgeif__opts.html#ga72e389f592470dc50288a68f3db70730">BRIDGEIF_FDB_DEBUG</a>&#160;&#160;&#160;<a class="el" href="group__debugging__levels.html#gadab1cdc3f45939a3a5c9a3d7e04987e1">LWIP_DBG_OFF</a></td></tr>
<tr class="separator:ga72e389f592470dc50288a68f3db70730"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac456e97b1b0e9a57449596a2b229763a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__bridgeif__opts.html#gac456e97b1b0e9a57449596a2b229763a">BRIDGEIF_FW_DEBUG</a>&#160;&#160;&#160;<a class="el" href="group__debugging__levels.html#gadab1cdc3f45939a3a5c9a3d7e04987e1">LWIP_DBG_OFF</a></td></tr>
<tr class="separator:gac456e97b1b0e9a57449596a2b229763a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="gaab45e20e9b09a98217994082968cec73"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaab45e20e9b09a98217994082968cec73">&#9670;&nbsp;</a></span>BRIDGEIF_DEBUG</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BRIDGEIF_DEBUG&#160;&#160;&#160;<a class="el" href="group__debugging__levels.html#gadab1cdc3f45939a3a5c9a3d7e04987e1">LWIP_DBG_OFF</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>BRIDGEIF_DEBUG: Enable generic debugging in <a class="el" href="bridgeif_8c.html">bridgeif.c</a>. </p>
</div>
</div>
<a id="ga72e389f592470dc50288a68f3db70730"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga72e389f592470dc50288a68f3db70730">&#9670;&nbsp;</a></span>BRIDGEIF_FDB_DEBUG</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BRIDGEIF_FDB_DEBUG&#160;&#160;&#160;<a class="el" href="group__debugging__levels.html#gadab1cdc3f45939a3a5c9a3d7e04987e1">LWIP_DBG_OFF</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>BRIDGEIF_DEBUG: Enable FDB debugging in <a class="el" href="bridgeif_8c.html">bridgeif.c</a>. </p>
</div>
</div>
<a id="gac456e97b1b0e9a57449596a2b229763a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac456e97b1b0e9a57449596a2b229763a">&#9670;&nbsp;</a></span>BRIDGEIF_FW_DEBUG</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BRIDGEIF_FW_DEBUG&#160;&#160;&#160;<a class="el" href="group__debugging__levels.html#gadab1cdc3f45939a3a5c9a3d7e04987e1">LWIP_DBG_OFF</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>BRIDGEIF_DEBUG: Enable forwarding debugging in <a class="el" href="bridgeif_8c.html">bridgeif.c</a>. </p>
</div>
</div>
<a id="ga6fe03b84359150b7dea3dfca942b6414"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6fe03b84359150b7dea3dfca942b6414">&#9670;&nbsp;</a></span>BRIDGEIF_MAX_PORTS</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BRIDGEIF_MAX_PORTS&#160;&#160;&#160;7</td>
</tr>
</table>
</div><div class="memdoc">
<p>BRIDGEIF_MAX_PORTS: this is used to create a typedef used for forwarding bit-fields: the number of bits required is this + 1 (for the internal/cpu port) (63 is the maximum, resulting in an u64_t for the bit mask) ATTENTION: this controls the maximum number of the implementation only! The max. number of ports per bridge must still be passed via netif_add parameter! </p>
</div>
</div>
<a id="ga5aed5cd9b01ba1345b47845cd04ca30d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga5aed5cd9b01ba1345b47845cd04ca30d">&#9670;&nbsp;</a></span>BRIDGEIF_PORT_NETIFS_OUTPUT_DIRECT</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BRIDGEIF_PORT_NETIFS_OUTPUT_DIRECT&#160;&#160;&#160;<a class="el" href="group__lwip__opts__nosys.html#gae00ba99de94a5bf84d832be8976df59b">NO_SYS</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>BRIDGEIF_PORT_NETIFS_OUTPUT_DIRECT==1: set port netif's 'input' function to call directly into bridgeif code and on top of that, directly call into the selected forwarding port's 'linkoutput' function. This means that the bridgeif input/output path is protected from concurrent access but as well, <em>all</em> bridge port netif's drivers must correctly handle concurrent access! == 0: get into tcpip_thread for every input packet (no multithreading) ATTENTION: as ==0 relies on <a class="el" href="tcpip_8h.html">tcpip.h</a>, the default depends on NO_SYS setting </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="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
</ul>
</div>
</body>
</html>