Sophie

Sophie

distrib > Mageia > 6 > x86_64 > by-pkgid > f835bee5b8b7ec08e20fae17cab51e63 > files > 524

lib64mbedtls-devel-2.7.3-1.mga6.x86_64.rpm

<!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>mbed TLS v2.7.3: mbedtls_ecp_group Struct 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="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">mbed TLS v2.7.3
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-attribs">Data Fields</a>  </div>
  <div class="headertitle">
<div class="title">mbedtls_ecp_group Struct Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>ECP group structure.  
 <a href="structmbedtls__ecp__group.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="ecp_8h_source.html">ecp.h</a>&gt;</code></p>
<div class="dynheader">
Collaboration diagram for mbedtls_ecp_group:</div>
<div class="dyncontent">
<div class="center"><img src="structmbedtls__ecp__group__coll__graph.png" border="0" usemap="#mbedtls__ecp__group_coll__map" alt="Collaboration graph"/></div>
<map name="mbedtls__ecp__group_coll__map" id="mbedtls__ecp__group_coll__map">
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:a3e572cd2e40e1c23fc9a7a6aef7122d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="ecp_8h.html#af79e530ea8f8416480f805baa20b1a2d">mbedtls_ecp_group_id</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmbedtls__ecp__group.html#a3e572cd2e40e1c23fc9a7a6aef7122d6">id</a></td></tr>
<tr class="separator:a3e572cd2e40e1c23fc9a7a6aef7122d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae049e9c949bf5d30e71b4b31819f6007"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structmbedtls__mpi.html">mbedtls_mpi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmbedtls__ecp__group.html#ae049e9c949bf5d30e71b4b31819f6007">P</a></td></tr>
<tr class="separator:ae049e9c949bf5d30e71b4b31819f6007"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af6ab87eb277c78f786ca58ed3fd78825"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structmbedtls__mpi.html">mbedtls_mpi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmbedtls__ecp__group.html#af6ab87eb277c78f786ca58ed3fd78825">A</a></td></tr>
<tr class="separator:af6ab87eb277c78f786ca58ed3fd78825"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab54c9e6b1807d5c10db76f7ebedd55f4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structmbedtls__mpi.html">mbedtls_mpi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmbedtls__ecp__group.html#ab54c9e6b1807d5c10db76f7ebedd55f4">B</a></td></tr>
<tr class="separator:ab54c9e6b1807d5c10db76f7ebedd55f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e0aca0789ca8f5c38d3a0c98b2f9809"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structmbedtls__ecp__point.html">mbedtls_ecp_point</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmbedtls__ecp__group.html#a7e0aca0789ca8f5c38d3a0c98b2f9809">G</a></td></tr>
<tr class="separator:a7e0aca0789ca8f5c38d3a0c98b2f9809"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7104724a939b7eef2ae3627db410e1e8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structmbedtls__mpi.html">mbedtls_mpi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmbedtls__ecp__group.html#a7104724a939b7eef2ae3627db410e1e8">N</a></td></tr>
<tr class="separator:a7104724a939b7eef2ae3627db410e1e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a039ad9e51dc52e46a422e74051b2b837"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmbedtls__ecp__group.html#a039ad9e51dc52e46a422e74051b2b837">pbits</a></td></tr>
<tr class="separator:a039ad9e51dc52e46a422e74051b2b837"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee5ef1a30d9a5e34810c7a9a7120a10b"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmbedtls__ecp__group.html#aee5ef1a30d9a5e34810c7a9a7120a10b">nbits</a></td></tr>
<tr class="separator:aee5ef1a30d9a5e34810c7a9a7120a10b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3cc458ace9f663e7827a6c3556e75e64"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmbedtls__ecp__group.html#a3cc458ace9f663e7827a6c3556e75e64">h</a></td></tr>
<tr class="separator:a3cc458ace9f663e7827a6c3556e75e64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad828ec2b9dcccb7664744fa5b69f561f"><td class="memItemLeft" align="right" valign="top">int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmbedtls__ecp__group.html#ad828ec2b9dcccb7664744fa5b69f561f">modp</a> )(<a class="el" href="structmbedtls__mpi.html">mbedtls_mpi</a> *)</td></tr>
<tr class="separator:ad828ec2b9dcccb7664744fa5b69f561f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a4fbe0909b4feb994eaac95e1281cc6"><td class="memItemLeft" align="right" valign="top">int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmbedtls__ecp__group.html#a2a4fbe0909b4feb994eaac95e1281cc6">t_pre</a> )(<a class="el" href="structmbedtls__ecp__point.html">mbedtls_ecp_point</a> *, void *)</td></tr>
<tr class="separator:a2a4fbe0909b4feb994eaac95e1281cc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa67390761ba1d1f8b724d1550e451908"><td class="memItemLeft" align="right" valign="top">int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmbedtls__ecp__group.html#aa67390761ba1d1f8b724d1550e451908">t_post</a> )(<a class="el" href="structmbedtls__ecp__point.html">mbedtls_ecp_point</a> *, void *)</td></tr>
<tr class="separator:aa67390761ba1d1f8b724d1550e451908"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7400fa2acba24d9b8a7a107d9fcde36f"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmbedtls__ecp__group.html#a7400fa2acba24d9b8a7a107d9fcde36f">t_data</a></td></tr>
<tr class="separator:a7400fa2acba24d9b8a7a107d9fcde36f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4beb01054d800f047b5479f4e0e8d7d8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structmbedtls__ecp__point.html">mbedtls_ecp_point</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmbedtls__ecp__group.html#a4beb01054d800f047b5479f4e0e8d7d8">T</a></td></tr>
<tr class="separator:a4beb01054d800f047b5479f4e0e8d7d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b9a1bf79d2023dbc3807dc7e12059af"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmbedtls__ecp__group.html#a4b9a1bf79d2023dbc3807dc7e12059af">T_size</a></td></tr>
<tr class="separator:a4b9a1bf79d2023dbc3807dc7e12059af"><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>ECP group structure. </p>
<p>We consider two types of curves equations:</p><ol type="1">
<li>Short Weierstrass y^2 = x^3 + A x + B mod P (SEC1 + RFC 4492)</li>
<li>Montgomery, y^2 = x^3 + A x^2 + x mod P (Curve25519 + draft) In both cases, a generator G for a prime-order subgroup is fixed. In the short weierstrass, this subgroup is actually the whole curve, and its cardinal is denoted by N.</li>
</ol>
<p>In the case of Short Weierstrass curves, our code requires that N is an odd prime. (Use odd in <a class="el" href="ecp_8h.html#a4d005045c302e100c78bdc587e8f0e6a" title="Multiplication by an integer: R = m * P (Not thread-safe to use same group in multiple threads) ...">mbedtls_ecp_mul()</a> and prime in <a class="el" href="ecdsa_8h.html#af10f6fda2169862871d0ac07555c8641" title="This function computes the ECDSA signature of a previously-hashed message. ">mbedtls_ecdsa_sign()</a> for blinding.)</p>
<p>In the case of Montgomery curves, we don't store A but (A + 2) / 4 which is the quantity actually used in the formulas. Also, nbits is not the size of N but the required size for private keys.</p>
<p>If modp is NULL, reduction modulo P is done using a generic algorithm. Otherwise, it must point to a function that takes an <a class="el" href="structmbedtls__mpi.html" title="MPI structure. ">mbedtls_mpi</a> in the range 0..2^(2*pbits)-1 and transforms it in-place in an integer of little more than pbits, so that the integer may be efficiently brought in the 0..P-1 range by a few additions or substractions. It must return 0 on success and non-zero on failure. </p>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00140">140</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>
</div><h2 class="groupheader">Field Documentation</h2>
<a id="af6ab87eb277c78f786ca58ed3fd78825"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af6ab87eb277c78f786ca58ed3fd78825">&#9670;&nbsp;</a></span>A</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structmbedtls__mpi.html">mbedtls_mpi</a> mbedtls_ecp_group::A</td>
        </tr>
      </table>
</div><div class="memdoc">
<ol type="1">
<li>A in the equation, or 2. (A + 2) / 4 </li>
</ol>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00144">144</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<a id="ab54c9e6b1807d5c10db76f7ebedd55f4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab54c9e6b1807d5c10db76f7ebedd55f4">&#9670;&nbsp;</a></span>B</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structmbedtls__mpi.html">mbedtls_mpi</a> mbedtls_ecp_group::B</td>
        </tr>
      </table>
</div><div class="memdoc">
<ol type="1">
<li>B in the equation, or 2. unused </li>
</ol>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00145">145</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<a id="a7e0aca0789ca8f5c38d3a0c98b2f9809"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7e0aca0789ca8f5c38d3a0c98b2f9809">&#9670;&nbsp;</a></span>G</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structmbedtls__ecp__point.html">mbedtls_ecp_point</a> mbedtls_ecp_group::G</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>generator of the (sub)group used </p>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00146">146</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<a id="a3cc458ace9f663e7827a6c3556e75e64"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3cc458ace9f663e7827a6c3556e75e64">&#9670;&nbsp;</a></span>h</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int mbedtls_ecp_group::h</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>internal: 1 if the constants are static </p>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00150">150</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<a id="a3e572cd2e40e1c23fc9a7a6aef7122d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3e572cd2e40e1c23fc9a7a6aef7122d6">&#9670;&nbsp;</a></span>id</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="ecp_8h.html#af79e530ea8f8416480f805baa20b1a2d">mbedtls_ecp_group_id</a> mbedtls_ecp_group::id</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>internal group identifier </p>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00142">142</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<a id="ad828ec2b9dcccb7664744fa5b69f561f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad828ec2b9dcccb7664744fa5b69f561f">&#9670;&nbsp;</a></span>modp</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* mbedtls_ecp_group::modp) (<a class="el" href="structmbedtls__mpi.html">mbedtls_mpi</a> *)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>function for fast reduction mod P </p>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00151">151</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<a id="a7104724a939b7eef2ae3627db410e1e8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7104724a939b7eef2ae3627db410e1e8">&#9670;&nbsp;</a></span>N</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structmbedtls__mpi.html">mbedtls_mpi</a> mbedtls_ecp_group::N</td>
        </tr>
      </table>
</div><div class="memdoc">
<ol type="1">
<li>the order of G, or 2. unused </li>
</ol>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00147">147</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<a id="aee5ef1a30d9a5e34810c7a9a7120a10b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee5ef1a30d9a5e34810c7a9a7120a10b">&#9670;&nbsp;</a></span>nbits</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t mbedtls_ecp_group::nbits</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>number of bits in 1. P, or 2. private keys </p>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00149">149</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<a id="ae049e9c949bf5d30e71b4b31819f6007"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae049e9c949bf5d30e71b4b31819f6007">&#9670;&nbsp;</a></span>P</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structmbedtls__mpi.html">mbedtls_mpi</a> mbedtls_ecp_group::P</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>prime modulus of the base field </p>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00143">143</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<a id="a039ad9e51dc52e46a422e74051b2b837"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a039ad9e51dc52e46a422e74051b2b837">&#9670;&nbsp;</a></span>pbits</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t mbedtls_ecp_group::pbits</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>number of bits in P </p>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00148">148</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<a id="a4beb01054d800f047b5479f4e0e8d7d8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4beb01054d800f047b5479f4e0e8d7d8">&#9670;&nbsp;</a></span>T</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structmbedtls__ecp__point.html">mbedtls_ecp_point</a>* mbedtls_ecp_group::T</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>pre-computed points for ecp_mul_comb() </p>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00155">155</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<a id="a7400fa2acba24d9b8a7a107d9fcde36f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7400fa2acba24d9b8a7a107d9fcde36f">&#9670;&nbsp;</a></span>t_data</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void* mbedtls_ecp_group::t_data</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>unused </p>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00154">154</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<a id="aa67390761ba1d1f8b724d1550e451908"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa67390761ba1d1f8b724d1550e451908">&#9670;&nbsp;</a></span>t_post</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* mbedtls_ecp_group::t_post) (<a class="el" href="structmbedtls__ecp__point.html">mbedtls_ecp_point</a> *, void *)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>unused </p>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00153">153</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<a id="a2a4fbe0909b4feb994eaac95e1281cc6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2a4fbe0909b4feb994eaac95e1281cc6">&#9670;&nbsp;</a></span>t_pre</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* mbedtls_ecp_group::t_pre) (<a class="el" href="structmbedtls__ecp__point.html">mbedtls_ecp_point</a> *, void *)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>unused </p>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00152">152</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<a id="a4b9a1bf79d2023dbc3807dc7e12059af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4b9a1bf79d2023dbc3807dc7e12059af">&#9670;&nbsp;</a></span>T_size</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t mbedtls_ecp_group::T_size</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>number for pre-computed points </p>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00156">156</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="ecp_8h_source.html">ecp.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue May 8 2018 21:08:42 for mbed TLS v2.7.3 by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>