blob: dcbca5cfb5c7d31597f591b2746d011bc0266647 [file] [log] [blame]
<!-- HTML header for doxygen 1.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libapreq2-2.17: include/apreq_module.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="customdoxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0" width="100%">
<tbody>
<tr style="height: 56px;">
<!--
<td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
-->
<!--
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">libapreq2
< !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
</div>
< !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
</td>
-->
<td>
<div id="page-header">
<p class="menu">
<a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
<a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
<a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
</p>
<p class="apache">Apache HTTP Server Request Library - 2.17</p>
<img alt="" src="feather.png" />
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',false,false,'search.php','Search');
});
/* @license-end */</script>
<div id="main-nav"></div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">apreq_module.h File Reference<div class="ingroups"><a class="el" href="group__libapreq2.html">Apache Request Library</a></div></div> </div>
</div><!--header-->
<div class="contents">
<p>Module API.
<a href="#details">More...</a></p>
<div class="textblock"><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 />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for apreq_module.h:</div>
<div class="dyncontent">
<div class="center"><img src="apreq__module_8h__incl.png" border="0" usemap="#ainclude_2apreq__module_8h" alt=""/></div>
<map name="ainclude_2apreq__module_8h" id="ainclude_2apreq__module_8h">
<area shape="rect" title="Module API." alt="" coords="177,5,355,32"/>
<area shape="rect" href="apreq__cookie_8h.html" title="Cookies and Jars." alt="" coords="67,80,188,107"/>
<area shape="rect" href="apreq__parser_8h.html" title="Request body parser API." alt="" coords="344,80,463,107"/>
<area shape="rect" href="apreq__error_8h.html" title="Error status codes." alt="" coords="212,80,320,107"/>
<area shape="rect" href="apreq_8h.html" title="Main header file..." alt="" coords="151,229,221,256"/>
<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr/1.7/apr__time_8h.html.html" title=" " alt="" coords="5,155,97,181"/>
<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr/1.7/apr__tables_8h.html.html" title=" " alt="" coords="79,304,181,331"/>
<area shape="rect" title=" " alt="" coords="206,304,281,331"/>
<area shape="rect" href="apreq__param_8h.html" title="Request parsing and parameter API." alt="" coords="343,155,463,181"/>
<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr-util/1.6/apr__buckets_8h.html.html" title=" " alt="" coords="347,229,459,256"/>
<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr/1.7/apr__errno_8h.html.html" title=" " alt="" coords="223,155,319,181"/>
</map>
</div>
</div><div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="apreq__module_8h__dep__incl.png" border="0" usemap="#ainclude_2apreq__module_8hdep" alt=""/></div>
<map name="ainclude_2apreq__module_8hdep" id="ainclude_2apreq__module_8hdep">
<area shape="rect" title="Module API." alt="" coords="92,5,271,32"/>
<area shape="rect" href="apreq__module__apache_8h_source.html" title=" " alt="" coords="5,80,168,121"/>
<area shape="rect" href="apreq__module__apache2_8h_source.html" title=" " alt="" coords="192,80,363,121"/>
</map>
</div>
</div>
<p><a href="apreq__module_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapreq__module__t.html">apreq_module_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Vtable describing the necessary module functions. <a href="structapreq__module__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a7d6d0550f527e18c8cfab702e65daf3b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a7d6d0550f527e18c8cfab702e65daf3b">APREQ_MODULE</a>(pre, mmn)</td></tr>
<tr class="separator:a7d6d0550f527e18c8cfab702e65daf3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b5398d109fb933fb0367ef947e7c7b6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a5b5398d109fb933fb0367ef947e7c7b6">apreq_cookie</a>(req, name)&#160;&#160;&#160;<a class="el" href="apreq__module_8h.html#a63dfa7b7b303d061fe56c7109528d430">apreq_jar_get</a>(req, name)</td></tr>
<tr class="separator:a5b5398d109fb933fb0367ef947e7c7b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:acc662f2b62f1d13f6c9e03536f565952"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structapreq__handle__t.html">apreq_handle_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#acc662f2b62f1d13f6c9e03536f565952">apreq_handle_t</a></td></tr>
<tr class="separator:acc662f2b62f1d13f6c9e03536f565952"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab584b3f1216e609ba8082d081cfb5659"><td class="memItemLeft" align="right" valign="top"><a id="ab584b3f1216e609ba8082d081cfb5659"></a>
typedef struct <a class="el" href="structapreq__module__t.html">apreq_module_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#ab584b3f1216e609ba8082d081cfb5659">apreq_module_t</a></td></tr>
<tr class="memdesc:ab584b3f1216e609ba8082d081cfb5659"><td class="mdescLeft">&#160;</td><td class="mdescRight">Vtable describing the necessary module functions. <br /></td></tr>
<tr class="separator:ab584b3f1216e609ba8082d081cfb5659"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a08dedd0ec5b291dad6b58644896eb2ed"><td class="memItemLeft" align="right" valign="top">static APR_INLINE unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a08dedd0ec5b291dad6b58644896eb2ed">apreq_module_status_is_error</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> s)</td></tr>
<tr class="separator:a08dedd0ec5b291dad6b58644896eb2ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2652c9a9b0e0f4162051fc3904ac480a"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a2652c9a9b0e0f4162051fc3904ac480a">apreq_jar</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> **t)</td></tr>
<tr class="separator:a2652c9a9b0e0f4162051fc3904ac480a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade74830e449fa5bb24694ffc3b8374ca"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#ade74830e449fa5bb24694ffc3b8374ca">apreq_args</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> **t)</td></tr>
<tr class="separator:ade74830e449fa5bb24694ffc3b8374ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae928689622d094025a8efb8c6c17d680"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#ae928689622d094025a8efb8c6c17d680">apreq_body</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> **t)</td></tr>
<tr class="separator:ae928689622d094025a8efb8c6c17d680"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63dfa7b7b303d061fe56c7109528d430"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a63dfa7b7b303d061fe56c7109528d430">apreq_jar_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const char *name)</td></tr>
<tr class="separator:a63dfa7b7b303d061fe56c7109528d430"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeadd074ee9dd8095d857820ce15f1701"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#aeadd074ee9dd8095d857820ce15f1701">apreq_args_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const char *name)</td></tr>
<tr class="separator:aeadd074ee9dd8095d857820ce15f1701"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c4cb1c2b91f5539b2231d09ebea2239"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a7c4cb1c2b91f5539b2231d09ebea2239">apreq_body_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const char *name)</td></tr>
<tr class="separator:a7c4cb1c2b91f5539b2231d09ebea2239"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a136584883dac2b5c76052bed1c4e61dc"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a136584883dac2b5c76052bed1c4e61dc">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 class="separator:a136584883dac2b5c76052bed1c4e61dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6842f8b5a1d1f9115ba8ff7b1da1e78b"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a6842f8b5a1d1f9115ba8ff7b1da1e78b">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 class="separator:a6842f8b5a1d1f9115ba8ff7b1da1e78b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0c24fc39ad03c54839a9cb03dc00dc28"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a0c24fc39ad03c54839a9cb03dc00dc28">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 class="separator:a0c24fc39ad03c54839a9cb03dc00dc28"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab368191aa61cd0386e824c1a6dbd6e49"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#ab368191aa61cd0386e824c1a6dbd6e49">apreq_brigade_limit_set</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, apr_size_t bytes)</td></tr>
<tr class="separator:ab368191aa61cd0386e824c1a6dbd6e49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad98e3dac181ac837159581812229d8e3"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#ad98e3dac181ac837159581812229d8e3">apreq_brigade_limit_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, apr_size_t *bytes)</td></tr>
<tr class="separator:ad98e3dac181ac837159581812229d8e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a97d4d8090e7847ace598c7a65b309564"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a97d4d8090e7847ace598c7a65b309564">apreq_read_limit_set</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, apr_uint64_t bytes)</td></tr>
<tr class="separator:a97d4d8090e7847ace598c7a65b309564"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5cc462231ee5e4389ceb46eab1e456f"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#ab5cc462231ee5e4389ceb46eab1e456f">apreq_read_limit_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, apr_uint64_t *bytes)</td></tr>
<tr class="separator:ab5cc462231ee5e4389ceb46eab1e456f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afc1b7d33062581140fd16b859b06d24a"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#afc1b7d33062581140fd16b859b06d24a">apreq_temp_dir_set</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const char *path)</td></tr>
<tr class="separator:afc1b7d33062581140fd16b859b06d24a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51c4bd2bc98e9355f8595341ba6aff0b"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a51c4bd2bc98e9355f8595341ba6aff0b">apreq_temp_dir_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const char **path)</td></tr>
<tr class="separator:a51c4bd2bc98e9355f8595341ba6aff0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f9b9c725672298c86b081aaa258fbdc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a3f9b9c725672298c86b081aaa258fbdc">apreq_handle_cgi</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:a3f9b9c725672298c86b081aaa258fbdc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abeaaad6c03b54ca963f9f14a3031e912"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#abeaaad6c03b54ca963f9f14a3031e912">apreq_handle_custom</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">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, apr_uint64_t read_limit, <a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *in)</td></tr>
<tr class="separator:abeaaad6c03b54ca963f9f14a3031e912"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08c59b5f07fb36080bb4d62e68bfeddf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a08c59b5f07fb36080bb4d62e68bfeddf">apreq_param</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const char *key)</td></tr>
<tr class="separator:a08c59b5f07fb36080bb4d62e68bfeddf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0dff48fd4e83399a07853abe9d67c251"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a0dff48fd4e83399a07853abe9d67c251">apreq_params</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *p)</td></tr>
<tr class="separator:a0dff48fd4e83399a07853abe9d67c251"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7435376b1f543c604d8326de3157e075"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a7435376b1f543c604d8326de3157e075">apreq_cookies</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *p)</td></tr>
<tr class="separator:a7435376b1f543c604d8326de3157e075"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Module API. </p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a5b5398d109fb933fb0367ef947e7c7b6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5b5398d109fb933fb0367ef947e7c7b6">&#9670;&nbsp;</a></span>apreq_cookie</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define apreq_cookie</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">req, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">name&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;<a class="el" href="apreq__module_8h.html#a63dfa7b7b303d061fe56c7109528d430">apreq_jar_get</a>(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 class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>request handle. </td></tr>
<tr><td class="paramname">name</td><td>desired cookie name</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The first matching cookie or NULL. </dd></dl>
</div>
</div>
<a id="a7d6d0550f527e18c8cfab702e65daf3b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7d6d0550f527e18c8cfab702e65daf3b">&#9670;&nbsp;</a></span>APREQ_MODULE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define APREQ_MODULE</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">pre, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">mmn&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"> <span class="keyword">const</span> apreq_module_t \</div>
<div class="line"> pre##_module = { #pre, mmn, \</div>
<div class="line"> pre##_jar, pre##_args, pre##_body, \</div>
<div class="line"> pre##_jar_get, pre##_args_get, pre##_body_get, \</div>
<div class="line"> pre##_parser_get, pre##_parser_set, pre##_hook_add, \</div>
<div class="line"> pre##_brigade_limit_get, pre##_brigade_limit_set, \</div>
<div class="line"> pre##_read_limit_get, pre##_read_limit_set, \</div>
<div class="line"> pre##_temp_dir_get, pre##_temp_dir_set, \</div>
<div class="line"> }</div>
</div><!-- fragment --><p>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 class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pre</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 class="paramname">mmn</td><td>Magic number (i.e. version number) of this module. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="acc662f2b62f1d13f6c9e03536f565952"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acc662f2b62f1d13f6c9e03536f565952">&#9670;&nbsp;</a></span>apreq_handle_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef struct <a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> <a class="el" href="structapreq__handle__t.html">apreq_handle_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>An apreq handle associated with a module. The structure may have variable size, because the module may append its own data structures after it. </p>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="ade74830e449fa5bb24694ffc3b8374ca"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ade74830e449fa5bb24694ffc3b8374ca">&#9670;&nbsp;</a></span>apreq_args()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_args </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
<td class="paramname"><em>req</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> **&#160;</td>
<td class="paramname"><em>t</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Expose the parsed "query string" associated to this handle.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>The request handle </td></tr>
<tr><td class="paramname">t</td><td>The resulting table, which will either be NULL or a valid table object on return.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or a module-specific error status code. </dd></dl>
</div>
</div>
<a id="aeadd074ee9dd8095d857820ce15f1701"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeadd074ee9dd8095d857820ce15f1701">&#9670;&nbsp;</a></span>apreq_args_get()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<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> *&#160;</td>
<td class="paramname"><em>req</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Fetch the first query string param with the given name.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>The request handle </td></tr>
<tr><td class="paramname">name</td><td>Case-insensitive param name.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>First matching param, or NULL if none match. </dd></dl>
</div>
</div>
<a id="ae928689622d094025a8efb8c6c17d680"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae928689622d094025a8efb8c6c17d680">&#9670;&nbsp;</a></span>apreq_body()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_body </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
<td class="paramname"><em>req</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> **&#160;</td>
<td class="paramname"><em>t</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Expose the parsed "request body" associated to this handle.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>The request handle </td></tr>
<tr><td class="paramname">t</td><td>The resulting table, which will either be NULL or a valid table object on return.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or a module-specific error status code. </dd></dl>
</div>
</div>
<a id="a7c4cb1c2b91f5539b2231d09ebea2239"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7c4cb1c2b91f5539b2231d09ebea2239">&#9670;&nbsp;</a></span>apreq_body_get()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<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> *&#160;</td>
<td class="paramname"><em>req</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Fetch the first body param with the given name.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>The request handle </td></tr>
<tr><td class="paramname">name</td><td>Case-insensitive cookie name.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>First matching param, or NULL if none match. </dd></dl>
</div>
</div>
<a id="ad98e3dac181ac837159581812229d8e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad98e3dac181ac837159581812229d8e3">&#9670;&nbsp;</a></span>apreq_brigade_limit_get()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">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> *&#160;</td>
<td class="paramname"><em>req</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">apr_size_t *&#160;</td>
<td class="paramname"><em>bytes</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the active brigade limit.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>The handle. </td></tr>
<tr><td class="paramname">bytes</td><td>Pointer to resulting (current) limit.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or a module-specific error, which may leave bytes undefined. </dd></dl>
</div>
</div>
<a id="ab368191aa61cd0386e824c1a6dbd6e49"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab368191aa61cd0386e824c1a6dbd6e49">&#9670;&nbsp;</a></span>apreq_brigade_limit_set()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">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> *&#160;</td>
<td class="paramname"><em>req</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">apr_size_t&#160;</td>
<td class="paramname"><em>bytes</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the active brigade limit.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>The handle. </td></tr>
<tr><td class="paramname">bytes</td><td>New limit to use.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or module-specific error. </dd></dl>
</div>
</div>
<a id="a7435376b1f543c604d8326de3157e075"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7435376b1f543c604d8326de3157e075">&#9670;&nbsp;</a></span>apreq_cookies()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a>* apreq_cookies </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
<td class="paramname"><em>req</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
<td class="paramname"><em>p</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a table containing all request cookies.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>the apreq request handle </td></tr>
<tr><td class="paramname">p</td><td>Allocates the returned table. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a3f9b9c725672298c86b081aaa258fbdc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3f9b9c725672298c86b081aaa258fbdc">&#9670;&nbsp;</a></span>apreq_handle_cgi()</h2>
<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" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
<td class="paramname"><em>pool</em></td><td>)</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 class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pool</td><td>Pool associated to this handle.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>New handle; can only be NULL if the pool allocation failed.</dd></dl>
<dl class="section remark"><dt>Remarks</dt><dd>The handle gets cached in the pool's userdata, so subsequent calls will retrieve the original cached handle. </dd></dl>
</div>
</div>
<a id="abeaaad6c03b54ca963f9f14a3031e912"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abeaaad6c03b54ca963f9f14a3031e912">&#9670;&nbsp;</a></span>apreq_handle_custom()</h2>
<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" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
<td class="paramname"><em>pool</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>query_string</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</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> *&#160;</td>
<td class="paramname"><em>parser</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">apr_uint64_t&#160;</td>
<td class="paramname"><em>read_limit</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *&#160;</td>
<td class="paramname"><em>in</em>&#160;</td>
</tr>
<tr>
<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" href="http://apr.apache.org/docs/apr-util/1.6/namespace_apache.html">Apache</a> 2 nor CGI).</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pool</td><td>allocates the parse data, </td></tr>
<tr><td class="paramname">query_string</td><td>parsed into args table </td></tr>
<tr><td class="paramname">cookie</td><td>value of the request "Cookie" header </td></tr>
<tr><td class="paramname">parser</td><td>parses the request body </td></tr>
<tr><td class="paramname">read_limit</td><td>maximum bytes to read from the body </td></tr>
<tr><td class="paramname">in</td><td>brigade containing the request body</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>new handle; can only be NULL if the pool allocation failed. </dd></dl>
</div>
</div>
<a id="a0c24fc39ad03c54839a9cb03dc00dc28"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0c24fc39ad03c54839a9cb03dc00dc28">&#9670;&nbsp;</a></span>apreq_hook_add()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">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> *&#160;</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> *&#160;</td>
<td class="paramname"><em>hook</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add a parser hook for this request.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>The request handle </td></tr>
<tr><td class="paramname">hook</td><td>Hook to add.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or module-specific error. </dd></dl>
</div>
</div>
<a id="a2652c9a9b0e0f4162051fc3904ac480a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2652c9a9b0e0f4162051fc3904ac480a">&#9670;&nbsp;</a></span>apreq_jar()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_jar </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
<td class="paramname"><em>req</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> **&#160;</td>
<td class="paramname"><em>t</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Expose the parsed "cookie" header associated to this handle.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>The request handle </td></tr>
<tr><td class="paramname">t</td><td>The resulting table, which will either be NULL or a valid table object on return.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or a module-specific error status code. </dd></dl>
</div>
</div>
<a id="a63dfa7b7b303d061fe56c7109528d430"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a63dfa7b7b303d061fe56c7109528d430">&#9670;&nbsp;</a></span>apreq_jar_get()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<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> *&#160;</td>
<td class="paramname"><em>req</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Fetch the first cookie with the given name.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>The request handle </td></tr>
<tr><td class="paramname">name</td><td>Case-insensitive cookie name.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>First matching cookie, or NULL if none match. </dd></dl>
</div>
</div>
<a id="a08dedd0ec5b291dad6b58644896eb2ed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a08dedd0ec5b291dad6b58644896eb2ed">&#9670;&nbsp;</a></span>apreq_module_status_is_error()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<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" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td>
<td class="paramname"><em>s</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Defines the module-specific status codes which are commonly considered to be non-fatal.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">s</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>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if s is fatal, 0 otherwise. </dd></dl>
</div>
</div>
<a id="a08c59b5f07fb36080bb4d62e68bfeddf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a08c59b5f07fb36080bb4d62e68bfeddf">&#9670;&nbsp;</a></span>apreq_param()</h2>
<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> *&#160;</td>
<td class="paramname"><em>req</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>key</em>&#160;</td>
</tr>
<tr>
<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 class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>request handle. </td></tr>
<tr><td class="paramname">key</td><td>desired parameter name</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The first matching parameter (with args searched first) or NULL. </dd></dl>
</div>
</div>
<a id="a0dff48fd4e83399a07853abe9d67c251"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0dff48fd4e83399a07853abe9d67c251">&#9670;&nbsp;</a></span>apreq_params()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a>* apreq_params </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
<td class="paramname"><em>req</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
<td class="paramname"><em>p</em>&#160;</td>
</tr>
<tr>
<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 class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>request handle </td></tr>
<tr><td class="paramname">p</td><td>allocates the returned table.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>table representing all available params; is never NULL. </dd></dl>
</div>
</div>
<a id="a136584883dac2b5c76052bed1c4e61dc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a136584883dac2b5c76052bed1c4e61dc">&#9670;&nbsp;</a></span>apreq_parser_get()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">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> *&#160;</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> **&#160;</td>
<td class="paramname"><em>parser</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Fetch the active body parser.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>The request handle </td></tr>
<tr><td class="paramname">parser</td><td>Points to the active parser on return.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or module-specific error. </dd></dl>
</div>
</div>
<a id="a6842f8b5a1d1f9115ba8ff7b1da1e78b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6842f8b5a1d1f9115ba8ff7b1da1e78b">&#9670;&nbsp;</a></span>apreq_parser_set()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">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> *&#160;</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> *&#160;</td>
<td class="paramname"><em>parser</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the body parser for this request.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>The request handle </td></tr>
<tr><td class="paramname">parser</td><td>New parser to use.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or module-specific error. </dd></dl>
</div>
</div>
<a id="ab5cc462231ee5e4389ceb46eab1e456f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab5cc462231ee5e4389ceb46eab1e456f">&#9670;&nbsp;</a></span>apreq_read_limit_get()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">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> *&#160;</td>
<td class="paramname"><em>req</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">apr_uint64_t *&#160;</td>
<td class="paramname"><em>bytes</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the active read limit.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>The request handle. </td></tr>
<tr><td class="paramname">bytes</td><td>Pointer to resulting (current) limit.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or a module-specific error, which may leave bytes undefined. </dd></dl>
</div>
</div>
<a id="a97d4d8090e7847ace598c7a65b309564"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a97d4d8090e7847ace598c7a65b309564">&#9670;&nbsp;</a></span>apreq_read_limit_set()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">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> *&#160;</td>
<td class="paramname"><em>req</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">apr_uint64_t&#160;</td>
<td class="paramname"><em>bytes</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the active read limit.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>The handle. </td></tr>
<tr><td class="paramname">bytes</td><td>New limit to use.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or a module-specific error. </dd></dl>
</div>
</div>
<a id="a51c4bd2bc98e9355f8595341ba6aff0b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a51c4bd2bc98e9355f8595341ba6aff0b">&#9670;&nbsp;</a></span>apreq_temp_dir_get()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">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> *&#160;</td>
<td class="paramname"><em>req</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char **&#160;</td>
<td class="paramname"><em>path</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the active temp directory.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>The handle. </td></tr>
<tr><td class="paramname">path</td><td>Resulting path to temp dir.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</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>
<a id="afc1b7d33062581140fd16b859b06d24a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afc1b7d33062581140fd16b859b06d24a">&#9670;&nbsp;</a></span>apreq_temp_dir_set()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">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> *&#160;</td>
<td class="paramname"><em>req</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>path</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the active temp directory.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">req</td><td>The handle. </td></tr>
<tr><td class="paramname">path</td><td>New path to use; may be NULL.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or a module-specific error . </dd></dl>
</div>
</div>
</div><!-- contents -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<hr class="footer"/>
<table class="footer">
<td>
<address class="footer_left"><small>
Copyright &copy; 2003-2022 <a href="https://www.apache.org">The Apache Software Foundation</a>.<br/>
See <a href="apreq_license.html">LICENSE</a>.
</small></address>
</td>
<td>
<address class="footer"><small>
Generated on Sat Sep 3 2022 17:23:06 for libapreq2 by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</td>
</table>
</body>
</html>