Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > media > main-release > by-pkgid > bdcd72668be70f58bf0aa7c2102b0734 > files > 122

lib64apr-util-devel-1.2.12-4mdv2008.1.x86_64.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>Apache Portable Runtime Utility Library: MD5 Routines</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.4 -->
<div class="tabs">
  <ul>
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
    <li><a href="modules.html"><span>Modules</span></a></li>
    <li><a href="namespaces.html"><span>Namespaces</span></a></li>
    <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
    <li><a href="files.html"><span>Files</span></a></li>
    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
  </ul>
</div>
<h1>MD5 Routines</h1><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__md5__ctx__t.html">apr_md5_ctx_t</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="group___a_p_r___m_d5.html#g0bb65e74ccdddca6ef75e886084e52dc">APR_MD5_DIGESTSIZE</a>&nbsp;&nbsp;&nbsp;16</td></tr>

<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <a class="el" href="structapr__md5__ctx__t.html">apr_md5_ctx_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___m_d5.html#gcb4d6bf2cf0a29553a63273ff0a6fe69">apr_md5_ctx_t</a></td></tr>

<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">apr_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___m_d5.html#g7a0502bfc466821beabe4876987fbcb5">apr_md5_init</a> (<a class="el" href="structapr__md5__ctx__t.html">apr_md5_ctx_t</a> *context)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">apr_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___m_d5.html#gd80cbd97ca3197a237bbed006c033a57">apr_md5_set_xlate</a> (<a class="el" href="structapr__md5__ctx__t.html">apr_md5_ctx_t</a> *context, <a class="el" href="group___a_p_r___x_l_a_t_e.html#g069dabbadc30e3a4157c38104a250e77">apr_xlate_t</a> *xlate)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">apr_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___m_d5.html#g1ae4e5c171ae98953e716ac02f026ed2">apr_md5_update</a> (<a class="el" href="structapr__md5__ctx__t.html">apr_md5_ctx_t</a> *context, const void *input, apr_size_t inputLen)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">apr_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___m_d5.html#g245fb83991257b096ebadd2b1b8cef62">apr_md5_final</a> (unsigned char digest[APR_MD5_DIGESTSIZE], <a class="el" href="structapr__md5__ctx__t.html">apr_md5_ctx_t</a> *context)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">apr_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___m_d5.html#gc98c04b75053ae04907ca325f46df955">apr_md5</a> (unsigned char digest[APR_MD5_DIGESTSIZE], const void *input, apr_size_t inputLen)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">apr_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___m_d5.html#gf902e64b62e4056c6dcc1594b2dca645">apr_md5_encode</a> (const char *password, const char *salt, char *result, apr_size_t nbytes)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">apr_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___m_d5.html#g9ea1aa7e468de57e603d6e1d1b1516f2">apr_password_validate</a> (const char *passwd, const char *hash)</td></tr>

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

<p>
The MD5 digest size 
</div>
</div><p>
<hr><h2>Typedef Documentation</h2>
<a class="anchor" name="gcb4d6bf2cf0a29553a63273ff0a6fe69"></a><!-- doxytag: member="apr_md5.h::apr_md5_ctx_t" ref="gcb4d6bf2cf0a29553a63273ff0a6fe69" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structapr__md5__ctx__t.html">apr_md5_ctx_t</a> <a class="el" href="structapr__md5__ctx__t.html">apr_md5_ctx_t</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="structapr__md5__ctx__t.html">apr_md5_ctx_t</a> </dd></dl>

</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="gc98c04b75053ae04907ca325f46df955"></a><!-- doxytag: member="apr_md5.h::apr_md5" ref="gc98c04b75053ae04907ca325f46df955" args="(unsigned char digest[APR_MD5_DIGESTSIZE], const void *input, apr_size_t inputLen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t apr_md5           </td>
          <td>(</td>
          <td class="paramtype">unsigned char&nbsp;</td>
          <td class="paramname"> <em>digest</em>[APR_MD5_DIGESTSIZE], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>input</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_size_t&nbsp;</td>
          <td class="paramname"> <em>inputLen</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
MD5 in one step <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>digest</em>&nbsp;</td><td>The final MD5 digest </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>input</em>&nbsp;</td><td>The message block to use </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>inputLen</em>&nbsp;</td><td>The length of the message block </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="gf902e64b62e4056c6dcc1594b2dca645"></a><!-- doxytag: member="apr_md5.h::apr_md5_encode" ref="gf902e64b62e4056c6dcc1594b2dca645" args="(const char *password, const char *salt, char *result, apr_size_t nbytes)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t apr_md5_encode           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>password</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>salt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_size_t&nbsp;</td>
          <td class="paramname"> <em>nbytes</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Encode a password using an MD5 algorithm <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>password</em>&nbsp;</td><td>The password to encode </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>salt</em>&nbsp;</td><td>The salt to use for the encoding </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>result</em>&nbsp;</td><td>The string to store the encoded password in </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>nbytes</em>&nbsp;</td><td>The size of the result buffer </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="g245fb83991257b096ebadd2b1b8cef62"></a><!-- doxytag: member="apr_md5.h::apr_md5_final" ref="g245fb83991257b096ebadd2b1b8cef62" args="(unsigned char digest[APR_MD5_DIGESTSIZE], apr_md5_ctx_t *context)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t apr_md5_final           </td>
          <td>(</td>
          <td class="paramtype">unsigned char&nbsp;</td>
          <td class="paramname"> <em>digest</em>[APR_MD5_DIGESTSIZE], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structapr__md5__ctx__t.html">apr_md5_ctx_t</a> *&nbsp;</td>
          <td class="paramname"> <em>context</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
MD5 finalization. Ends an MD5 message-digest operation, writing the message digest and zeroing the context <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>digest</em>&nbsp;</td><td>The final MD5 digest </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>The MD5 content we are finalizing. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="g7a0502bfc466821beabe4876987fbcb5"></a><!-- doxytag: member="apr_md5.h::apr_md5_init" ref="g7a0502bfc466821beabe4876987fbcb5" args="(apr_md5_ctx_t *context)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t apr_md5_init           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapr__md5__ctx__t.html">apr_md5_ctx_t</a> *&nbsp;</td>
          <td class="paramname"> <em>context</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
MD5 Initialize. Begins an MD5 operation, writing a new context. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>The MD5 context to initialize. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="gd80cbd97ca3197a237bbed006c033a57"></a><!-- doxytag: member="apr_md5.h::apr_md5_set_xlate" ref="gd80cbd97ca3197a237bbed006c033a57" args="(apr_md5_ctx_t *context, apr_xlate_t *xlate)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t apr_md5_set_xlate           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapr__md5__ctx__t.html">apr_md5_ctx_t</a> *&nbsp;</td>
          <td class="paramname"> <em>context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___a_p_r___x_l_a_t_e.html#g069dabbadc30e3a4157c38104a250e77">apr_xlate_t</a> *&nbsp;</td>
          <td class="paramname"> <em>xlate</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
MD5 translation setup. Provides the APR translation handle to be used for translating the content before calculating the digest. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>The MD5 content to set the translation for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>xlate</em>&nbsp;</td><td>The translation handle to use for this MD5 context </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="g1ae4e5c171ae98953e716ac02f026ed2"></a><!-- doxytag: member="apr_md5.h::apr_md5_update" ref="g1ae4e5c171ae98953e716ac02f026ed2" args="(apr_md5_ctx_t *context, const void *input, apr_size_t inputLen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t apr_md5_update           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapr__md5__ctx__t.html">apr_md5_ctx_t</a> *&nbsp;</td>
          <td class="paramname"> <em>context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>input</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_size_t&nbsp;</td>
          <td class="paramname"> <em>inputLen</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
MD5 block update operation. Continue an MD5 message-digest operation, processing another message block, and updating the context. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>The MD5 content to update. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>input</em>&nbsp;</td><td>next message block to update </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>inputLen</em>&nbsp;</td><td>The length of the next message block </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="g9ea1aa7e468de57e603d6e1d1b1516f2"></a><!-- doxytag: member="apr_md5.h::apr_password_validate" ref="g9ea1aa7e468de57e603d6e1d1b1516f2" args="(const char *passwd, const char *hash)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t apr_password_validate           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>passwd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>hash</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Validate hashes created by APR-supported algorithms: md5 and sha1. hashes created by crypt are supported only on platforms that provide crypt(3), so don't rely on that function unless you know that your application will be run only on platforms that support it. On platforms that don't support crypt(3), this falls back to a clear text string comparison. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>passwd</em>&nbsp;</td><td>The password to validate </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>hash</em>&nbsp;</td><td>The password to validate against </td></tr>
  </table>
</dl>

</div>
</div><p>
<hr size="1"><address style="text-align: right;"><small>Generated on Thu Jan 24 02:22:55 2008 for Apache Portable Runtime Utility Library by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.4 </small></address>
</body>
</html>