<!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>AMCL: Globals</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="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>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script><script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.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">AMCL
   </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 -->
<!-- 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">
<div class="textblock">Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:</div>

<h3><a id="index_a"></a>- a -</h3><ul>
<li>AES_CBC_IV0_DECRYPT()
: <a class="el" href="ecdh__support_8h.html#a8828699bae266bf22a61ce901e49e0bc">ecdh_support.h</a>
</li>
<li>AES_CBC_IV0_ENCRYPT()
: <a class="el" href="ecdh__support_8h.html#afa50c2b84fbb255a8484dc0f1ccb4e93">ecdh_support.h</a>
</li>
<li>AES_GCM_DECRYPT()
: <a class="el" href="pbc__support_8h.html#ae4aa0f36fb96432ff2ed3a0055dc6c0c">pbc_support.h</a>
</li>
<li>AES_GCM_ENCRYPT()
: <a class="el" href="pbc__support_8h.html#a36f18731b0822fcc66120f5d64ece6c1">pbc_support.h</a>
</li>
<li>amcl_bin2hex()
: <a class="el" href="utils_8h.html#af3f99e6869645e7a199f5455d1b8b5ff">utils.h</a>
, <a class="el" href="utils_8c.html#af3f99e6869645e7a199f5455d1b8b5ff">utils.c</a>
</li>
<li>amcl_hex2bin()
: <a class="el" href="utils_8c.html#ae83713794e16e5aaca8c26fa3b2a53e0">utils.c</a>
, <a class="el" href="utils_8h.html#ae83713794e16e5aaca8c26fa3b2a53e0">utils.h</a>
</li>
<li>amcl_print_hex()
: <a class="el" href="utils_8c.html#a0a2cf72b4b90aacd14063ed1b294658d">utils.c</a>
, <a class="el" href="utils_8h.html#a0a2cf72b4b90aacd14063ed1b294658d">utils.h</a>
</li>
<li>amcl_version()
: <a class="el" href="version_8c.html#a689d184c9b79d5bfba39393546e885e8">version.c</a>
</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated 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>
