<!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: Buffer</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>Buffer<br>
<small>
[<a class="el" href="group__oxs.html">OMXMLSecurity</a>]</small>
</h1><table border="0" cellpadding="0" cellspacing="0">
<tr><td></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="g9704a9bf94f33513cd78d575ed42cb6a"></a><!-- doxytag: member="oxs_buffer::OXS_BUFFER_INITIAL_SIZE" ref="g9704a9bf94f33513cd78d575ed42cb6a" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>OXS_BUFFER_INITIAL_SIZE</b>&nbsp;&nbsp;&nbsp;1024</td></tr>

<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct oxs_buffer&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a></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"><a class="el" href="group__oxs__buffer.html#g225394ed33b04715f631fb42897dd31b">oxs_AllocMode</a> { <b>oxs_alloc_mode_exact</b> =  0, 
<b>oxs_alloc_mode_double</b>
 }</td></tr>

<tr><td colspan="2"><br><h2>Functions</h2></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__oxs__buffer.html#g3e54c77ee57b2a5af2469becddf748a1">oxs_buffer_free</a> (<a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *buffer, const axutil_env_t *env)</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__oxs__buffer.html#g4dc926f9132ebff41120c08abd4aa5fd">oxs_buffer_remove_head</a> (<a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *buffer, const axutil_env_t *env, int size)</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__oxs__buffer.html#g648af01b647e90398ac02285a5920fd8">oxs_buffer_remove_tail</a> (<a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *buffer, const axutil_env_t *env, int size)</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__oxs__buffer.html#gf1863b19d68b64079f88643d1fe08184">oxs_buffer_populate</a> (<a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *buffer, const axutil_env_t *env, unsigned char *data, int size)</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__oxs__buffer.html#gfcad7537878180c6947bd398407c023f">oxs_buffer_append</a> (<a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *buffer, const axutil_env_t *env, unsigned char *data, int size)</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__oxs__buffer.html#gab7b7db8b2ed5aeedf7afb7b8ca98877">oxs_buffer_prepend</a> (<a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *buffer, const axutil_env_t *env, unsigned char *data, int size)</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__oxs__buffer.html#g28fa4d555e4512e838546846fad5c764">oxs_buffer_read_file</a> (<a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *buffer, const axutil_env_t *env, const axis2_char_t *filename)</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__oxs__buffer.html#g2a6799f5cc72ca3066eb377b0a1620b4">oxs_buffer_set_size</a> (<a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *buffer, const axutil_env_t *env, int size)</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__oxs__buffer.html#gae8943d9cacea29e125a5f58bb612ed8">oxs_buffer_set_max_size</a> (<a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *buffer, const axutil_env_t *env, int size)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">AXIS2_EXTERN unsigned char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__oxs__buffer.html#g8f71c937987e1dded2dc1bf2cc54cb74">oxs_buffer_get_data</a> (<a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *buffer, const axutil_env_t *env)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">AXIS2_EXTERN int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__oxs__buffer.html#g7cf693be18939b9ceb487a373a7d3341">oxs_buffer_get_size</a> (<a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *buffer, const axutil_env_t *env)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">AXIS2_EXTERN int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__oxs__buffer.html#gee0a94847067aaca4e8a0837d3748fe5">oxs_buffer_get_max_size</a> (<a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *buffer, const axutil_env_t *env)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g8dc64f70c3c60d9c1f17acd6d567a434"></a><!-- doxytag: member="oxs_buffer::oxs_buffer_dup" ref="g8dc64f70c3c60d9c1f17acd6d567a434" args="(oxs_buffer_t *buffer, const axutil_env_t *env)" -->
AXIS2_EXTERN <a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>oxs_buffer_dup</b> (<a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *buffer, const axutil_env_t *env)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g8b048bccba352c3ebf7f33fa38c40c12"></a><!-- doxytag: member="oxs_buffer::oxs_buffer_create" ref="g8b048bccba352c3ebf7f33fa38c40c12" args="(const axutil_env_t *env)" -->
AXIS2_EXTERN <a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>oxs_buffer_create</b> (const axutil_env_t *env)</td></tr>

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

<p>
Type name for struct oxs_buffer 
</div>
</div><p>
<hr><h2>Enumeration Type Documentation</h2>
<a class="anchor" name="g225394ed33b04715f631fb42897dd31b"></a><!-- doxytag: member="oxs_buffer.h::oxs_AllocMode" ref="g225394ed33b04715f631fb42897dd31b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__oxs__buffer.html#g225394ed33b04715f631fb42897dd31b">oxs_AllocMode</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Allocate mode for the buffer oxs_alloc_mode_exact : Minimizes the allocated memory size oxs_alloc_mode_double : Minimizes number of Malloc calls 
</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="gfcad7537878180c6947bd398407c023f"></a><!-- doxytag: member="oxs_buffer.h::oxs_buffer_append" ref="gfcad7537878180c6947bd398407c023f" args="(oxs_buffer_t *buffer, const axutil_env_t *env, unsigned char *data, int size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">AXIS2_EXTERN axis2_status_t oxs_buffer_append           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *&nbsp;</td>
          <td class="paramname"> <em>buffer</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">unsigned char *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>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>
Append data (to the end)  pointer to the OMXMLSec buffer struct  pointer to environment struct  the data for the buffer  the effective length of data <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="g3e54c77ee57b2a5af2469becddf748a1"></a><!-- doxytag: member="oxs_buffer.h::oxs_buffer_free" ref="g3e54c77ee57b2a5af2469becddf748a1" args="(oxs_buffer_t *buffer, const axutil_env_t *env)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">AXIS2_EXTERN axis2_status_t oxs_buffer_free           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *&nbsp;</td>
          <td class="paramname"> <em>buffer</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 function of the buffer <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>pointer to the OMXMLSec buffer struct </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="g8f71c937987e1dded2dc1bf2cc54cb74"></a><!-- doxytag: member="oxs_buffer.h::oxs_buffer_get_data" ref="g8f71c937987e1dded2dc1bf2cc54cb74" args="(oxs_buffer_t *buffer, const axutil_env_t *env)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">AXIS2_EXTERN unsigned char* oxs_buffer_get_data           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *&nbsp;</td>
          <td class="paramname"> <em>buffer</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>
Returns data  pointer to the OMXMLSec buffer struct  pointer to environment struct <dl class="return" compact><dt><b>Returns:</b></dt><dd>data in the buffer </dd></dl>

</div>
</div><p>
<a class="anchor" name="gee0a94847067aaca4e8a0837d3748fe5"></a><!-- doxytag: member="oxs_buffer.h::oxs_buffer_get_max_size" ref="gee0a94847067aaca4e8a0837d3748fe5" args="(oxs_buffer_t *buffer, const axutil_env_t *env)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">AXIS2_EXTERN int oxs_buffer_get_max_size           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *&nbsp;</td>
          <td class="paramname"> <em>buffer</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>
Returns the maximum size of the buffer  pointer to the OMXMLSec buffer struct  pointer to environment struct <dl class="return" compact><dt><b>Returns:</b></dt><dd>the maximum size of the buffer </dd></dl>

</div>
</div><p>
<a class="anchor" name="g7cf693be18939b9ceb487a373a7d3341"></a><!-- doxytag: member="oxs_buffer.h::oxs_buffer_get_size" ref="g7cf693be18939b9ceb487a373a7d3341" args="(oxs_buffer_t *buffer, const axutil_env_t *env)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">AXIS2_EXTERN int oxs_buffer_get_size           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *&nbsp;</td>
          <td class="paramname"> <em>buffer</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>
Returns the effective length of the buffer  pointer to the OMXMLSec buffer struct  pointer to environment struct <dl class="return" compact><dt><b>Returns:</b></dt><dd>the effective length of the buffer as int </dd></dl>

</div>
</div><p>
<a class="anchor" name="gf1863b19d68b64079f88643d1fe08184"></a><!-- doxytag: member="oxs_buffer.h::oxs_buffer_populate" ref="gf1863b19d68b64079f88643d1fe08184" args="(oxs_buffer_t *buffer, const axutil_env_t *env, unsigned char *data, int size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">AXIS2_EXTERN axis2_status_t oxs_buffer_populate           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *&nbsp;</td>
          <td class="paramname"> <em>buffer</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">unsigned char *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>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>
populates the buffer using the  set the  as the useful length  pointer to the OMXMLSec buffer struct  pointer to environment struct  the data for the buffer  the effective length of data <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="gab7b7db8b2ed5aeedf7afb7b8ca98877"></a><!-- doxytag: member="oxs_buffer.h::oxs_buffer_prepend" ref="gab7b7db8b2ed5aeedf7afb7b8ca98877" args="(oxs_buffer_t *buffer, const axutil_env_t *env, unsigned char *data, int size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">AXIS2_EXTERN axis2_status_t oxs_buffer_prepend           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *&nbsp;</td>
          <td class="paramname"> <em>buffer</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">unsigned char *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>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>
Prepends data (to the front of the buffer)  pointer to the OMXMLSec buffer struct  pointer to environment struct  the data for the buffer  the effective length of data <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="g28fa4d555e4512e838546846fad5c764"></a><!-- doxytag: member="oxs_buffer.h::oxs_buffer_read_file" ref="g28fa4d555e4512e838546846fad5c764" args="(oxs_buffer_t *buffer, const axutil_env_t *env, const axis2_char_t *filename)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">AXIS2_EXTERN axis2_status_t oxs_buffer_read_file           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *&nbsp;</td>
          <td class="paramname"> <em>buffer</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">const axis2_char_t *&nbsp;</td>
          <td class="paramname"> <em>filename</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>
Reads a file specified by   pointer to the OMXMLSec buffer struct  pointer to environment struct  The name of the file <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="g4dc926f9132ebff41120c08abd4aa5fd"></a><!-- doxytag: member="oxs_buffer.h::oxs_buffer_remove_head" ref="g4dc926f9132ebff41120c08abd4aa5fd" args="(oxs_buffer_t *buffer, const axutil_env_t *env, int size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">AXIS2_EXTERN axis2_status_t oxs_buffer_remove_head           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *&nbsp;</td>
          <td class="paramname"> <em>buffer</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>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>
Removes the first (size) charcters from the buffer <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>pointer to the OMXMLSec buffer struct </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>size</em>&nbsp;</td><td>number of characters to be removed </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="g648af01b647e90398ac02285a5920fd8"></a><!-- doxytag: member="oxs_buffer.h::oxs_buffer_remove_tail" ref="g648af01b647e90398ac02285a5920fd8" args="(oxs_buffer_t *buffer, const axutil_env_t *env, int size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">AXIS2_EXTERN axis2_status_t oxs_buffer_remove_tail           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *&nbsp;</td>
          <td class="paramname"> <em>buffer</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>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>
Removes the last (size) charcters from the buffer <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>pointer to the OMXMLSec buffer struct </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>size</em>&nbsp;</td><td>number of characters to be removed </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="gae8943d9cacea29e125a5f58bb612ed8"></a><!-- doxytag: member="oxs_buffer.h::oxs_buffer_set_max_size" ref="gae8943d9cacea29e125a5f58bb612ed8" args="(oxs_buffer_t *buffer, const axutil_env_t *env, int size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">AXIS2_EXTERN axis2_status_t oxs_buffer_set_max_size           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *&nbsp;</td>
          <td class="paramname"> <em>buffer</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>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>
Sets the maximum size of the buffer. Usually this will be allocated dynamically  pointer to the OMXMLSec buffer struct  pointer to environment struct  the maximum size of the buffer <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="g2a6799f5cc72ca3066eb377b0a1620b4"></a><!-- doxytag: member="oxs_buffer.h::oxs_buffer_set_size" ref="g2a6799f5cc72ca3066eb377b0a1620b4" args="(oxs_buffer_t *buffer, const axutil_env_t *env, int size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">AXIS2_EXTERN axis2_status_t oxs_buffer_set_size           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__oxs__buffer.html#g0c4b78066ec1762a58cbec685dd60537">oxs_buffer_t</a> *&nbsp;</td>
          <td class="paramname"> <em>buffer</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>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>
Sets the size  pointer to the OMXMLSec buffer struct  pointer to environment struct  the value of the size <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>
