Files
libaaruformat/docs/html/sha256_8c.html

522 lines
30 KiB
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" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.14.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libaaruformat: src/checksum/sha256.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>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.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>
<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 id="projectrow">
<td id="projectalign">
<div id="projectname">libaaruformat<span id="projectnumber">&#160;1.0</span>
</div>
<div id="projectbrief">Aaru Data Preservation Suite - Format Library</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.14.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</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',true);
$(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">
$(function(){initNavTree('sha256_8c.html','',''); });
</script>
<div id="container">
<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">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">sha256.c File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &lt;stdbool.h&gt;</code><br />
<code>#include &lt;stdint.h&gt;</code><br />
<code>#include &lt;stdio.h&gt;</code><br />
<code>#include &lt;string.h&gt;</code><br />
<code>#include &quot;<a class="el" href="decls_8h_source.html">decls.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="sha256_8h_source.html">sha256.h</a>&quot;</code><br />
</div>
<p><a href="sha256_8c_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-define-members" class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a8a7eac34f7a0caaa0d4a57e9627ba173" id="r_a8a7eac34f7a0caaa0d4a57e9627ba173"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8a7eac34f7a0caaa0d4a57e9627ba173">AARU_LOCAL</a>&#160;&#160;&#160;static</td></tr>
<tr class="memitem:a4b0e17ca4e86b51c122d174c3e0ab483" id="r_a4b0e17ca4e86b51c122d174c3e0ab483"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4b0e17ca4e86b51c122d174c3e0ab483">ROTR32</a>(x, n)</td></tr>
<tr class="memitem:ab0a0d1ad13c7e4d3cb38c89f7127c85a" id="r_ab0a0d1ad13c7e4d3cb38c89f7127c85a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab0a0d1ad13c7e4d3cb38c89f7127c85a">Ch</a>(x, y, z)</td></tr>
<tr class="memitem:a447cd1d7fb703b62666400976be24bf3" id="r_a447cd1d7fb703b62666400976be24bf3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a447cd1d7fb703b62666400976be24bf3">Maj</a>(x, y, z)</td></tr>
<tr class="memitem:a96d7103a3e033278293207e23a9187cd" id="r_a96d7103a3e033278293207e23a9187cd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a96d7103a3e033278293207e23a9187cd">SIGMA0</a>(x)</td></tr>
<tr class="memitem:ad73ff0c2b937d2657b21f58eca4d1d7c" id="r_ad73ff0c2b937d2657b21f58eca4d1d7c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad73ff0c2b937d2657b21f58eca4d1d7c">SIGMA1</a>(x)</td></tr>
<tr class="memitem:a672bd39bdf2f6dc295a23ddd109175ff" id="r_a672bd39bdf2f6dc295a23ddd109175ff"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a672bd39bdf2f6dc295a23ddd109175ff">sigma0</a>(x)</td></tr>
<tr class="memitem:a0347251dc63b7abe5d4c500544c24a97" id="r_a0347251dc63b7abe5d4c500544c24a97"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0347251dc63b7abe5d4c500544c24a97">sigma1</a>(x)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-func-members" class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:aff30aeb7e0231f2e4a7b5902e947bc9f" id="r_aff30aeb7e0231f2e4a7b5902e947bc9f"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aff30aeb7e0231f2e4a7b5902e947bc9f">sha256_transform</a> (uint32_t state[8], const uint8_t block[64])</td></tr>
<tr class="memitem:a075527f7b15b70dc7028cf91d9062a90" id="r_a075527f7b15b70dc7028cf91d9062a90"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a075527f7b15b70dc7028cf91d9062a90">aaruf_sha256_init</a> (<a class="el" href="structsha256__ctx.html">sha256_ctx</a> *ctx)</td></tr>
<tr class="memitem:a67fb5733f7c2dd5a7a02963b46eeaacf" id="r_a67fb5733f7c2dd5a7a02963b46eeaacf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a67fb5733f7c2dd5a7a02963b46eeaacf">aaruf_sha256_update</a> (<a class="el" href="structsha256__ctx.html">sha256_ctx</a> *ctx, const void *data_ptr, unsigned long len)</td></tr>
<tr class="memitem:a11a74de4ad5df6741280b5fabcf8f79a" id="r_a11a74de4ad5df6741280b5fabcf8f79a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a11a74de4ad5df6741280b5fabcf8f79a">aaruf_sha256_final</a> (<a class="el" href="structsha256__ctx.html">sha256_ctx</a> *ctx, unsigned char *out)</td></tr>
<tr class="memitem:a7bae173c313a0752035e6eac045326e8" id="r_a7bae173c313a0752035e6eac045326e8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7bae173c313a0752035e6eac045326e8">aaruf_sha256_buffer</a> (const void *data, unsigned long size, unsigned char *result)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-var-members" class="groupheader"><a id="var-members" name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a22c6551e88df4c5c42fce3d0641adb64" id="r_a22c6551e88df4c5c42fce3d0641adb64"><td class="memItemLeft" align="right" valign="top">static const uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a22c6551e88df4c5c42fce3d0641adb64">K</a> [64]</td></tr>
</table>
<a name="doc-define-members" id="doc-define-members"></a><h2 id="header-doc-define-members" class="groupheader">Macro Definition Documentation</h2>
<a id="a8a7eac34f7a0caaa0d4a57e9627ba173" name="a8a7eac34f7a0caaa0d4a57e9627ba173"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8a7eac34f7a0caaa0d4a57e9627ba173">&#9670;&#160;</a></span>AARU_LOCAL</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define AARU_LOCAL&#160;&#160;&#160;static</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="sha256_8c_source.html#l00015">15</a> of file <a class="el" href="sha256_8c_source.html">sha256.c</a>.</p>
</div>
</div>
<a id="ab0a0d1ad13c7e4d3cb38c89f7127c85a" name="ab0a0d1ad13c7e4d3cb38c89f7127c85a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab0a0d1ad13c7e4d3cb38c89f7127c85a">&#9670;&#160;</a></span>Ch</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define Ch</td>
<td>(</td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>x</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>y</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>z</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">(((x) &amp; (y)) ^ (~(x) &amp; (z)))</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="sha256_8c_source.html#l00024">24</a> of file <a class="el" href="sha256_8c_source.html">sha256.c</a>.</p>
<p class="reference">Referenced by <a class="el" href="sha256_8c_source.html#l00041">sha256_transform()</a>.</p>
</div>
</div>
<a id="a447cd1d7fb703b62666400976be24bf3" name="a447cd1d7fb703b62666400976be24bf3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a447cd1d7fb703b62666400976be24bf3">&#9670;&#160;</a></span>Maj</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define Maj</td>
<td>(</td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>x</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>y</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>z</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">(((x) &amp; (y)) ^ ((x) &amp; (z)) ^ ((y) &amp; (z)))</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="sha256_8c_source.html#l00025">25</a> of file <a class="el" href="sha256_8c_source.html">sha256.c</a>.</p>
<p class="reference">Referenced by <a class="el" href="sha256_8c_source.html#l00041">sha256_transform()</a>.</p>
</div>
</div>
<a id="a4b0e17ca4e86b51c122d174c3e0ab483" name="a4b0e17ca4e86b51c122d174c3e0ab483"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4b0e17ca4e86b51c122d174c3e0ab483">&#9670;&#160;</a></span>ROTR32</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define ROTR32</td>
<td>(</td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>x</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>n</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">(((x) &gt;&gt; (n)) | ((x) &lt;&lt; (32 - (n))))</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="sha256_8c_source.html#l00021">21</a> of file <a class="el" href="sha256_8c_source.html">sha256.c</a>.</p>
</div>
</div>
<a id="a96d7103a3e033278293207e23a9187cd" name="a96d7103a3e033278293207e23a9187cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a96d7103a3e033278293207e23a9187cd">&#9670;&#160;</a></span>SIGMA0</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SIGMA0</td>
<td>(</td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>x</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">(<a class="code hl_define" href="#a4b0e17ca4e86b51c122d174c3e0ab483">ROTR32</a>((x), 2) ^ <a class="code hl_define" href="#a4b0e17ca4e86b51c122d174c3e0ab483">ROTR32</a>((x), 13) ^ <a class="code hl_define" href="#a4b0e17ca4e86b51c122d174c3e0ab483">ROTR32</a>((x), 22))</div>
<div class="ttc" id="asha256_8c_html_a4b0e17ca4e86b51c122d174c3e0ab483"><div class="ttname"><a href="#a4b0e17ca4e86b51c122d174c3e0ab483">ROTR32</a></div><div class="ttdeci">#define ROTR32(x, n)</div><div class="ttdef"><b>Definition</b> <a href="sha256_8c_source.html#l00021">sha256.c:21</a></div></div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="sha256_8c_source.html#l00026">26</a> of file <a class="el" href="sha256_8c_source.html">sha256.c</a>.</p>
<p class="reference">Referenced by <a class="el" href="sha256_8c_source.html#l00041">sha256_transform()</a>.</p>
</div>
</div>
<a id="a672bd39bdf2f6dc295a23ddd109175ff" name="a672bd39bdf2f6dc295a23ddd109175ff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a672bd39bdf2f6dc295a23ddd109175ff">&#9670;&#160;</a></span>sigma0</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define sigma0</td>
<td>(</td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>x</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">(<a class="code hl_define" href="#a4b0e17ca4e86b51c122d174c3e0ab483">ROTR32</a>((x), 7) ^ <a class="code hl_define" href="#a4b0e17ca4e86b51c122d174c3e0ab483">ROTR32</a>((x), 18) ^ ((x) &gt;&gt; 3))</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="sha256_8c_source.html#l00028">28</a> of file <a class="el" href="sha256_8c_source.html">sha256.c</a>.</p>
<p class="reference">Referenced by <a class="el" href="sha256_8c_source.html#l00041">sha256_transform()</a>.</p>
</div>
</div>
<a id="ad73ff0c2b937d2657b21f58eca4d1d7c" name="ad73ff0c2b937d2657b21f58eca4d1d7c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad73ff0c2b937d2657b21f58eca4d1d7c">&#9670;&#160;</a></span>SIGMA1</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SIGMA1</td>
<td>(</td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>x</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">(<a class="code hl_define" href="#a4b0e17ca4e86b51c122d174c3e0ab483">ROTR32</a>((x), 6) ^ <a class="code hl_define" href="#a4b0e17ca4e86b51c122d174c3e0ab483">ROTR32</a>((x), 11) ^ <a class="code hl_define" href="#a4b0e17ca4e86b51c122d174c3e0ab483">ROTR32</a>((x), 25))</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="sha256_8c_source.html#l00027">27</a> of file <a class="el" href="sha256_8c_source.html">sha256.c</a>.</p>
<p class="reference">Referenced by <a class="el" href="sha256_8c_source.html#l00041">sha256_transform()</a>.</p>
</div>
</div>
<a id="a0347251dc63b7abe5d4c500544c24a97" name="a0347251dc63b7abe5d4c500544c24a97"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0347251dc63b7abe5d4c500544c24a97">&#9670;&#160;</a></span>sigma1</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define sigma1</td>
<td>(</td>
<td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>x</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">(<a class="code hl_define" href="#a4b0e17ca4e86b51c122d174c3e0ab483">ROTR32</a>((x), 17) ^ <a class="code hl_define" href="#a4b0e17ca4e86b51c122d174c3e0ab483">ROTR32</a>((x), 19) ^ ((x) &gt;&gt; 10))</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="sha256_8c_source.html#l00029">29</a> of file <a class="el" href="sha256_8c_source.html">sha256.c</a>.</p>
<p class="reference">Referenced by <a class="el" href="sha256_8c_source.html#l00041">sha256_transform()</a>.</p>
</div>
</div>
<a name="doc-func-members" id="doc-func-members"></a><h2 id="header-doc-func-members" class="groupheader">Function Documentation</h2>
<a id="a7bae173c313a0752035e6eac045326e8" name="a7bae173c313a0752035e6eac045326e8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7bae173c313a0752035e6eac045326e8">&#9670;&#160;</a></span>aaruf_sha256_buffer()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void aaruf_sha256_buffer </td>
<td>(</td>
<td class="paramtype">const void *</td> <td class="paramname"><span class="paramname"><em>data</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned long</td> <td class="paramname"><span class="paramname"><em>size</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned char *</td> <td class="paramname"><span class="paramname"><em>result</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="sha256_8c_source.html#l00141">141</a> of file <a class="el" href="sha256_8c_source.html">sha256.c</a>.</p>
<p class="reference">References <a class="el" href="decls_8h_source.html#l00045">AARU_CALL</a>, <a class="el" href="decls_8h_source.html#l00054">AARU_EXPORT</a>, <a class="el" href="sha256_8c_source.html#l00115">aaruf_sha256_final()</a>, <a class="el" href="sha256_8c_source.html#l00076">aaruf_sha256_init()</a>, and <a class="el" href="sha256_8c_source.html#l00090">aaruf_sha256_update()</a>.</p>
</div>
</div>
<a id="a11a74de4ad5df6741280b5fabcf8f79a" name="a11a74de4ad5df6741280b5fabcf8f79a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a11a74de4ad5df6741280b5fabcf8f79a">&#9670;&#160;</a></span>aaruf_sha256_final()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void aaruf_sha256_final </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structsha256__ctx.html">sha256_ctx</a> *</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned char *</td> <td class="paramname"><span class="paramname"><em>out</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="sha256_8c_source.html#l00115">115</a> of file <a class="el" href="sha256_8c_source.html">sha256.c</a>.</p>
<p class="reference">References <a class="el" href="decls_8h_source.html#l00045">AARU_CALL</a>, <a class="el" href="decls_8h_source.html#l00054">AARU_EXPORT</a>, <a class="el" href="sha256_8c_source.html#l00090">aaruf_sha256_update()</a>, <a class="el" href="sha256_8h_source.html#l00044">sha256_ctx::bitcount</a>, <a class="el" href="sha256_8h_source.html#l00045">sha256_ctx::buffer</a>, and <a class="el" href="sha256_8h_source.html#l00043">sha256_ctx::state</a>.</p>
<p class="reference">Referenced by <a class="el" href="sha256_8c_source.html#l00141">aaruf_sha256_buffer()</a>, and <a class="el" href="close_8c_source.html#l00654">write_checksum_block()</a>.</p>
</div>
</div>
<a id="a075527f7b15b70dc7028cf91d9062a90" name="a075527f7b15b70dc7028cf91d9062a90"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a075527f7b15b70dc7028cf91d9062a90">&#9670;&#160;</a></span>aaruf_sha256_init()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void aaruf_sha256_init </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structsha256__ctx.html">sha256_ctx</a> *</td> <td class="paramname"><span class="paramname"><em>ctx</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="sha256_8c_source.html#l00076">76</a> of file <a class="el" href="sha256_8c_source.html">sha256.c</a>.</p>
<p class="reference">References <a class="el" href="decls_8h_source.html#l00045">AARU_CALL</a>, <a class="el" href="decls_8h_source.html#l00054">AARU_EXPORT</a>, <a class="el" href="sha256_8h_source.html#l00044">sha256_ctx::bitcount</a>, <a class="el" href="sha256_8h_source.html#l00045">sha256_ctx::buffer</a>, and <a class="el" href="sha256_8h_source.html#l00043">sha256_ctx::state</a>.</p>
<p class="reference">Referenced by <a class="el" href="create_8c_source.html#l00279">aaruf_create()</a>, and <a class="el" href="sha256_8c_source.html#l00141">aaruf_sha256_buffer()</a>.</p>
</div>
</div>
<a id="a67fb5733f7c2dd5a7a02963b46eeaacf" name="a67fb5733f7c2dd5a7a02963b46eeaacf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a67fb5733f7c2dd5a7a02963b46eeaacf">&#9670;&#160;</a></span>aaruf_sha256_update()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void aaruf_sha256_update </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structsha256__ctx.html">sha256_ctx</a> *</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const void *</td> <td class="paramname"><span class="paramname"><em>data_ptr</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned long</td> <td class="paramname"><span class="paramname"><em>len</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="sha256_8c_source.html#l00090">90</a> of file <a class="el" href="sha256_8c_source.html">sha256.c</a>.</p>
<p class="reference">References <a class="el" href="decls_8h_source.html#l00045">AARU_CALL</a>, <a class="el" href="decls_8h_source.html#l00054">AARU_EXPORT</a>, <a class="el" href="sha256_8h_source.html#l00044">sha256_ctx::bitcount</a>, <a class="el" href="sha256_8h_source.html#l00045">sha256_ctx::buffer</a>, <a class="el" href="sha256_8c_source.html#l00041">sha256_transform()</a>, and <a class="el" href="sha256_8h_source.html#l00043">sha256_ctx::state</a>.</p>
<p class="reference">Referenced by <a class="el" href="sha256_8c_source.html#l00141">aaruf_sha256_buffer()</a>, <a class="el" href="sha256_8c_source.html#l00115">aaruf_sha256_final()</a>, <a class="el" href="write_8c_source.html#l00098">aaruf_write_sector()</a>, and <a class="el" href="write_8c_source.html#l00532">aaruf_write_sector_long()</a>.</p>
</div>
</div>
<a id="aff30aeb7e0231f2e4a7b5902e947bc9f" name="aff30aeb7e0231f2e4a7b5902e947bc9f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff30aeb7e0231f2e4a7b5902e947bc9f">&#9670;&#160;</a></span>sha256_transform()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void sha256_transform </td>
<td>(</td>
<td class="paramtype">uint32_t</td> <td class="paramname"><span class="paramname"><em>state</em></span>[8], </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const uint8_t</td> <td class="paramname"><span class="paramname"><em>block</em></span>[64]&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel static">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="sha256_8c_source.html#l00041">41</a> of file <a class="el" href="sha256_8c_source.html">sha256.c</a>.</p>
<p class="reference">References <a class="el" href="decls_8h_source.html#l00055">AARU_LOCAL</a>, <a class="el" href="sha256_8c_source.html#l00024">Ch</a>, <a class="el" href="sha256_8c_source.html#l00031">K</a>, <a class="el" href="sha256_8c_source.html#l00025">Maj</a>, <a class="el" href="sha256_8c_source.html#l00026">SIGMA0</a>, <a class="el" href="sha256_8c_source.html#l00028">sigma0</a>, <a class="el" href="sha256_8c_source.html#l00027">SIGMA1</a>, and <a class="el" href="sha256_8c_source.html#l00029">sigma1</a>.</p>
<p class="reference">Referenced by <a class="el" href="sha256_8c_source.html#l00090">aaruf_sha256_update()</a>.</p>
</div>
</div>
<a name="doc-var-members" id="doc-var-members"></a><h2 id="header-doc-var-members" class="groupheader">Variable Documentation</h2>
<a id="a22c6551e88df4c5c42fce3d0641adb64" name="a22c6551e88df4c5c42fce3d0641adb64"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a22c6551e88df4c5c42fce3d0641adb64">&#9670;&#160;</a></span>K</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const uint32_t K[64]</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel static">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<b>Initial value:</b><div class="fragment"><div class="line">= {</div>
<div class="line"> 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,</div>
<div class="line"> 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,</div>
<div class="line"> 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,</div>
<div class="line"> 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,</div>
<div class="line"> 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,</div>
<div class="line"> 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,</div>
<div class="line"> 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,</div>
<div class="line"> 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2}</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="sha256_8c_source.html#l00031">31</a> of file <a class="el" href="sha256_8c_source.html">sha256.c</a>.</p>
<p class="reference">Referenced by <a class="el" href="sha256_8c_source.html#l00041">sha256_transform()</a>.</p>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a href="dir_6b3196bdf3f485a11a190486a5644c9a.html">checksum</a></li><li class="navelem"><a href="sha256_8c.html">sha256.c</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.14.0 </li>
</ul>
</div>
</body>
</html>