<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Rampart/C: rampart_util.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.5 -->
<div class="navigation" id="top">
  <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="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="dir_2ab6243317ac98a7842daf660931c511.html">include</a>
  </div>
</div>
<div class="contents">
<h1>rampart_util.h File Reference</h1>Utilities of rampart. <a href="#_details">More...</a>
<p>
<code>#include &lt;axutil_utils_defines.h&gt;</code><br>
<code>#include &lt;axis2_defines.h&gt;</code><br>
<code>#include &lt;axutil_date_time.h&gt;</code><br>
<code>#include &lt;axutil_env.h&gt;</code><br>
<code>#include &lt;axis2_msg_ctx.h&gt;</code><br>
<code>#include &lt;<a class="el" href="rampart__authn__provider_8h-source.html">rampart_authn_provider.h</a>&gt;</code><br>
<code>#include &lt;<a class="el" href="rampart__credentials_8h-source.html">rampart_credentials.h</a>&gt;</code><br>
<code>#include &lt;<a class="el" href="rampart__callback_8h-source.html">rampart_callback.h</a>&gt;</code><br>
<code>#include &lt;<a class="el" href="rampart__replay__detector_8h-source.html">rampart_replay_detector.h</a>&gt;</code><br>
<code>#include &lt;<a class="el" href="rampart__sct__provider_8h-source.html">rampart_sct_provider.h</a>&gt;</code><br>

<p>
<a href="rampart__util_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>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">AXIS2_EXTERN <br>
rampart_credentials_t *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__rampart__util.html#gaa4f99e22951f687b0d6e4031b4d8517">rampart_load_credentials_module</a> (const axutil_env_t *env, axis2_char_t *cred_module_name)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">AXIS2_EXTERN <br>
rampart_credentials_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__rampart__util.html#g43fd2ab5ecee27046ab9aa776b998fcc">rampart_call_credentials</a> (const axutil_env_t *env, rampart_credentials_t *cred_module, axis2_msg_ctx_t *ctx, axis2_char_t **username, axis2_char_t **password)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">AXIS2_EXTERN <br>
rampart_authn_provider_t *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__rampart__util.html#g0ec9419d3eefcec4d375fffee7662948">rampart_load_auth_module</a> (const axutil_env_t *env, axis2_char_t *auth_module_name)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">AXIS2_EXTERN <br>
rampart_replay_detector_t *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__rampart__util.html#gc42cf52130dc684f2f923f5509c748c2">rampart_load_replay_detector</a> (const axutil_env_t *env, axis2_char_t *replay_detector_name)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">AXIS2_EXTERN <br>
rampart_sct_provider_t *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__rampart__util.html#g7db4254206a06a951400981f0d730ed6">rampart_load_sct_provider</a> (const axutil_env_t *env, axis2_char_t *sct_provider_name)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">AXIS2_EXTERN rampart_callback_t *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__rampart__util.html#g099e7dbc797120d13921dad5b727b67c">rampart_load_pwcb_module</a> (const axutil_env_t *env, axis2_char_t *callback_module_name)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">AXIS2_EXTERN <br>
rampart_authn_provider_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__rampart__util.html#g8d5769b0fd5f28a030d28944e426e629">rampart_authenticate_un_pw</a> (const axutil_env_t *env, rampart_authn_provider_t *authp, const axis2_char_t *username, const axis2_char_t *password, const axis2_char_t *nonce, const axis2_char_t *created, const axis2_char_t *password_type, axis2_msg_ctx_t *msg_ctx)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">AXIS2_EXTERN axis2_char_t *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__rampart__util.html#g1743d0c262347ff97745318b5b795493">rampart_callback_password</a> (const axutil_env_t *env, rampart_callback_t *callback_module, const axis2_char_t *username)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">AXIS2_EXTERN axis2_char_t *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__rampart__util.html#g8408c8f2f6de3e90d1cae3c1caf25fa7">rampart_callback_pkcs12_password</a> (const axutil_env_t *env, rampart_callback_t *callback_module, const axis2_char_t *username)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">AXIS2_EXTERN axis2_char_t *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__rampart__util.html#g0a6b47a83e55c44634f53effd2367654">rampart_generate_time</a> (const axutil_env_t *env, int ttl, axis2_bool_t with_millisecond)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">AXIS2_EXTERN axis2_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__rampart__util.html#g6936fe4fd4006583c669c7f2765b3d3a">rampart_compare_date_time</a> (const axutil_env_t *env, axis2_char_t *dt1, axis2_char_t *dt2)</td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Utilities of rampart. 
<p>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Wed May 13 10:52:54 2009 for Rampart/C by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
</body>
</html>
