<!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_credentials.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_credentials.h File Reference</h1>The credentials interface for rampart. To retrieve a username and password pair. <a href="#_details">More...</a>
<p>
<code>#include &lt;axis2_defines.h&gt;</code><br>
<code>#include &lt;axutil_error.h&gt;</code><br>
<code>#include &lt;axutil_env.h&gt;</code><br>
<code>#include &lt;axutil_utils.h&gt;</code><br>
<code>#include &lt;axis2_msg_ctx.h&gt;</code><br>
<code>#include &lt;axutil_param.h&gt;</code><br>

<p>
<a href="rampart__credentials_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"><b>rampart_credentials_ops</b></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><b>rampart_credentials</b></td></tr>

<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gefdb7a4462991a26885bd6e292fbf051"></a><!-- doxytag: member="rampart_credentials.h::RAMPART_CREDENTIALS_FREE" ref="gefdb7a4462991a26885bd6e292fbf051" args="(credentials, env)" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>RAMPART_CREDENTIALS_FREE</b>(credentials, env)&nbsp;&nbsp;&nbsp;((credentials)-&gt;ops-&gt;free (credentials, env))</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>RAMPART_CREDENTIALS_USERNAME_GET</b>(credentials, env, msg_ctx, username, password)</td></tr>

<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gea3c1b29f8b147a3264aa87ac9b2dbb1"></a><!-- doxytag: member="rampart_credentials.h::rampart_credentials_status_t" ref="gea3c1b29f8b147a3264aa87ac9b2dbb1" args="" -->
typedef enum <br>
rampart_credentials_status&nbsp;</td><td class="memItemRight" valign="bottom"><b>rampart_credentials_status_t</b></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <br>
rampart_credentials_ops&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__rampart__credentials.html#gb576030ab7586ac8000bc73421fc3433">rampart_credentials_ops_t</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g98cce1b5d3b31e8a01eea4890471ff52"></a><!-- doxytag: member="rampart_credentials.h::rampart_credentials_t" ref="g98cce1b5d3b31e8a01eea4890471ff52" args="" -->
typedef struct rampart_credentials&nbsp;</td><td class="memItemRight" valign="bottom"><b>rampart_credentials_t</b></td></tr>

<tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><b>rampart_credentials_status</b> { <br>
&nbsp;&nbsp;<b>RAMPART_CREDENTIALS_PW_FOUND</b> =  0, 
<b>RAMPART_CREDENTIALS_PW_NOT_FOUND</b>, 
<b>RAMPART_CREDENTIALS_USER_FOUND</b>, 
<b>RAMPART_CREDENTIALS_USER_NOT_FOUND</b>, 
<br>
&nbsp;&nbsp;<b>RAMPART_CREDENTIALS_GENERAL_ERROR</b>
<br>
 }</td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
The credentials interface for rampart. To retrieve a username and password pair. 
<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>
