📁 File Manager Pro
v10.0.3 | PHP: 8.1.34
Server: Apache
2026-06-22 00:01:56
📂
/ (Root)
/
opt
/
alt
/
ruby19
/
share
/
doc
/
ruby
/
html
/
df
/
dfd
📍 /opt/alt/ruby19/share/doc/ruby/html/df/dfd
🔄 Refresh
✏️
Editing: sha2init_8c.html
Read Only
<!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.14"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>Ruby: ext/digest/sha2/sha2init.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> <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">Ruby  <span id="projectnumber">1.9.3p551(2014-11-13revision48407)</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.14 --> <script type="text/javascript" src="../../menudata.js"></script> <script type="text/javascript" src="../../menu.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(function() { initMenu('../../',false,false,'search.php','Search'); }); /* @license-end */</script> <div id="main-nav"></div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="../../dir_31cedd4509e06940f559c1ca2f722e02.html">ext</a></li><li class="navelem"><a class="el" href="../../dir_8462c367d9e69a7809faa14633ccfafa.html">digest</a></li><li class="navelem"><a class="el" href="../../dir_a9cf865355561749cfedd2e562ceb3d4.html">sha2</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#define-members">Macros</a> | <a href="#func-members">Functions</a> </div> <div class="headertitle"> <div class="title">sha2init.c File Reference</div> </div> </div><!--header--> <div class="contents"> <div class="textblock"><code>#include "<a class="el" href="../../d9/d46/digest_8h_source.html">digest.h</a>"</code><br /> <code>#include "<a class="el" href="../../db/d4d/sha2_8h_source.html">sha2.h</a>"</code><br /> </div> <p><a href="../../df/dfd/sha2init_8c_source.html">Go to the source code of this file.</a></p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a> Macros</h2></td></tr> <tr class="memitem:af2271c157cf91b2178fa993ed361e439"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/dfd/sha2init_8c.html#af2271c157cf91b2178fa993ed361e439">FOREACH_BITLEN</a>(<a class="el" href="../../dc/dd1/ossl__ssl_8c.html#a86771351f4ef469ab9c94739a64fd7ea">func</a>)   <a class="el" href="../../dc/dd1/ossl__ssl_8c.html#a86771351f4ef469ab9c94739a64fd7ea">func</a>(256) <a class="el" href="../../dc/dd1/ossl__ssl_8c.html#a86771351f4ef469ab9c94739a64fd7ea">func</a>(384) <a class="el" href="../../dc/dd1/ossl__ssl_8c.html#a86771351f4ef469ab9c94739a64fd7ea">func</a>(512)</td></tr> <tr class="separator:af2271c157cf91b2178fa993ed361e439"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a43c20f7ff6caf3780d0586d855b1cc86"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/dfd/sha2init_8c.html#a43c20f7ff6caf3780d0586d855b1cc86">DEFINE_ALGO_METADATA</a>(bitlen)</td></tr> <tr class="separator:a43c20f7ff6caf3780d0586d855b1cc86"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afe22048fe83e446f15a37c8c47f79e1e"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/dfd/sha2init_8c.html#afe22048fe83e446f15a37c8c47f79e1e">DECLARE_ALGO_CLASS</a>(bitlen)   <a class="el" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> cDigest_SHA##bitlen;</td></tr> <tr class="separator:afe22048fe83e446f15a37c8c47f79e1e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afb9434207eb2cbe1f3e9107fe02ae06d"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/dfd/sha2init_8c.html#afb9434207eb2cbe1f3e9107fe02ae06d">DEFINE_ALGO_CLASS</a>(bitlen)</td></tr> <tr class="separator:afb9434207eb2cbe1f3e9107fe02ae06d"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> Functions</h2></td></tr> <tr class="memitem:a37308823462fd29d2bbeef2695c2b1cc"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/dfd/sha2init_8c.html#a37308823462fd29d2bbeef2695c2b1cc">Init_sha2</a> ()</td></tr> <tr class="separator:a37308823462fd29d2bbeef2695c2b1cc"><td class="memSeparator" colspan="2"> </td></tr> </table> <h2 class="groupheader">Macro Definition Documentation</h2> <a id="afe22048fe83e446f15a37c8c47f79e1e"></a> <h2 class="memtitle"><span class="permalink"><a href="#afe22048fe83e446f15a37c8c47f79e1e">◆ </a></span>DECLARE_ALGO_CLASS</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define DECLARE_ALGO_CLASS</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">bitlen</td><td>)</td> <td>   <a class="el" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> cDigest_SHA##bitlen;</td> </tr> </table> </div><div class="memdoc"> <p class="reference">Referenced by <a class="el" href="../../df/dfd/sha2init_8c_source.html#l00032">Init_sha2()</a>.</p> </div> </div> <a id="afb9434207eb2cbe1f3e9107fe02ae06d"></a> <h2 class="memtitle"><span class="permalink"><a href="#afb9434207eb2cbe1f3e9107fe02ae06d">◆ </a></span>DEFINE_ALGO_CLASS</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define DEFINE_ALGO_CLASS</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">bitlen</td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <b>Value:</b><div class="fragment"><div class="line">cDigest_SHA##bitlen = <a class="code" href="../../de/ddf/group__class.html#ga5266deadce0318d830a1e63c0933b898">rb_define_class_under</a>(mDigest, <span class="stringliteral">"SHA"</span> #bitlen, cDigest_Base); <a class="code" href="../../db/d2e/intern_8h.html#acee88ad0375c8a9080e2283db494d257">\</a></div><div class="line"><a class="code" href="../../db/d2e/intern_8h.html#acee88ad0375c8a9080e2283db494d257">\</a></div><div class="line"><a class="code" href="../../db/d2e/intern_8h.html#acee88ad0375c8a9080e2283db494d257"> rb_ivar_set</a>(cDigest_SHA##bitlen, <a class="code" href="../../d7/d03/digest_8c.html#ae2e62eff5f52bfe344e413270aca575c">id_metadata</a>, \</div><div class="line"> <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a27705a261a9addb9ed4cb65dd5a61b1c">Data_Wrap_Struct</a>(<a class="code" href="../../de/de6/ruby_2ruby_8h.html#a57c96ead3ef230b4838e65fe037c346e">rb_cObject</a>, 0, 0, (<span class="keywordtype">void</span> *)&sha##bitlen));</div><div class="ttc" id="group__class_html_ga5266deadce0318d830a1e63c0933b898"><div class="ttname"><a href="../../de/ddf/group__class.html#ga5266deadce0318d830a1e63c0933b898">rb_define_class_under</a></div><div class="ttdeci">VALUE rb_define_class_under(VALUE outer, const char *name, VALUE super)</div><div class="ttdoc">Defines a class under the namespace of outer. </div><div class="ttdef"><b>Definition:</b> <a href="../../d9/d0c/class_8c_source.html#l00515">class.c:515</a></div></div> <div class="ttc" id="ruby_2ruby_8h_html_a27705a261a9addb9ed4cb65dd5a61b1c"><div class="ttname"><a href="../../de/de6/ruby_2ruby_8h.html#a27705a261a9addb9ed4cb65dd5a61b1c">Data_Wrap_Struct</a></div><div class="ttdeci">#define Data_Wrap_Struct(klass, mark, free, sval)</div><div class="ttdef"><b>Definition:</b> <a href="../../de/de6/ruby_2ruby_8h_source.html#l00817">ruby.h:817</a></div></div> <div class="ttc" id="ruby_2ruby_8h_html_a57c96ead3ef230b4838e65fe037c346e"><div class="ttname"><a href="../../de/de6/ruby_2ruby_8h.html#a57c96ead3ef230b4838e65fe037c346e">rb_cObject</a></div><div class="ttdeci">RUBY_EXTERN VALUE rb_cObject</div><div class="ttdef"><b>Definition:</b> <a href="../../de/de6/ruby_2ruby_8h_source.html#l01246">ruby.h:1246</a></div></div> <div class="ttc" id="intern_8h_html_acee88ad0375c8a9080e2283db494d257"><div class="ttname"><a href="../../db/d2e/intern_8h.html#acee88ad0375c8a9080e2283db494d257">rb_ivar_set</a></div><div class="ttdeci">VALUE rb_ivar_set(VALUE, ID, VALUE)</div><div class="ttdef"><b>Definition:</b> <a href="../../d0/d2a/variable_8c_source.html#l01038">variable.c:1038</a></div></div> <div class="ttc" id="digest_8c_html_ae2e62eff5f52bfe344e413270aca575c"><div class="ttname"><a href="../../d7/d03/digest_8c.html#ae2e62eff5f52bfe344e413270aca575c">id_metadata</a></div><div class="ttdeci">static ID id_metadata</div><div class="ttdef"><b>Definition:</b> <a href="../../d7/d03/digest_8c_source.html#l00024">digest.c:24</a></div></div> </div><!-- fragment --> <p class="reference">Referenced by <a class="el" href="../../df/dfd/sha2init_8c_source.html#l00032">Init_sha2()</a>.</p> </div> </div> <a id="a43c20f7ff6caf3780d0586d855b1cc86"></a> <h2 class="memtitle"><span class="permalink"><a href="#a43c20f7ff6caf3780d0586d855b1cc86">◆ </a></span>DEFINE_ALGO_METADATA</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define DEFINE_ALGO_METADATA</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">bitlen</td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <b>Value:</b><div class="fragment"><div class="line"><span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="../../df/d6f/structrb__digest__metadata__t.html">rb_digest_metadata_t</a> sha##bitlen = { \</div><div class="line"> RUBY_DIGEST_API_VERSION, \</div><div class="line"> SHA##bitlen##_DIGEST_LENGTH, \</div><div class="line"> SHA##bitlen##_BLOCK_LENGTH, \</div><div class="line"> sizeof(SHA##bitlen##_CTX), \</div><div class="line"> (<a class="code" href="../../d9/d46/digest_8h.html#ab751de82d056794e259bb351d8078b46">rb_digest_hash_init_func_t</a>)SHA##bitlen##_Init, \</div><div class="line"> (<a class="code" href="../../d9/d46/digest_8h.html#a3ca6146d360e76339ee558437c18c3c5">rb_digest_hash_update_func_t</a>)SHA##bitlen##_Update, \</div><div class="line"> (<a class="code" href="../../d9/d46/digest_8h.html#ab4dc723b1d57d0cd43c2e6232d1fb9bb">rb_digest_hash_finish_func_t</a>)SHA##bitlen##_Finish, \</div><div class="line">};</div><div class="ttc" id="digest_8h_html_ab4dc723b1d57d0cd43c2e6232d1fb9bb"><div class="ttname"><a href="../../d9/d46/digest_8h.html#ab4dc723b1d57d0cd43c2e6232d1fb9bb">rb_digest_hash_finish_func_t</a></div><div class="ttdeci">void(* rb_digest_hash_finish_func_t)(void *, unsigned char *)</div><div class="ttdef"><b>Definition:</b> <a href="../../d9/d46/digest_8h_source.html#l00022">digest.h:22</a></div></div> <div class="ttc" id="digest_8h_html_a3ca6146d360e76339ee558437c18c3c5"><div class="ttname"><a href="../../d9/d46/digest_8h.html#a3ca6146d360e76339ee558437c18c3c5">rb_digest_hash_update_func_t</a></div><div class="ttdeci">void(* rb_digest_hash_update_func_t)(void *, unsigned char *, size_t)</div><div class="ttdef"><b>Definition:</b> <a href="../../d9/d46/digest_8h_source.html#l00021">digest.h:21</a></div></div> <div class="ttc" id="structrb__digest__metadata__t_html"><div class="ttname"><a href="../../df/d6f/structrb__digest__metadata__t.html">rb_digest_metadata_t</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d9/d46/digest_8h_source.html#l00024">digest.h:24</a></div></div> <div class="ttc" id="digest_8h_html_ab751de82d056794e259bb351d8078b46"><div class="ttname"><a href="../../d9/d46/digest_8h.html#ab751de82d056794e259bb351d8078b46">rb_digest_hash_init_func_t</a></div><div class="ttdeci">void(* rb_digest_hash_init_func_t)(void *)</div><div class="ttdef"><b>Definition:</b> <a href="../../d9/d46/digest_8h_source.html#l00020">digest.h:20</a></div></div> </div><!-- fragment --> <p class="definition">Definition at line <a class="el" href="../../df/dfd/sha2init_8c_source.html#l00013">13</a> of file <a class="el" href="../../df/dfd/sha2init_8c_source.html">sha2init.c</a>.</p> </div> </div> <a id="af2271c157cf91b2178fa993ed361e439"></a> <h2 class="memtitle"><span class="permalink"><a href="#af2271c157cf91b2178fa993ed361e439">◆ </a></span>FOREACH_BITLEN</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define FOREACH_BITLEN</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><a class="el" href="../../dc/dd1/ossl__ssl_8c.html#a86771351f4ef469ab9c94739a64fd7ea">func</a></td><td>)</td> <td>   <a class="el" href="../../dc/dd1/ossl__ssl_8c.html#a86771351f4ef469ab9c94739a64fd7ea">func</a>(256) <a class="el" href="../../dc/dd1/ossl__ssl_8c.html#a86771351f4ef469ab9c94739a64fd7ea">func</a>(384) <a class="el" href="../../dc/dd1/ossl__ssl_8c.html#a86771351f4ef469ab9c94739a64fd7ea">func</a>(512)</td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="../../df/dfd/sha2init_8c_source.html#l00011">11</a> of file <a class="el" href="../../df/dfd/sha2init_8c_source.html">sha2init.c</a>.</p> <p class="reference">Referenced by <a class="el" href="../../df/dfd/sha2init_8c_source.html#l00032">Init_sha2()</a>.</p> </div> </div> <h2 class="groupheader">Function Documentation</h2> <a id="a37308823462fd29d2bbeef2695c2b1cc"></a> <h2 class="memtitle"><span class="permalink"><a href="#a37308823462fd29d2bbeef2695c2b1cc">◆ </a></span>Init_sha2()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void Init_sha2 </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="../../df/dfd/sha2init_8c_source.html#l00032">32</a> of file <a class="el" href="../../df/dfd/sha2init_8c_source.html">sha2init.c</a>.</p> <p class="reference">References <a class="el" href="../../df/dfd/sha2init_8c.html#afe22048fe83e446f15a37c8c47f79e1e">DECLARE_ALGO_CLASS</a>, <a class="el" href="../../df/dfd/sha2init_8c.html#afb9434207eb2cbe1f3e9107fe02ae06d">DEFINE_ALGO_CLASS</a>, <a class="el" href="../../df/dfd/sha2init_8c_source.html#l00011">FOREACH_BITLEN</a>, <a class="el" href="../../d7/d03/digest_8c_source.html#l00024">id_metadata</a>, <a class="el" href="../../dc/dcc/array_8c.html#a9cfa42d4b79c89d68c53be8b2150a503">rb_intern</a>, <a class="el" href="../../d0/d2a/variable_8c_source.html#l00293">rb_path2class()</a>, and <a class="el" href="../../d9/dd4/load_8c_source.html#l00652">rb_require()</a>.</p> </div> </div> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="../../doxygen.png" alt="doxygen"/> </a> 1.8.14 </small></address> </body> </html>
💾 Save Changes
❌ Cancel