<!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: Data Fields - Variables</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('functions_vars_a.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="contents">
&#160;

<h3><a id="index_a"></a>- a -</h3><ul>
<li>acceptmbox
: <a class="el" href="structnetconn.html#a9b59188f300828d2b5814e27ab27cad0">netconn</a>
</li>
<li>access
: <a class="el" href="structsnmp__node__instance.html#a4af17d17a971f1d11a186e6e1fc4411c">snmp_node_instance</a>
</li>
<li>ad
: <a class="el" href="structapi__msg.html#a36dedcbd9ecca67043a8e1d1e715be94">api_msg</a>
</li>
<li>additional
: <a class="el" href="structmdns__outpacket.html#acda83121a9bb785d20f979a0a3a312ce">mdns_outpacket</a>
</li>
<li>addr
: <a class="el" href="structdns__api__msg.html#a217814594564077d21b0f2696280b2a8">dns_api_msg</a>
, <a class="el" href="structzepif__init.html#a5a9a7ee6e687a7c1ae85b103d39de61d">zepif_init</a>
</li>
<li>addr_index
: <a class="el" href="structnetif__ext__callback__args__t_1_1ipv6__addr__state__changed__s.html#aebf2aa0b26b07ca1977c676a0404323f">netif_ext_callback_args_t::ipv6_addr_state_changed_s</a>
, <a class="el" href="structnetif__ext__callback__args__t_1_1ipv6__set__s.html#ad44a5f52ad695ea90b15a1e29ff823dd">netif_ext_callback_args_t::ipv6_set_s</a>
</li>
<li>address
: <a class="el" href="structnetif__ext__callback__args__t_1_1ipv6__addr__state__changed__s.html#acd24c243c866f8f9169b89af11974f17">netif_ext_callback_args_t::ipv6_addr_state_changed_s</a>
</li>
<li>alloc
: <a class="el" href="structaltcp__allocator__s.html#aaf07ebf181a11d0320381ef46d40e687">altcp_allocator_s</a>
</li>
<li>answer_name
: <a class="el" href="structnetbios__answer.html#abf746cd54add594216ddc3683c741406">netbios_answer</a>
</li>
<li>answer_name_flags
: <a class="el" href="structnetbios__answer.html#a2729b7249e3d23309624cb19fa0dbfc4">netbios_answer</a>
</li>
<li>answers
: <a class="el" href="structmdns__outpacket.html#aad2c24d4d5a935a209966ceace82f9ad">mdns_outpacket</a>
, <a class="el" href="structmdns__packet.html#a918feee242cfb3934d9f5c3de1c298e7">mdns_packet</a>
</li>
<li>answers_left
: <a class="el" href="structmdns__packet.html#a56ba495a1458a21982e65d746468849d">mdns_packet</a>
</li>
<li>arg
: <a class="el" href="structaltcp__allocator__s.html#a8d8aa48e9a105e9d25ad4b90d259d0b1">altcp_allocator_s</a>
</li>
<li>asn1_type
: <a class="el" href="structsnmp__node__instance.html#af51206e0912a8402c395dcf3b623f8b9">snmp_node_instance</a>
</li>
<li>auth_plain
: <a class="el" href="structsmtp__session.html#a9da4e424e22892fae51987665eca85a9">smtp_session</a>
</li>
<li>auth_plain_len
: <a class="el" href="structsmtp__session.html#a003dfd03ac58252b575a7c965e532461">smtp_session</a>
</li>
<li>authoritative
: <a class="el" href="structmdns__outpacket.html#a1a689ea7094a3569878f15477e725035">mdns_outpacket</a>
</li>
</ul>
</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>
