Sophie

Sophie

distrib > Mageia > 7 > armv7hl > media > core-release > by-pkgid > cf66605433f4ed2e749a1e5586d0533a > files > 50

libapr-util-devel-1.6.1-3.mga7.armv7hl.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.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Apache Portable Runtime Utility Library: include/apr_crypto.h 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="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 style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Apache Portable Runtime Utility Library
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<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&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- 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 id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">apr_crypto.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>APR-UTIL Crypto library.  
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;apu.h&quot;</code><br />
<code>#include &quot;apr_pools.h&quot;</code><br />
<code>#include &quot;apr_tables.h&quot;</code><br />
<code>#include &quot;apr_hash.h&quot;</code><br />
<code>#include &quot;<a class="el" href="apu__errno_8h_source.html">apu_errno.h</a>&quot;</code><br />
</div>
<p><a href="apr__crypto_8h_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="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__crypto__block__key__type__t.html">apr_crypto_block_key_type_t</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__crypto__block__key__mode__t.html">apr_crypto_block_key_mode_t</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__crypto__passphrase__t.html">apr_crypto_passphrase_t</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__crypto__secret__t.html">apr_crypto_secret_t</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__crypto__key__rec__t.html">apr_crypto_key_rec_t</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:gaa0fd79c7b12efb93d12ed63767cfcfb0"><td class="memItemLeft" align="right" valign="top">
#define&#160;</td><td class="memItemRight" valign="bottom"><b>APU_CRYPTO_RECOMMENDED_DRIVER</b>&#160;&#160;&#160;&quot;openssl&quot;</td></tr>
<tr class="separator:gaa0fd79c7b12efb93d12ed63767cfcfb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ga9185b416f007dc01079c5a7e812767ab"><td class="memItemLeft" align="right" valign="top">
typedef struct apr_crypto_driver_t&#160;</td><td class="memItemRight" valign="bottom"><b>apr_crypto_driver_t</b></td></tr>
<tr class="separator:ga9185b416f007dc01079c5a7e812767ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga83bc88e4d9f7222320c49fd874646deb"><td class="memItemLeft" align="right" valign="top">
typedef struct apr_crypto_t&#160;</td><td class="memItemRight" valign="bottom"><b>apr_crypto_t</b></td></tr>
<tr class="separator:ga83bc88e4d9f7222320c49fd874646deb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad853527ecf6bf2011f3df33d1b725ec1"><td class="memItemLeft" align="right" valign="top">
typedef struct apr_crypto_config_t&#160;</td><td class="memItemRight" valign="bottom"><b>apr_crypto_config_t</b></td></tr>
<tr class="separator:gad853527ecf6bf2011f3df33d1b725ec1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga523c9ec387ef5261b43d234f7b1a8176"><td class="memItemLeft" align="right" valign="top">
typedef struct apr_crypto_key_t&#160;</td><td class="memItemRight" valign="bottom"><b>apr_crypto_key_t</b></td></tr>
<tr class="separator:ga523c9ec387ef5261b43d234f7b1a8176"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac75e3dfee18a940164adc12a639c01d0"><td class="memItemLeft" align="right" valign="top">
typedef struct apr_crypto_block_t&#160;</td><td class="memItemRight" valign="bottom"><b>apr_crypto_block_t</b></td></tr>
<tr class="separator:gac75e3dfee18a940164adc12a639c01d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac758384381590fbaec1699e8235221ff"><td class="memItemLeft" align="right" valign="top">
typedef struct <a class="el" href="structapr__crypto__block__key__type__t.html">apr_crypto_block_key_type_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>apr_crypto_block_key_type_t</b></td></tr>
<tr class="separator:gac758384381590fbaec1699e8235221ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga46c7e50e29a1c64a5ce969738819a549"><td class="memItemLeft" align="right" valign="top">
typedef struct <a class="el" href="structapr__crypto__block__key__mode__t.html">apr_crypto_block_key_mode_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>apr_crypto_block_key_mode_t</b></td></tr>
<tr class="separator:ga46c7e50e29a1c64a5ce969738819a549"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaecde20d858d3854c6d2db5e3d88bee2"><td class="memItemLeft" align="right" valign="top">
typedef struct <a class="el" href="structapr__crypto__passphrase__t.html">apr_crypto_passphrase_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>apr_crypto_passphrase_t</b></td></tr>
<tr class="separator:gaaecde20d858d3854c6d2db5e3d88bee2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad6ef40dd9b15e06b91f7dec4b43b45be"><td class="memItemLeft" align="right" valign="top">
typedef struct <a class="el" href="structapr__crypto__secret__t.html">apr_crypto_secret_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>apr_crypto_secret_t</b></td></tr>
<tr class="separator:gad6ef40dd9b15e06b91f7dec4b43b45be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaeb494f6f51be7bf6133e1cfeeb2af59f"><td class="memItemLeft" align="right" valign="top">
typedef struct <a class="el" href="structapr__crypto__key__rec__t.html">apr_crypto_key_rec_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>apr_crypto_key_rec_t</b></td></tr>
<tr class="separator:gaeb494f6f51be7bf6133e1cfeeb2af59f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:gac62c799021d3bc28449626e60351e946"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#gac62c799021d3bc28449626e60351e946">apr_crypto_block_key_type_e</a> { <br />
&#160;&#160;<b>APR_KEY_NONE</b>, 
<b>APR_KEY_3DES_192</b>, 
<a class="el" href="group___a_p_r___util___crypto.html#ggac62c799021d3bc28449626e60351e946a8c1d6aff8c24a476659f4ef074832ee6">APR_KEY_AES_128</a>, 
<a class="el" href="group___a_p_r___util___crypto.html#ggac62c799021d3bc28449626e60351e946aff350305e3e825a8b3fa0b0a6fc9804a">APR_KEY_AES_192</a>, 
<br />
&#160;&#160;<a class="el" href="group___a_p_r___util___crypto.html#ggac62c799021d3bc28449626e60351e946add6da30b44e6546ef242b8d1d21ca9bc">APR_KEY_AES_256</a>
<br />
 }</td></tr>
<tr class="separator:gac62c799021d3bc28449626e60351e946"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad29b01edfcd38649f12d76e803dd2153"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#gad29b01edfcd38649f12d76e803dd2153">apr_crypto_block_key_mode_e</a> { <b>APR_MODE_NONE</b>, 
<a class="el" href="group___a_p_r___util___crypto.html#ggad29b01edfcd38649f12d76e803dd2153af7eb194825aa815880ddef6f3ad1ce14">APR_MODE_ECB</a>, 
<a class="el" href="group___a_p_r___util___crypto.html#ggad29b01edfcd38649f12d76e803dd2153a4830062ad4c3ae50545c9b5b0ef0bc49">APR_MODE_CBC</a>
 }</td></tr>
<tr class="separator:gad29b01edfcd38649f12d76e803dd2153"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa0e807c7a74e93715739914b46812559"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#gaa0e807c7a74e93715739914b46812559">apr_crypto_key_type</a> { <a class="el" href="group___a_p_r___util___crypto.html#ggaa0e807c7a74e93715739914b46812559a74dbcb079fa2fb393f5e7e75f995e86c">APR_CRYPTO_KTYPE_PASSPHRASE</a> = 1, 
<a class="el" href="group___a_p_r___util___crypto.html#ggaa0e807c7a74e93715739914b46812559a85b3e63975d82dd024e676763342ec16">APR_CRYPTO_KTYPE_SECRET</a> = 2
 }</td></tr>
<tr class="separator:gaa0e807c7a74e93715739914b46812559"><td class="memSeparator" colspan="2">&#160;</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:gac67bd5ffd6961c27e3bccad02021edd5"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#gac67bd5ffd6961c27e3bccad02021edd5">apr_crypto_init</a> (apr_pool_t *pool)</td></tr>
<tr class="memdesc:gac67bd5ffd6961c27e3bccad02021edd5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform once-only initialisation. Call once only.  <a href="group___a_p_r___util___crypto.html#gac67bd5ffd6961c27e3bccad02021edd5">More...</a><br /></td></tr>
<tr class="separator:gac67bd5ffd6961c27e3bccad02021edd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga88794e872ffee43d6fefb4f13072983f"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#ga88794e872ffee43d6fefb4f13072983f">apr_crypto_clear</a> (apr_pool_t *pool, void *buffer, apr_size_t size)</td></tr>
<tr class="memdesc:ga88794e872ffee43d6fefb4f13072983f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Zero out the buffer provided when the pool is cleaned up.  <a href="group___a_p_r___util___crypto.html#ga88794e872ffee43d6fefb4f13072983f">More...</a><br /></td></tr>
<tr class="separator:ga88794e872ffee43d6fefb4f13072983f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga821cf66a02946f38f03666509829ee96"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#ga821cf66a02946f38f03666509829ee96">apr_crypto_memzero</a> (void *buffer, apr_size_t size)</td></tr>
<tr class="memdesc:ga821cf66a02946f38f03666509829ee96"><td class="mdescLeft">&#160;</td><td class="mdescRight">Always zero out the buffer provided, without being optimized out by the compiler.  <a href="group___a_p_r___util___crypto.html#ga821cf66a02946f38f03666509829ee96">More...</a><br /></td></tr>
<tr class="separator:ga821cf66a02946f38f03666509829ee96"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga38f9b262cf935712afc7f602738eda5c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#ga38f9b262cf935712afc7f602738eda5c">apr_crypto_equals</a> (const void *buf1, const void *buf2, apr_size_t size)</td></tr>
<tr class="memdesc:ga38f9b262cf935712afc7f602738eda5c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Timing attacks safe buffers comparison, where the executing time does not depend on the bytes compared but solely on the number of bytes.  <a href="group___a_p_r___util___crypto.html#ga38f9b262cf935712afc7f602738eda5c">More...</a><br /></td></tr>
<tr class="separator:ga38f9b262cf935712afc7f602738eda5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0a6a35349a7e108ee4964c2d3be5f362"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#ga0a6a35349a7e108ee4964c2d3be5f362">apr_crypto_get_driver</a> (const apr_crypto_driver_t **driver, const char *name, const char *params, const <a class="el" href="structapu__err__t.html">apu_err_t</a> **result, apr_pool_t *pool)</td></tr>
<tr class="memdesc:ga0a6a35349a7e108ee4964c2d3be5f362"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the driver struct for a name.  <a href="group___a_p_r___util___crypto.html#ga0a6a35349a7e108ee4964c2d3be5f362">More...</a><br /></td></tr>
<tr class="separator:ga0a6a35349a7e108ee4964c2d3be5f362"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4cd6fef8b4b9b2d0914183a664d6e886"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#ga4cd6fef8b4b9b2d0914183a664d6e886">apr_crypto_driver_name</a> (const apr_crypto_driver_t *driver)</td></tr>
<tr class="memdesc:ga4cd6fef8b4b9b2d0914183a664d6e886"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the name of the driver.  <a href="group___a_p_r___util___crypto.html#ga4cd6fef8b4b9b2d0914183a664d6e886">More...</a><br /></td></tr>
<tr class="separator:ga4cd6fef8b4b9b2d0914183a664d6e886"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9795c7187a309d1710541f30b0395204"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#ga9795c7187a309d1710541f30b0395204">apr_crypto_error</a> (const <a class="el" href="structapu__err__t.html">apu_err_t</a> **result, const apr_crypto_t *f)</td></tr>
<tr class="memdesc:ga9795c7187a309d1710541f30b0395204"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the result of the last operation on a context. If the result is NULL, the operation was successful.  <a href="group___a_p_r___util___crypto.html#ga9795c7187a309d1710541f30b0395204">More...</a><br /></td></tr>
<tr class="separator:ga9795c7187a309d1710541f30b0395204"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2232e263ef558dd93dec5bb4f010c737"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#ga2232e263ef558dd93dec5bb4f010c737">apr_crypto_make</a> (apr_crypto_t **f, const apr_crypto_driver_t *driver, const char *params, apr_pool_t *pool)</td></tr>
<tr class="memdesc:ga2232e263ef558dd93dec5bb4f010c737"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a context for supporting encryption. Keys, certificates, algorithms and other parameters will be set per context. More than one context can be created at one time. A cleanup will be automatically registered with the given pool to guarantee a graceful shutdown.  <a href="group___a_p_r___util___crypto.html#ga2232e263ef558dd93dec5bb4f010c737">More...</a><br /></td></tr>
<tr class="separator:ga2232e263ef558dd93dec5bb4f010c737"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga784f4ab59bfab55666e9ce9fd79f7724"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#ga784f4ab59bfab55666e9ce9fd79f7724">apr_crypto_get_block_key_types</a> (apr_hash_t **types, const apr_crypto_t *f)</td></tr>
<tr class="memdesc:ga784f4ab59bfab55666e9ce9fd79f7724"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a hash table of key types, keyed by the name of the type against a pointer to <a class="el" href="structapr__crypto__block__key__type__t.html">apr_crypto_block_key_type_t</a>, which in turn begins with an integer.  <a href="group___a_p_r___util___crypto.html#ga784f4ab59bfab55666e9ce9fd79f7724">More...</a><br /></td></tr>
<tr class="separator:ga784f4ab59bfab55666e9ce9fd79f7724"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga55368343c0e61228a941f76caf339e41"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#ga55368343c0e61228a941f76caf339e41">apr_crypto_get_block_key_modes</a> (apr_hash_t **modes, const apr_crypto_t *f)</td></tr>
<tr class="memdesc:ga55368343c0e61228a941f76caf339e41"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a hash table of key modes, keyed by the name of the mode against a pointer to <a class="el" href="structapr__crypto__block__key__mode__t.html">apr_crypto_block_key_mode_t</a>, which in turn begins with an integer.  <a href="group___a_p_r___util___crypto.html#ga55368343c0e61228a941f76caf339e41">More...</a><br /></td></tr>
<tr class="separator:ga55368343c0e61228a941f76caf339e41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8fecc544da829990905f5b6dd629b1d1"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#ga8fecc544da829990905f5b6dd629b1d1">apr_crypto_key</a> (apr_crypto_key_t **key, const <a class="el" href="structapr__crypto__key__rec__t.html">apr_crypto_key_rec_t</a> *rec, const apr_crypto_t *f, apr_pool_t *p)</td></tr>
<tr class="memdesc:ga8fecc544da829990905f5b6dd629b1d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a key from the provided secret or passphrase. The key is cleaned up when the context is cleaned, and may be reused with multiple encryption or decryption operations.  <a href="group___a_p_r___util___crypto.html#ga8fecc544da829990905f5b6dd629b1d1">More...</a><br /></td></tr>
<tr class="separator:ga8fecc544da829990905f5b6dd629b1d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga98dea2011c0e173ab1f059c5a9ea8b14"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#ga98dea2011c0e173ab1f059c5a9ea8b14">apr_crypto_passphrase</a> (apr_crypto_key_t **key, apr_size_t *ivSize, const char *pass, apr_size_t passLen, const unsigned char *salt, apr_size_t saltLen, const <a class="el" href="group___a_p_r___util___crypto.html#gac62c799021d3bc28449626e60351e946">apr_crypto_block_key_type_e</a> type, const <a class="el" href="group___a_p_r___util___crypto.html#gad29b01edfcd38649f12d76e803dd2153">apr_crypto_block_key_mode_e</a> mode, const int doPad, const int iterations, const apr_crypto_t *f, apr_pool_t *p)</td></tr>
<tr class="memdesc:ga98dea2011c0e173ab1f059c5a9ea8b14"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a key from the given passphrase. By default, the PBKDF2 algorithm is used to generate the key from the passphrase. It is expected that the same pass phrase will generate the same key, regardless of the backend crypto platform used. The key is cleaned up when the context is cleaned, and may be reused with multiple encryption or decryption operations.  <a href="group___a_p_r___util___crypto.html#ga98dea2011c0e173ab1f059c5a9ea8b14">More...</a><br /></td></tr>
<tr class="separator:ga98dea2011c0e173ab1f059c5a9ea8b14"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga191077110391e4a8b5b97f8820bdae23"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#ga191077110391e4a8b5b97f8820bdae23">apr_crypto_block_encrypt_init</a> (apr_crypto_block_t **ctx, const unsigned char **iv, const apr_crypto_key_t *key, apr_size_t *blockSize, apr_pool_t *p)</td></tr>
<tr class="memdesc:ga191077110391e4a8b5b97f8820bdae23"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialise a context for encrypting arbitrary data using the given key.  <a href="group___a_p_r___util___crypto.html#ga191077110391e4a8b5b97f8820bdae23">More...</a><br /></td></tr>
<tr class="separator:ga191077110391e4a8b5b97f8820bdae23"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga98110d8923632130a39f9398170bb99a"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#ga98110d8923632130a39f9398170bb99a">apr_crypto_block_encrypt</a> (unsigned char **out, apr_size_t *outlen, const unsigned char *in, apr_size_t inlen, apr_crypto_block_t *ctx)</td></tr>
<tr class="memdesc:ga98110d8923632130a39f9398170bb99a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encrypt data provided by in, write it to out.  <a href="group___a_p_r___util___crypto.html#ga98110d8923632130a39f9398170bb99a">More...</a><br /></td></tr>
<tr class="separator:ga98110d8923632130a39f9398170bb99a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga02552ce92915fcd044ae9efe5b555c8b"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#ga02552ce92915fcd044ae9efe5b555c8b">apr_crypto_block_encrypt_finish</a> (unsigned char *out, apr_size_t *outlen, apr_crypto_block_t *ctx)</td></tr>
<tr class="memdesc:ga02552ce92915fcd044ae9efe5b555c8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encrypt final data block, write it to out.  <a href="group___a_p_r___util___crypto.html#ga02552ce92915fcd044ae9efe5b555c8b">More...</a><br /></td></tr>
<tr class="separator:ga02552ce92915fcd044ae9efe5b555c8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab24c68f757f14a4369ef6c79a04ab8c4"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#gab24c68f757f14a4369ef6c79a04ab8c4">apr_crypto_block_decrypt_init</a> (apr_crypto_block_t **ctx, apr_size_t *blockSize, const unsigned char *iv, const apr_crypto_key_t *key, apr_pool_t *p)</td></tr>
<tr class="memdesc:gab24c68f757f14a4369ef6c79a04ab8c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialise a context for decrypting arbitrary data using the given key.  <a href="group___a_p_r___util___crypto.html#gab24c68f757f14a4369ef6c79a04ab8c4">More...</a><br /></td></tr>
<tr class="separator:gab24c68f757f14a4369ef6c79a04ab8c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf82e6b7f5768952464aa4b0af481de0c"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#gaf82e6b7f5768952464aa4b0af481de0c">apr_crypto_block_decrypt</a> (unsigned char **out, apr_size_t *outlen, const unsigned char *in, apr_size_t inlen, apr_crypto_block_t *ctx)</td></tr>
<tr class="memdesc:gaf82e6b7f5768952464aa4b0af481de0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrypt data provided by in, write it to out.  <a href="group___a_p_r___util___crypto.html#gaf82e6b7f5768952464aa4b0af481de0c">More...</a><br /></td></tr>
<tr class="separator:gaf82e6b7f5768952464aa4b0af481de0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac13a4f1d70437f6722018006d3dde42d"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#gac13a4f1d70437f6722018006d3dde42d">apr_crypto_block_decrypt_finish</a> (unsigned char *out, apr_size_t *outlen, apr_crypto_block_t *ctx)</td></tr>
<tr class="memdesc:gac13a4f1d70437f6722018006d3dde42d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrypt final data block, write it to out.  <a href="group___a_p_r___util___crypto.html#gac13a4f1d70437f6722018006d3dde42d">More...</a><br /></td></tr>
<tr class="separator:gac13a4f1d70437f6722018006d3dde42d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0f351ebb6527dd32604de58d5199846d"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#ga0f351ebb6527dd32604de58d5199846d">apr_crypto_block_cleanup</a> (apr_crypto_block_t *ctx)</td></tr>
<tr class="memdesc:ga0f351ebb6527dd32604de58d5199846d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clean encryption / decryption context.  <a href="group___a_p_r___util___crypto.html#ga0f351ebb6527dd32604de58d5199846d">More...</a><br /></td></tr>
<tr class="separator:ga0f351ebb6527dd32604de58d5199846d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga39bf6b81c4f4cef03915029eb3266cc2"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#ga39bf6b81c4f4cef03915029eb3266cc2">apr_crypto_cleanup</a> (apr_crypto_t *f)</td></tr>
<tr class="memdesc:ga39bf6b81c4f4cef03915029eb3266cc2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clean encryption / decryption context.  <a href="group___a_p_r___util___crypto.html#ga39bf6b81c4f4cef03915029eb3266cc2">More...</a><br /></td></tr>
<tr class="separator:ga39bf6b81c4f4cef03915029eb3266cc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga748292b8c676934763237bd062d094b9"><td class="memItemLeft" align="right" valign="top">apr_status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___crypto.html#ga748292b8c676934763237bd062d094b9">apr_crypto_shutdown</a> (const apr_crypto_driver_t *driver)</td></tr>
<tr class="memdesc:ga748292b8c676934763237bd062d094b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shutdown the crypto library.  <a href="group___a_p_r___util___crypto.html#ga748292b8c676934763237bd062d094b9">More...</a><br /></td></tr>
<tr class="separator:ga748292b8c676934763237bd062d094b9"><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>APR-UTIL Crypto library. </p>
</div></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.14
</small></address>
</body>
</html>