<!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: OpenSSL Cipher Property</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><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>OpenSSL Cipher Property<br>
<small>
[<a class="el" href="group__openssl.html">OpenSSL wrapper</a>]</small>
</h1><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <br>
<a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a></td></tr>

<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">EVP_CIPHER *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__openssl__cipher__property.html#g84c76b8ca4ae4252c46b6e4826e299a5">openssl_cipher_property_get_cipher</a> (const <a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *cprop, const axutil_env_t *env)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">axis2_char_t *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__openssl__cipher__property.html#gd6444a529498ddd2c9a8c056776e122e">openssl_cipher_property_get_name</a> (const <a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *cprop, const axutil_env_t *env)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">axis2_char_t *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__openssl__cipher__property.html#g1701139cb4eda08e581af9564de8fa28">openssl_cipher_property_get_url</a> (const <a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *cprop, const axutil_env_t *env)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__openssl__cipher__property.html#g6c1fc5928b4c31767c2b59225bd04612">openssl_cipher_property_get_key_size</a> (const <a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *cprop, const axutil_env_t *env)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__openssl__cipher__property.html#g59e79078dc767eb2f2a301477c4b09f4">openssl_cipher_property_get_block_size</a> (const <a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *cprop, const axutil_env_t *env)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__openssl__cipher__property.html#g5ef2ecdcfbea7d99629cb2ad5e4c9374">openssl_cipher_property_get_iv_size</a> (const <a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *cprop, const axutil_env_t *env)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">axis2_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__openssl__cipher__property.html#g1ccb889e0b635577fbea5bcd2e6d3be0">openssl_cipher_property_set_cipher</a> (<a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *cprop, const axutil_env_t *env, EVP_CIPHER *cipher)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">axis2_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__openssl__cipher__property.html#ged8d0fd4569dd00146b4f39f0f6f7d9d">openssl_cipher_property_set_name</a> (<a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *cprop, const axutil_env_t *env, axis2_char_t *name)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">axis2_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__openssl__cipher__property.html#g82be2cd8ae05bc23b66e01083953e290">openssl_cipher_property_set_url</a> (<a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *cprop, const axutil_env_t *env, axis2_char_t *url)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">axis2_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__openssl__cipher__property.html#ge51bd47a6edd9906ed5f0c00f900402d">openssl_cipher_property_set_key_size</a> (<a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *cprop, const axutil_env_t *env, int key_size)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">axis2_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__openssl__cipher__property.html#g1da368e0ae6f38bf334ad88efc79fee2">openssl_cipher_property_set_block_size</a> (<a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *cprop, const axutil_env_t *env, int block_size)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">axis2_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__openssl__cipher__property.html#ge3bff2dae59dd1fe5ef31c8c04c9fd42">openssl_cipher_property_set_iv_size</a> (<a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *cprop, const axutil_env_t *env, int iv_size)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">axis2_status_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__openssl__cipher__property.html#g85c44acb22baad42f71f932dac14de9e">openssl_cipher_property_free</a> (<a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *cprop, const axutil_env_t *env)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">AXIS2_EXTERN <br>
<a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__openssl__cipher__property.html#gd911b8e80c2aac6a1b89f6332930caf2">openssl_cipher_property_create</a> (const axutil_env_t *env)</td></tr>

</table>
<hr><h2>Typedef Documentation</h2>
<a class="anchor" name="gc6dae44cdbdf078fd7c01d13c2909624"></a><!-- doxytag: member="openssl_cipher_property.h::openssl_cipher_property_t" ref="gc6dae44cdbdf078fd7c01d13c2909624" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> <a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Type name for struct openssl_cipher_property 
</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="gd911b8e80c2aac6a1b89f6332930caf2"></a><!-- doxytag: member="openssl_cipher_property.h::openssl_cipher_property_create" ref="gd911b8e80c2aac6a1b89f6332930caf2" args="(const axutil_env_t *env)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">AXIS2_EXTERN <a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a>* openssl_cipher_property_create           </td>
          <td>(</td>
          <td class="paramtype">const axutil_env_t *&nbsp;</td>
          <td class="paramname"> <em>env</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Create a fresh block cipher property <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>pointer to environment struct </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>cipher_prop_ptr </dd></dl>

</div>
</div><p>
<a class="anchor" name="g85c44acb22baad42f71f932dac14de9e"></a><!-- doxytag: member="openssl_cipher_property.h::openssl_cipher_property_free" ref="g85c44acb22baad42f71f932dac14de9e" args="(openssl_cipher_property_t *cprop, const axutil_env_t *env)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">axis2_status_t openssl_cipher_property_free           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *&nbsp;</td>
          <td class="paramname"> <em>cprop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const axutil_env_t *&nbsp;</td>
          <td class="paramname"> <em>env</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>
Free the cipher property <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cprop</em>&nbsp;</td><td>The OpenSSL cipher property </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>pointer to environment struct </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>AXIS2_SUCCESS on success, else AXIS2_FAILURE </dd></dl>

</div>
</div><p>
<a class="anchor" name="g59e79078dc767eb2f2a301477c4b09f4"></a><!-- doxytag: member="openssl_cipher_property.h::openssl_cipher_property_get_block_size" ref="g59e79078dc767eb2f2a301477c4b09f4" args="(const openssl_cipher_property_t *cprop, const axutil_env_t *env)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int openssl_cipher_property_get_block_size           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *&nbsp;</td>
          <td class="paramname"> <em>cprop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const axutil_env_t *&nbsp;</td>
          <td class="paramname"> <em>env</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>
Given the OpenSSL cipher property returns the cipher block size <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cprop</em>&nbsp;</td><td>The OpenSSL cipher property </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>pointer to environment struct </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the block size of the cipher </dd></dl>

</div>
</div><p>
<a class="anchor" name="g84c76b8ca4ae4252c46b6e4826e299a5"></a><!-- doxytag: member="openssl_cipher_property.h::openssl_cipher_property_get_cipher" ref="g84c76b8ca4ae4252c46b6e4826e299a5" args="(const openssl_cipher_property_t *cprop, const axutil_env_t *env)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">EVP_CIPHER* openssl_cipher_property_get_cipher           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *&nbsp;</td>
          <td class="paramname"> <em>cprop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const axutil_env_t *&nbsp;</td>
          <td class="paramname"> <em>env</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>
Given the OpenSSL cipher property returns the cipher <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cprop</em>&nbsp;</td><td>The OpenSSL cipher property </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>pointer to environment struct </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the cipher </dd></dl>

</div>
</div><p>
<a class="anchor" name="g5ef2ecdcfbea7d99629cb2ad5e4c9374"></a><!-- doxytag: member="openssl_cipher_property.h::openssl_cipher_property_get_iv_size" ref="g5ef2ecdcfbea7d99629cb2ad5e4c9374" args="(const openssl_cipher_property_t *cprop, const axutil_env_t *env)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int openssl_cipher_property_get_iv_size           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *&nbsp;</td>
          <td class="paramname"> <em>cprop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const axutil_env_t *&nbsp;</td>
          <td class="paramname"> <em>env</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>
Given the OpenSSL cipher property returns the size of the initial vector <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cprop</em>&nbsp;</td><td>The OpenSSL cipher property </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>pointer to environment struct </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the size of the initial vector </dd></dl>

</div>
</div><p>
<a class="anchor" name="g6c1fc5928b4c31767c2b59225bd04612"></a><!-- doxytag: member="openssl_cipher_property.h::openssl_cipher_property_get_key_size" ref="g6c1fc5928b4c31767c2b59225bd04612" args="(const openssl_cipher_property_t *cprop, const axutil_env_t *env)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int openssl_cipher_property_get_key_size           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *&nbsp;</td>
          <td class="paramname"> <em>cprop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const axutil_env_t *&nbsp;</td>
          <td class="paramname"> <em>env</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>
Given the OpenSSL cipher property returns the size of the key <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cprop</em>&nbsp;</td><td>The OpenSSL cipher property </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>pointer to environment struct </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>size of the key </dd></dl>

</div>
</div><p>
<a class="anchor" name="gd6444a529498ddd2c9a8c056776e122e"></a><!-- doxytag: member="openssl_cipher_property.h::openssl_cipher_property_get_name" ref="gd6444a529498ddd2c9a8c056776e122e" args="(const openssl_cipher_property_t *cprop, const axutil_env_t *env)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">axis2_char_t* openssl_cipher_property_get_name           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *&nbsp;</td>
          <td class="paramname"> <em>cprop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const axutil_env_t *&nbsp;</td>
          <td class="paramname"> <em>env</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>
Given the OpenSSL cipher property returns the name of the property <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cprop</em>&nbsp;</td><td>The OpenSSL cipher property </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>pointer to environment struct </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the name of the cipher property </dd></dl>

</div>
</div><p>
<a class="anchor" name="g1701139cb4eda08e581af9564de8fa28"></a><!-- doxytag: member="openssl_cipher_property.h::openssl_cipher_property_get_url" ref="g1701139cb4eda08e581af9564de8fa28" args="(const openssl_cipher_property_t *cprop, const axutil_env_t *env)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">axis2_char_t* openssl_cipher_property_get_url           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *&nbsp;</td>
          <td class="paramname"> <em>cprop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const axutil_env_t *&nbsp;</td>
          <td class="paramname"> <em>env</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>
Given the OpenSSL cipher property returns the URL Which usually is an algorithm URL <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cprop</em>&nbsp;</td><td>The OpenSSL cipher property </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>pointer to environment struct </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the URL </dd></dl>

</div>
</div><p>
<a class="anchor" name="g1da368e0ae6f38bf334ad88efc79fee2"></a><!-- doxytag: member="openssl_cipher_property.h::openssl_cipher_property_set_block_size" ref="g1da368e0ae6f38bf334ad88efc79fee2" args="(openssl_cipher_property_t *cprop, const axutil_env_t *env, int block_size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">axis2_status_t openssl_cipher_property_set_block_size           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *&nbsp;</td>
          <td class="paramname"> <em>cprop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const axutil_env_t *&nbsp;</td>
          <td class="paramname"> <em>env</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>block_size</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>
Set the size of the cipher block for the OpenSSL cipher property <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cprop</em>&nbsp;</td><td>The OpenSSL cipher property </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>pointer to environment struct </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>block_size</em>&nbsp;</td><td>the size of the cipher block </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>AXIS2_SUCCESS on success, else AXIS2_FAILURE </dd></dl>

</div>
</div><p>
<a class="anchor" name="g1ccb889e0b635577fbea5bcd2e6d3be0"></a><!-- doxytag: member="openssl_cipher_property.h::openssl_cipher_property_set_cipher" ref="g1ccb889e0b635577fbea5bcd2e6d3be0" args="(openssl_cipher_property_t *cprop, const axutil_env_t *env, EVP_CIPHER *cipher)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">axis2_status_t openssl_cipher_property_set_cipher           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *&nbsp;</td>
          <td class="paramname"> <em>cprop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const axutil_env_t *&nbsp;</td>
          <td class="paramname"> <em>env</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">EVP_CIPHER *&nbsp;</td>
          <td class="paramname"> <em>cipher</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>
Set the Cipher for the OpenSSL cipher property <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cprop</em>&nbsp;</td><td>The OpenSSL cipher property </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>pointer to environment struct </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>cipher</em>&nbsp;</td><td>The cipher to be set in the property </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>AXIS2_SUCCESS on success, else AXIS2_FAILURE </dd></dl>

</div>
</div><p>
<a class="anchor" name="ge3bff2dae59dd1fe5ef31c8c04c9fd42"></a><!-- doxytag: member="openssl_cipher_property.h::openssl_cipher_property_set_iv_size" ref="ge3bff2dae59dd1fe5ef31c8c04c9fd42" args="(openssl_cipher_property_t *cprop, const axutil_env_t *env, int iv_size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">axis2_status_t openssl_cipher_property_set_iv_size           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *&nbsp;</td>
          <td class="paramname"> <em>cprop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const axutil_env_t *&nbsp;</td>
          <td class="paramname"> <em>env</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>iv_size</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>
Set the size of the initial vector for the OpenSSL cipher property <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cprop</em>&nbsp;</td><td>The OpenSSL cipher property </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>pointer to environment struct </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>iv_size</em>&nbsp;</td><td>the size of the initial vector </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>AXIS2_SUCCESS on success, else AXIS2_FAILURE </dd></dl>

</div>
</div><p>
<a class="anchor" name="ge51bd47a6edd9906ed5f0c00f900402d"></a><!-- doxytag: member="openssl_cipher_property.h::openssl_cipher_property_set_key_size" ref="ge51bd47a6edd9906ed5f0c00f900402d" args="(openssl_cipher_property_t *cprop, const axutil_env_t *env, int key_size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">axis2_status_t openssl_cipher_property_set_key_size           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *&nbsp;</td>
          <td class="paramname"> <em>cprop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const axutil_env_t *&nbsp;</td>
          <td class="paramname"> <em>env</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>key_size</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>
Set the the size of the key for the OpenSSL cipher property <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cprop</em>&nbsp;</td><td>The OpenSSL cipher property </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>pointer to environment struct </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>key_size</em>&nbsp;</td><td>the size of the key </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>AXIS2_SUCCESS on success, else AXIS2_FAILURE </dd></dl>

</div>
</div><p>
<a class="anchor" name="ged8d0fd4569dd00146b4f39f0f6f7d9d"></a><!-- doxytag: member="openssl_cipher_property.h::openssl_cipher_property_set_name" ref="ged8d0fd4569dd00146b4f39f0f6f7d9d" args="(openssl_cipher_property_t *cprop, const axutil_env_t *env, axis2_char_t *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">axis2_status_t openssl_cipher_property_set_name           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *&nbsp;</td>
          <td class="paramname"> <em>cprop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const axutil_env_t *&nbsp;</td>
          <td class="paramname"> <em>env</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">axis2_char_t *&nbsp;</td>
          <td class="paramname"> <em>name</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>
Set the name for the OpenSSL cipher property <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cprop</em>&nbsp;</td><td>The OpenSSL cipher property </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>pointer to environment struct </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>of the OpenSSL cipher property </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>AXIS2_SUCCESS on success, else AXIS2_FAILURE </dd></dl>

</div>
</div><p>
<a class="anchor" name="g82be2cd8ae05bc23b66e01083953e290"></a><!-- doxytag: member="openssl_cipher_property.h::openssl_cipher_property_set_url" ref="g82be2cd8ae05bc23b66e01083953e290" args="(openssl_cipher_property_t *cprop, const axutil_env_t *env, axis2_char_t *url)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">axis2_status_t openssl_cipher_property_set_url           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__openssl__cipher__property.html#gc6dae44cdbdf078fd7c01d13c2909624">openssl_cipher_property_t</a> *&nbsp;</td>
          <td class="paramname"> <em>cprop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const axutil_env_t *&nbsp;</td>
          <td class="paramname"> <em>env</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">axis2_char_t *&nbsp;</td>
          <td class="paramname"> <em>url</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>
Set the url for the OpenSSL cipher property <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cprop</em>&nbsp;</td><td>The OpenSSL cipher property </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>pointer to environment struct </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>url</em>&nbsp;</td><td>The URL of the OpenSSL cipher property </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>AXIS2_SUCCESS on success, else AXIS2_FAILURE </dd></dl>

</div>
</div><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>
