Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 4921009d9713f60c8e40a1553c853d51 > files > 27

libapreq2-devel-2.13-1.fc14.x86_64.rpm

<html>
<head>
  <link rel="stylesheet" type="text/css" href="dox.css" />
  <title>libapreq2-2.13: libapreq2: include/apreq_module.h File Reference</title> 
</head>
<body>
<div id="page-header">
<p class="menu">
   <a href="http://www.apache.org/">Apache Software Foundation</a> &gt; <a href="http://httpd.apache.org">HTTP Server Project</a> &gt;
<a href="http://httpd.apache.org/apreq/">Request Library Subproject</a></p>
<p class="apache">Apache HTTP Server Request Library</p>
<img alt="" src="feather.gif" /></div>
<!-- Generated by Doxygen 1.5.6 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>include/apreq_module.h File Reference</h1>Module API. <a href="#_details">More...</a>
<p>
<code>#include &quot;<a class="el" href="apreq__cookie_8h-source.html">apreq_cookie.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="apreq__parser_8h-source.html">apreq_parser.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="apreq__error_8h-source.html">apreq_error.h</a>&quot;</code><br>

<p>
<a href="apreq__module_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>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="structapreq__handle__t.html">apreq_handle_t</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapreq__module__t.html">apreq_module_t</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vtable describing the necessary module functions.  <a href="structapreq__module__t.html#_details">More...</a><br></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="apreq__module_8h.html#7d6d0550f527e18c8cfab702e65daf3b">APREQ_MODULE</a>(pre, mmn)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#5b5398d109fb933fb0367ef947e7c7b6">apreq_cookie</a>(req, name)&nbsp;&nbsp;&nbsp;apreq_jar_get(req, name)</td></tr>

<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static APR_INLINE unsigned&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#08dedd0ec5b291dad6b58644896eb2ed">apreq_module_status_is_error</a> (<a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> s)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#2652c9a9b0e0f4162051fc3904ac480a">apreq_jar</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__tables.html#gd7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> **t)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#de74830e449fa5bb24694ffc3b8374ca">apreq_args</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__tables.html#gd7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> **t)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#e928689622d094025a8efb8c6c17d680">apreq_body</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__tables.html#gd7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> **t)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static APR_INLINE <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#63dfa7b7b303d061fe56c7109528d430">apreq_jar_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const char *name)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static APR_INLINE <a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#eadd074ee9dd8095d857820ce15f1701">apreq_args_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const char *name)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static APR_INLINE <a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#7c4cb1c2b91f5539b2231d09ebea2239">apreq_body_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const char *name)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#136584883dac2b5c76052bed1c4e61dc">apreq_parser_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const <a class="el" href="structapreq__parser__t.html">apreq_parser_t</a> **parser)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#6842f8b5a1d1f9115ba8ff7b1da1e78b">apreq_parser_set</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <a class="el" href="structapreq__parser__t.html">apreq_parser_t</a> *parser)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#0c24fc39ad03c54839a9cb03dc00dc28">apreq_hook_add</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <a class="el" href="structapreq__hook__t.html">apreq_hook_t</a> *hook)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#b368191aa61cd0386e824c1a6dbd6e49">apreq_brigade_limit_set</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__platform.html#gaa72b2253f6f3032cefea5712a27540e">apr_size_t</a> bytes)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#d98e3dac181ac837159581812229d8e3">apreq_brigade_limit_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__platform.html#gaa72b2253f6f3032cefea5712a27540e">apr_size_t</a> *bytes)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#97d4d8090e7847ace598c7a65b309564">apreq_read_limit_set</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__platform.html#g1a3eadd69cfefe46e764bd7e4ff0d9ee">apr_uint64_t</a> bytes)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#b5cc462231ee5e4389ceb46eab1e456f">apreq_read_limit_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__platform.html#g1a3eadd69cfefe46e764bd7e4ff0d9ee">apr_uint64_t</a> *bytes)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#fc1b7d33062581140fd16b859b06d24a">apreq_temp_dir_set</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const char *path)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#51c4bd2bc98e9355f8595341ba6aff0b">apreq_temp_dir_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const char **path)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#3f9b9c725672298c86b081aaa258fbdc">apreq_handle_cgi</a> (<a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#beaaad6c03b54ca963f9f14a3031e912">apreq_handle_custom</a> (<a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, const char *query_string, const char *cookie, <a class="el" href="structapreq__parser__t.html">apreq_parser_t</a> *parser, <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__platform.html#g1a3eadd69cfefe46e764bd7e4ff0d9ee">apr_uint64_t</a> read_limit, <a class="elRef" doxygen="apu.tag:http://apr.apache.org/docs/apr-util/1.3/" href="http://apr.apache.org/docs/apr-util/1.3/structapr__bucket__brigade.html">apr_bucket_brigade</a> *in)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#08c59b5f07fb36080bb4d62e68bfeddf">apreq_param</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const char *key)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__tables.html#gd7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#0dff48fd4e83399a07853abe9d67c251">apreq_params</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *p)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__tables.html#gd7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#7435376b1f543c604d8326de3157e075">apreq_cookies</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *p)</td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Module API. 
<p>
<hr><h2>Define Documentation</h2>
<a class="anchor" name="5b5398d109fb933fb0367ef947e7c7b6"></a><!-- doxytag: member="apreq_module.h::apreq_cookie" ref="5b5398d109fb933fb0367ef947e7c7b6" args="(req, name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define apreq_cookie          </td>
          <td>(</td>
          <td class="paramtype">req,         <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">name&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>&nbsp;&nbsp;&nbsp;apreq_jar_get(req, name)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Find the first cookie with the specified name. The match is case-insensitive.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>request handle. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>desired cookie name</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The first matching cookie or NULL. </dd></dl>

</div>
</div><p>
<a class="anchor" name="7d6d0550f527e18c8cfab702e65daf3b"></a><!-- doxytag: member="apreq_module.h::APREQ_MODULE" ref="7d6d0550f527e18c8cfab702e65daf3b" args="(pre, mmn)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define APREQ_MODULE          </td>
          <td>(</td>
          <td class="paramtype">pre,         <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">mmn&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><span class="keyword">const</span> <a class="code" href="structapreq__module__t.html" title="Vtable describing the necessary module functions.">apreq_module_t</a>     \
  pre##_module = { #pre, mmn,                           \
  pre##_jar,        pre##_args,       pre##_body,       \
  pre##_jar_get,    pre##_args_get,   pre##_body_get,   \
  pre##_parser_get, pre##_parser_set, pre##_hook_add,   \
  pre##_brigade_limit_get, pre##_brigade_limit_set,     \
  pre##_read_limit_get,    pre##_read_limit_set,        \
  pre##_temp_dir_get,      pre##_temp_dir_set,          \
  }
</pre></div>Convenience macro for defining a module by mapping a function prefix to an associated <a class="el" href="structapreq__module__t.html" title="Vtable describing the necessary module functions.">apreq_module_t</a> structure.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pre</em>&nbsp;</td><td>Prefix to define new module. All attributes of the <a class="el" href="structapreq__module__t.html" title="Vtable describing the necessary module functions.">apreq_module_t</a> struct are defined with this as their prefix. The generated struct is named by appending "_module" to the prefix. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mmn</em>&nbsp;</td><td>Magic number (i.e. version number) of this module. </td></tr>
  </table>
</dl>

</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="de74830e449fa5bb24694ffc3b8374ca"></a><!-- doxytag: member="apreq_module.h::apreq_args" ref="de74830e449fa5bb24694ffc3b8374ca" args="(apreq_handle_t *req, const apr_table_t **t)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_args           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__tables.html#gd7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> **&nbsp;</td>
          <td class="paramname"> <em>t</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Expose the parsed "query string" associated to this handle.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>The request handle </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>t</em>&nbsp;</td><td>The resulting table, which will either be NULL or a valid table object on return.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>APR_SUCCESS or a module-specific error status code. </dd></dl>

</div>
</div><p>
<a class="anchor" name="eadd074ee9dd8095d857820ce15f1701"></a><!-- doxytag: member="apreq_module.h::apreq_args_get" ref="eadd074ee9dd8095d857820ce15f1701" args="(apreq_handle_t *req, const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static APR_INLINE <a class="el" href="structapreq__param__t.html">apreq_param_t</a>* apreq_args_get           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fetch the first query string param with the given name.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>The request handle </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>Case-insensitive param name.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>First matching param, or NULL if none match. </dd></dl>

</div>
</div><p>
<a class="anchor" name="e928689622d094025a8efb8c6c17d680"></a><!-- doxytag: member="apreq_module.h::apreq_body" ref="e928689622d094025a8efb8c6c17d680" args="(apreq_handle_t *req, const apr_table_t **t)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_body           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__tables.html#gd7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> **&nbsp;</td>
          <td class="paramname"> <em>t</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Expose the parsed "request body" associated to this handle.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>The request handle </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>t</em>&nbsp;</td><td>The resulting table, which will either be NULL or a valid table object on return.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>APR_SUCCESS or a module-specific error status code. </dd></dl>

</div>
</div><p>
<a class="anchor" name="7c4cb1c2b91f5539b2231d09ebea2239"></a><!-- doxytag: member="apreq_module.h::apreq_body_get" ref="7c4cb1c2b91f5539b2231d09ebea2239" args="(apreq_handle_t *req, const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static APR_INLINE <a class="el" href="structapreq__param__t.html">apreq_param_t</a>* apreq_body_get           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fetch the first body param with the given name.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>The request handle </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>Case-insensitive cookie name.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>First matching param, or NULL if none match. </dd></dl>

</div>
</div><p>
<a class="anchor" name="d98e3dac181ac837159581812229d8e3"></a><!-- doxytag: member="apreq_module.h::apreq_brigade_limit_get" ref="d98e3dac181ac837159581812229d8e3" args="(apreq_handle_t *req, apr_size_t *bytes)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_brigade_limit_get           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__platform.html#gaa72b2253f6f3032cefea5712a27540e">apr_size_t</a> *&nbsp;</td>
          <td class="paramname"> <em>bytes</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the active brigade limit.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>The handle. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>bytes</em>&nbsp;</td><td>Pointer to resulting (current) limit.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>APR_SUCCESS or a module-specific error, which may leave bytes undefined. </dd></dl>

</div>
</div><p>
<a class="anchor" name="b368191aa61cd0386e824c1a6dbd6e49"></a><!-- doxytag: member="apreq_module.h::apreq_brigade_limit_set" ref="b368191aa61cd0386e824c1a6dbd6e49" args="(apreq_handle_t *req, apr_size_t bytes)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_brigade_limit_set           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__platform.html#gaa72b2253f6f3032cefea5712a27540e">apr_size_t</a>&nbsp;</td>
          <td class="paramname"> <em>bytes</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set the active brigade limit.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>The handle. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>bytes</em>&nbsp;</td><td>New limit to use.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>APR_SUCCESS or module-specific error. </dd></dl>

</div>
</div><p>
<a class="anchor" name="7435376b1f543c604d8326de3157e075"></a><!-- doxytag: member="apreq_module.h::apreq_cookies" ref="7435376b1f543c604d8326de3157e075" args="(apreq_handle_t *req, apr_pool_t *p)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__tables.html#gd7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a>* apreq_cookies           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&nbsp;</td>
          <td class="paramname"> <em>p</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns a table containing all request cookies.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>the apreq request handle </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>Allocates the returned table. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="3f9b9c725672298c86b081aaa258fbdc"></a><!-- doxytag: member="apreq_module.h::apreq_handle_cgi" ref="3f9b9c725672298c86b081aaa258fbdc" args="(apr_pool_t *pool)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a>* apreq_handle_cgi           </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&nbsp;</td>
          <td class="paramname"> <em>pool</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Create an apreq handle which is suitable for a CGI program. It reads input from stdin and writes output to stdout.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>Pool associated to this handle.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>New handle; can only be NULL if the pool allocation failed.</dd></dl>
<dl class="remark" compact><dt><b>Remarks:</b></dt><dd>The handle gets cached in the pool's userdata, so subsequent calls will retrieve the original cached handle. </dd></dl>

</div>
</div><p>
<a class="anchor" name="beaaad6c03b54ca963f9f14a3031e912"></a><!-- doxytag: member="apreq_module.h::apreq_handle_custom" ref="beaaad6c03b54ca963f9f14a3031e912" args="(apr_pool_t *pool, const char *query_string, const char *cookie, apreq_parser_t *parser, apr_uint64_t read_limit, apr_bucket_brigade *in)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a>* apreq_handle_custom           </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&nbsp;</td>
          <td class="paramname"> <em>pool</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>query_string</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>cookie</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structapreq__parser__t.html">apreq_parser_t</a> *&nbsp;</td>
          <td class="paramname"> <em>parser</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__platform.html#g1a3eadd69cfefe46e764bd7e4ff0d9ee">apr_uint64_t</a>&nbsp;</td>
          <td class="paramname"> <em>read_limit</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="apu.tag:http://apr.apache.org/docs/apr-util/1.3/" href="http://apr.apache.org/docs/apr-util/1.3/structapr__bucket__brigade.html">apr_bucket_brigade</a> *&nbsp;</td>
          <td class="paramname"> <em>in</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Create a custom apreq handle which knows only some static values. Useful if you want to test the parser code or if you have got data from a custom source (neither <a class="elRef" doxygen="apu.tag:http://apr.apache.org/docs/apr-util/1.3/" href="http://apr.apache.org/docs/apr-util/1.3/namespace_apache.html">Apache</a> 2 nor CGI).<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>allocates the parse data, </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>query_string</em>&nbsp;</td><td>parsed into args table </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>cookie</em>&nbsp;</td><td>value of the request "Cookie" header </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>parser</em>&nbsp;</td><td>parses the request body </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>read_limit</em>&nbsp;</td><td>maximum bytes to read from the body </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>in</em>&nbsp;</td><td>brigade containing the request body</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>new handle; can only be NULL if the pool allocation failed. </dd></dl>

</div>
</div><p>
<a class="anchor" name="0c24fc39ad03c54839a9cb03dc00dc28"></a><!-- doxytag: member="apreq_module.h::apreq_hook_add" ref="0c24fc39ad03c54839a9cb03dc00dc28" args="(apreq_handle_t *req, apreq_hook_t *hook)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_hook_add           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structapreq__hook__t.html">apreq_hook_t</a> *&nbsp;</td>
          <td class="paramname"> <em>hook</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Add a parser hook for this request.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>The request handle </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>hook</em>&nbsp;</td><td>Hook to add.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>APR_SUCCESS or module-specific error. </dd></dl>

</div>
</div><p>
<a class="anchor" name="2652c9a9b0e0f4162051fc3904ac480a"></a><!-- doxytag: member="apreq_module.h::apreq_jar" ref="2652c9a9b0e0f4162051fc3904ac480a" args="(apreq_handle_t *req, const apr_table_t **t)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_jar           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__tables.html#gd7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> **&nbsp;</td>
          <td class="paramname"> <em>t</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Expose the parsed "cookie" header associated to this handle.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>The request handle </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>t</em>&nbsp;</td><td>The resulting table, which will either be NULL or a valid table object on return.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>APR_SUCCESS or a module-specific error status code. </dd></dl>

</div>
</div><p>
<a class="anchor" name="63dfa7b7b303d061fe56c7109528d430"></a><!-- doxytag: member="apreq_module.h::apreq_jar_get" ref="63dfa7b7b303d061fe56c7109528d430" args="(apreq_handle_t *req, const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static APR_INLINE <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a>* apreq_jar_get           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fetch the first cookie with the given name.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>The request handle </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>Case-insensitive cookie name.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>First matching cookie, or NULL if none match. </dd></dl>

</div>
</div><p>
<a class="anchor" name="08dedd0ec5b291dad6b58644896eb2ed"></a><!-- doxytag: member="apreq_module.h::apreq_module_status_is_error" ref="08dedd0ec5b291dad6b58644896eb2ed" args="(apr_status_t s)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static APR_INLINE unsigned apreq_module_status_is_error           </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&nbsp;</td>
          <td class="paramname"> <em>s</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Defines the module-specific status codes which are commonly considered to be non-fatal.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>status code returned by an <a class="el" href="structapreq__module__t.html" title="Vtable describing the necessary module functions.">apreq_module_t</a> method.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 if s is fatal, 0 otherwise. </dd></dl>

</div>
</div><p>
<a class="anchor" name="08c59b5f07fb36080bb4d62e68bfeddf"></a><!-- doxytag: member="apreq_module.h::apreq_param" ref="08c59b5f07fb36080bb4d62e68bfeddf" args="(apreq_handle_t *req, const char *key)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structapreq__param__t.html">apreq_param_t</a>* apreq_param           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>key</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Find the first query string parameter or body parameter with the specified name. The match is case-insensitive.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>request handle. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>desired parameter name</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The first matching parameter (with args searched first) or NULL. </dd></dl>

</div>
</div><p>
<a class="anchor" name="0dff48fd4e83399a07853abe9d67c251"></a><!-- doxytag: member="apreq_module.h::apreq_params" ref="0dff48fd4e83399a07853abe9d67c251" args="(apreq_handle_t *req, apr_pool_t *p)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__tables.html#gd7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a>* apreq_params           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&nbsp;</td>
          <td class="paramname"> <em>p</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns a table containing key-value pairs for the full request (args + body).<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>request handle </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>allocates the returned table.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>table representing all available params; is never NULL. </dd></dl>

</div>
</div><p>
<a class="anchor" name="136584883dac2b5c76052bed1c4e61dc"></a><!-- doxytag: member="apreq_module.h::apreq_parser_get" ref="136584883dac2b5c76052bed1c4e61dc" args="(apreq_handle_t *req, const apreq_parser_t **parser)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_parser_get           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structapreq__parser__t.html">apreq_parser_t</a> **&nbsp;</td>
          <td class="paramname"> <em>parser</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fetch the active body parser.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>The request handle </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>parser</em>&nbsp;</td><td>Points to the active parser on return.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>APR_SUCCESS or module-specific error. </dd></dl>

</div>
</div><p>
<a class="anchor" name="6842f8b5a1d1f9115ba8ff7b1da1e78b"></a><!-- doxytag: member="apreq_module.h::apreq_parser_set" ref="6842f8b5a1d1f9115ba8ff7b1da1e78b" args="(apreq_handle_t *req, apreq_parser_t *parser)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_parser_set           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structapreq__parser__t.html">apreq_parser_t</a> *&nbsp;</td>
          <td class="paramname"> <em>parser</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set the body parser for this request.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>The request handle </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>parser</em>&nbsp;</td><td>New parser to use.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>APR_SUCCESS or module-specific error. </dd></dl>

</div>
</div><p>
<a class="anchor" name="b5cc462231ee5e4389ceb46eab1e456f"></a><!-- doxytag: member="apreq_module.h::apreq_read_limit_get" ref="b5cc462231ee5e4389ceb46eab1e456f" args="(apreq_handle_t *req, apr_uint64_t *bytes)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_read_limit_get           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__platform.html#g1a3eadd69cfefe46e764bd7e4ff0d9ee">apr_uint64_t</a> *&nbsp;</td>
          <td class="paramname"> <em>bytes</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the active read limit.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>The request handle. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>bytes</em>&nbsp;</td><td>Pointer to resulting (current) limit.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>APR_SUCCESS or a module-specific error, which may leave bytes undefined. </dd></dl>

</div>
</div><p>
<a class="anchor" name="97d4d8090e7847ace598c7a65b309564"></a><!-- doxytag: member="apreq_module.h::apreq_read_limit_set" ref="97d4d8090e7847ace598c7a65b309564" args="(apreq_handle_t *req, apr_uint64_t bytes)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_read_limit_set           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__platform.html#g1a3eadd69cfefe46e764bd7e4ff0d9ee">apr_uint64_t</a>&nbsp;</td>
          <td class="paramname"> <em>bytes</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set the active read limit.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>The handle. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>bytes</em>&nbsp;</td><td>New limit to use.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>APR_SUCCESS or a module-specific error. </dd></dl>

</div>
</div><p>
<a class="anchor" name="51c4bd2bc98e9355f8595341ba6aff0b"></a><!-- doxytag: member="apreq_module.h::apreq_temp_dir_get" ref="51c4bd2bc98e9355f8595341ba6aff0b" args="(apreq_handle_t *req, const char **path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_temp_dir_get           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char **&nbsp;</td>
          <td class="paramname"> <em>path</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the active temp directory.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>The handle. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>Resulting path to temp dir.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>APR_SUCCESS implies path is valid, but may also be NULL. Any other return value is module-specific, and may leave path undefined. </dd></dl>

</div>
</div><p>
<a class="anchor" name="fc1b7d33062581140fd16b859b06d24a"></a><!-- doxytag: member="apreq_module.h::apreq_temp_dir_set" ref="fc1b7d33062581140fd16b859b06d24a" args="(apreq_handle_t *req, const char *path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static APR_INLINE <a class="elRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/1.3/" href="http://apr.apache.org/docs/apr/1.3/group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_temp_dir_set           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&nbsp;</td>
          <td class="paramname"> <em>req</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>path</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set the active temp directory.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>req</em>&nbsp;</td><td>The handle. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>New path to use; may be NULL.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>APR_SUCCESS or a module-specific error . </dd></dl>

</div>
</div><p>
</div>
<div id="footer">
<p class="apache">
Copyright &copy; 2003-2006 <a href="http://www.apache.org">The Apache Software Foundation</a>.<br/>
See <a href="apreq_license.html">LICENSE</a>.</p>
<p class="menu">
<span style="color:#aaa">page generated by <a href="http://www.doxygen.org/"><code>doxygen</code></a>
version 1.5.6 on 25 Nov 2010</span>
</p>
</div>
</body>
</html>