Sophie

Sophie

distrib > Mandriva > 2009.0 > i586 > by-pkgid > d9faa203c2b0b6fbb179d93daaea81b7 > files > 1866

libdtn-devel-2.6.0-1mdv2009.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>DTN Reference Implementation: gcm.h File Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.6 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>gcm.h File Reference</h1>
<p>
<code>#include &quot;<a class="el" href="gcm__aes_8h-source.html">gcm_aes.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="gf128mul_8h-source.html">gf128mul.h</a>&quot;</code><br>

<p>
<a href="gcm_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgcm__ctx.html">gcm_ctx</a></td></tr>

<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#d63e1f447f6a9816ca34e2a77c1adeea">BFR_UNIT</a>&nbsp;&nbsp;&nbsp;64</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#a529a3ade43a2979d477e450242004b0">RETURN_WARN</a>&nbsp;&nbsp;&nbsp;1</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#b747ac432edef91062f2946bb521e49f">RETURN_OK</a>&nbsp;&nbsp;&nbsp;0</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#9eec9e2a2ffc5f3c7a1bfbe1ba4a4c2b">RETURN_ERROR</a>&nbsp;&nbsp;&nbsp;-1</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#0c56cb56e66965c61e5e4ee91cfdb923">GCM_BLOCK_SIZE</a>&nbsp;&nbsp;&nbsp;AES_BLOCK_SIZE</td></tr>

<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a></td></tr>

<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#5136c10f0c38f7eac4d4ef9f4eb720eb">dec_unit_type</a> (BFR_UNIT, buf_unit)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#91b8d84863eed46dc80cebb87489a094">dec_bufr_type</a> (BFR_UNIT, AES_BLOCK_SIZE, buf_type)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#721f02566e2e0717ba131e470028ac3d">gcm_init_and_key</a> (const unsigned char key[], unsigned long key_len, <a class="el" href="structgcm__ctx.html">gcm_ctx</a> ctx[1])</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#0e37bb8dc094c7ab3af2c1e4bafcc360">gcm_end</a> (<a class="el" href="structgcm__ctx.html">gcm_ctx</a> ctx[1])</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#1d46a1f6a2fc83e504eb48a55814b289">gcm_encrypt_message</a> (const unsigned char iv[], unsigned long iv_len, const unsigned char hdr[], unsigned long hdr_len, unsigned char msg[], unsigned long msg_len, unsigned char tag[], unsigned long tag_len, <a class="el" href="structgcm__ctx.html">gcm_ctx</a> ctx[1])</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#83f849d6a9182d6a6675b4d423f4d8ee">gcm_decrypt_message</a> (const unsigned char iv[], unsigned long iv_len, const unsigned char hdr[], unsigned long hdr_len, unsigned char msg[], unsigned long msg_len, const unsigned char tag[], unsigned long tag_len, <a class="el" href="structgcm__ctx.html">gcm_ctx</a> ctx[1])</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#48cd234f03c3e3a1c89430a979fa3fca">gcm_init_message</a> (const unsigned char iv[], unsigned long iv_len, <a class="el" href="structgcm__ctx.html">gcm_ctx</a> ctx[1])</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#95f68fdf95d3cf02bea89a68614a046f">gcm_auth_header</a> (const unsigned char hdr[], unsigned long hdr_len, <a class="el" href="structgcm__ctx.html">gcm_ctx</a> ctx[1])</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#14c0cae74fab923c0290ccbc0baa4a44">gcm_encrypt</a> (unsigned char data[], unsigned long data_len, <a class="el" href="structgcm__ctx.html">gcm_ctx</a> ctx[1])</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#eda1ee70a25e5b06af8341018a95b11d">gcm_decrypt</a> (unsigned char data[], unsigned long data_len, <a class="el" href="structgcm__ctx.html">gcm_ctx</a> ctx[1])</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#84e08678ef30d0737224927a37c85e3b">gcm_compute_tag</a> (unsigned char tag[], unsigned long tag_len, <a class="el" href="structgcm__ctx.html">gcm_ctx</a> ctx[1])</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#e0d5938e51cb31e58db485abbd400e39">gcm_auth_data</a> (const unsigned char data[], unsigned long data_len, <a class="el" href="structgcm__ctx.html">gcm_ctx</a> ctx[1])</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gcm_8h.html#734d3157fb8a3da6f8af7a92855021b0">gcm_crypt_data</a> (unsigned char data[], unsigned long data_len, <a class="el" href="structgcm__ctx.html">gcm_ctx</a> ctx[1])</td></tr>

</table>
<hr><h2>Define Documentation</h2>
<a class="anchor" name="d63e1f447f6a9816ca34e2a77c1adeea"></a><!-- doxytag: member="gcm.h::BFR_UNIT" ref="d63e1f447f6a9816ca34e2a77c1adeea" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define BFR_UNIT&nbsp;&nbsp;&nbsp;64          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="gcm_8h-source.html#l00046">46</a> of file <a class="el" href="gcm_8h-source.html">gcm.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="0c56cb56e66965c61e5e4ee91cfdb923"></a><!-- doxytag: member="gcm.h::GCM_BLOCK_SIZE" ref="0c56cb56e66965c61e5e4ee91cfdb923" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GCM_BLOCK_SIZE&nbsp;&nbsp;&nbsp;AES_BLOCK_SIZE          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="gcm_8h-source.html#l00081">81</a> of file <a class="el" href="gcm_8h-source.html">gcm.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="9eec9e2a2ffc5f3c7a1bfbe1ba4a4c2b"></a><!-- doxytag: member="gcm.h::RETURN_ERROR" ref="9eec9e2a2ffc5f3c7a1bfbe1ba4a4c2b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define RETURN_ERROR&nbsp;&nbsp;&nbsp;-1          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="gcm_8h-source.html#l00074">74</a> of file <a class="el" href="gcm_8h-source.html">gcm.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="b747ac432edef91062f2946bb521e49f"></a><!-- doxytag: member="gcm.h::RETURN_OK" ref="b747ac432edef91062f2946bb521e49f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define RETURN_OK&nbsp;&nbsp;&nbsp;0          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="gcm_8h-source.html#l00073">73</a> of file <a class="el" href="gcm_8h-source.html">gcm.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="a529a3ade43a2979d477e450242004b0"></a><!-- doxytag: member="gcm.h::RETURN_WARN" ref="a529a3ade43a2979d477e450242004b0" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define RETURN_WARN&nbsp;&nbsp;&nbsp;1          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="gcm_8h-source.html#l00072">72</a> of file <a class="el" href="gcm_8h-source.html">gcm.h</a>.</p>

</div>
</div><p>
<hr><h2>Typedef Documentation</h2>
<a class="anchor" name="a0762d336f64b72721690d6706f5802b"></a><!-- doxytag: member="gcm.h::ret_type" ref="a0762d336f64b72721690d6706f5802b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef int <a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="gcm_8h-source.html#l00077">77</a> of file <a class="el" href="gcm_8h-source.html">gcm.h</a>.</p>

</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="91b8d84863eed46dc80cebb87489a094"></a><!-- doxytag: member="gcm.h::dec_bufr_type" ref="91b8d84863eed46dc80cebb87489a094" args="(BFR_UNIT, AES_BLOCK_SIZE, buf_type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">dec_bufr_type           </td>
          <td>(</td>
          <td class="paramtype">BFR_UNIT&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">AES_BLOCK_SIZE&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">buf_type&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="5136c10f0c38f7eac4d4ef9f4eb720eb"></a><!-- doxytag: member="gcm.h::dec_unit_type" ref="5136c10f0c38f7eac4d4ef9f4eb720eb" args="(BFR_UNIT, buf_unit)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">dec_unit_type           </td>
          <td>(</td>
          <td class="paramtype">BFR_UNIT&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">buf_unit&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="e0d5938e51cb31e58db485abbd400e39"></a><!-- doxytag: member="gcm.h::gcm_auth_data" ref="e0d5938e51cb31e58db485abbd400e39" args="(const unsigned char data[], unsigned long data_len, gcm_ctx ctx[1])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a> gcm_auth_data           </td>
          <td>(</td>
          <td class="paramtype">const unsigned char&nbsp;</td>
          <td class="paramname"> <em>data</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>data_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structgcm__ctx.html">gcm_ctx</a>&nbsp;</td>
          <td class="paramname"> <em>ctx</em>[1]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="95f68fdf95d3cf02bea89a68614a046f"></a><!-- doxytag: member="gcm.h::gcm_auth_header" ref="95f68fdf95d3cf02bea89a68614a046f" args="(const unsigned char hdr[], unsigned long hdr_len, gcm_ctx ctx[1])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a> gcm_auth_header           </td>
          <td>(</td>
          <td class="paramtype">const unsigned char&nbsp;</td>
          <td class="paramname"> <em>hdr</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>hdr_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structgcm__ctx.html">gcm_ctx</a>&nbsp;</td>
          <td class="paramname"> <em>ctx</em>[1]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="84e08678ef30d0737224927a37c85e3b"></a><!-- doxytag: member="gcm.h::gcm_compute_tag" ref="84e08678ef30d0737224927a37c85e3b" args="(unsigned char tag[], unsigned long tag_len, gcm_ctx ctx[1])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a> gcm_compute_tag           </td>
          <td>(</td>
          <td class="paramtype">unsigned char&nbsp;</td>
          <td class="paramname"> <em>tag</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>tag_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structgcm__ctx.html">gcm_ctx</a>&nbsp;</td>
          <td class="paramname"> <em>ctx</em>[1]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="734d3157fb8a3da6f8af7a92855021b0"></a><!-- doxytag: member="gcm.h::gcm_crypt_data" ref="734d3157fb8a3da6f8af7a92855021b0" args="(unsigned char data[], unsigned long data_len, gcm_ctx ctx[1])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a> gcm_crypt_data           </td>
          <td>(</td>
          <td class="paramtype">unsigned char&nbsp;</td>
          <td class="paramname"> <em>data</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>data_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structgcm__ctx.html">gcm_ctx</a>&nbsp;</td>
          <td class="paramname"> <em>ctx</em>[1]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="eda1ee70a25e5b06af8341018a95b11d"></a><!-- doxytag: member="gcm.h::gcm_decrypt" ref="eda1ee70a25e5b06af8341018a95b11d" args="(unsigned char data[], unsigned long data_len, gcm_ctx ctx[1])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a> gcm_decrypt           </td>
          <td>(</td>
          <td class="paramtype">unsigned char&nbsp;</td>
          <td class="paramname"> <em>data</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>data_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structgcm__ctx.html">gcm_ctx</a>&nbsp;</td>
          <td class="paramname"> <em>ctx</em>[1]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="83f849d6a9182d6a6675b4d423f4d8ee"></a><!-- doxytag: member="gcm.h::gcm_decrypt_message" ref="83f849d6a9182d6a6675b4d423f4d8ee" args="(const unsigned char iv[], unsigned long iv_len, const unsigned char hdr[], unsigned long hdr_len, unsigned char msg[], unsigned long msg_len, const unsigned char tag[], unsigned long tag_len, gcm_ctx ctx[1])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a> gcm_decrypt_message           </td>
          <td>(</td>
          <td class="paramtype">const unsigned char&nbsp;</td>
          <td class="paramname"> <em>iv</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>iv_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const unsigned char&nbsp;</td>
          <td class="paramname"> <em>hdr</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>hdr_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned char&nbsp;</td>
          <td class="paramname"> <em>msg</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>msg_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const unsigned char&nbsp;</td>
          <td class="paramname"> <em>tag</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>tag_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structgcm__ctx.html">gcm_ctx</a>&nbsp;</td>
          <td class="paramname"> <em>ctx</em>[1]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="14c0cae74fab923c0290ccbc0baa4a44"></a><!-- doxytag: member="gcm.h::gcm_encrypt" ref="14c0cae74fab923c0290ccbc0baa4a44" args="(unsigned char data[], unsigned long data_len, gcm_ctx ctx[1])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a> gcm_encrypt           </td>
          <td>(</td>
          <td class="paramtype">unsigned char&nbsp;</td>
          <td class="paramname"> <em>data</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>data_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structgcm__ctx.html">gcm_ctx</a>&nbsp;</td>
          <td class="paramname"> <em>ctx</em>[1]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="1d46a1f6a2fc83e504eb48a55814b289"></a><!-- doxytag: member="gcm.h::gcm_encrypt_message" ref="1d46a1f6a2fc83e504eb48a55814b289" args="(const unsigned char iv[], unsigned long iv_len, const unsigned char hdr[], unsigned long hdr_len, unsigned char msg[], unsigned long msg_len, unsigned char tag[], unsigned long tag_len, gcm_ctx ctx[1])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a> gcm_encrypt_message           </td>
          <td>(</td>
          <td class="paramtype">const unsigned char&nbsp;</td>
          <td class="paramname"> <em>iv</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>iv_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const unsigned char&nbsp;</td>
          <td class="paramname"> <em>hdr</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>hdr_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned char&nbsp;</td>
          <td class="paramname"> <em>msg</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>msg_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned char&nbsp;</td>
          <td class="paramname"> <em>tag</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>tag_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structgcm__ctx.html">gcm_ctx</a>&nbsp;</td>
          <td class="paramname"> <em>ctx</em>[1]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="0e37bb8dc094c7ab3af2c1e4bafcc360"></a><!-- doxytag: member="gcm.h::gcm_end" ref="0e37bb8dc094c7ab3af2c1e4bafcc360" args="(gcm_ctx ctx[1])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a> gcm_end           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structgcm__ctx.html">gcm_ctx</a>&nbsp;</td>
          <td class="paramname"> <em>ctx</em>[1]          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="721f02566e2e0717ba131e470028ac3d"></a><!-- doxytag: member="gcm.h::gcm_init_and_key" ref="721f02566e2e0717ba131e470028ac3d" args="(const unsigned char key[], unsigned long key_len, gcm_ctx ctx[1])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a> gcm_init_and_key           </td>
          <td>(</td>
          <td class="paramtype">const unsigned char&nbsp;</td>
          <td class="paramname"> <em>key</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>key_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structgcm__ctx.html">gcm_ctx</a>&nbsp;</td>
          <td class="paramname"> <em>ctx</em>[1]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="48cd234f03c3e3a1c89430a979fa3fca"></a><!-- doxytag: member="gcm.h::gcm_init_message" ref="48cd234f03c3e3a1c89430a979fa3fca" args="(const unsigned char iv[], unsigned long iv_len, gcm_ctx ctx[1])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="gcm_8h.html#a0762d336f64b72721690d6706f5802b">ret_type</a> gcm_init_message           </td>
          <td>(</td>
          <td class="paramtype">const unsigned char&nbsp;</td>
          <td class="paramname"> <em>iv</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>iv_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structgcm__ctx.html">gcm_ctx</a>&nbsp;</td>
          <td class="paramname"> <em>ctx</em>[1]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Mon Jul 21 14:09:49 2008 for DTN Reference Implementation by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
</body>
</html>