blob: ad7c7fb6078fc9cde377182c6f4a34bd69f58bfb [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_cookie.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_cookie.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>Cookies and Jars.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="apreq_8h_source.html">apreq.h</a>&quot;</code><br />
<code>#include &quot;<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/apr__time_8h.html">apr_time.h</a>&quot;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for apreq_cookie.h:</div>
<div class="dyncontent">
<div class="center"><img src="apreq__cookie_8h__incl.png" border="0" usemap="#ainclude_2apreq__cookie_8h" alt=""/></div>
<map name="ainclude_2apreq__cookie_8h" id="ainclude_2apreq__cookie_8h">
<area shape="rect" title="Cookies and Jars." alt="" coords="79,5,251,32"/>
<area shape="rect" href="apreq_8h.html" title="Main header file..." alt="" coords="77,80,148,107"/>
<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr/1.7/apr__time_8h.html.html" title=" " alt="" coords="172,80,264,107"/>
<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr/1.7/apr__tables_8h.html.html" title=" " alt="" coords="5,155,108,181"/>
<area shape="rect" title=" " alt="" coords="133,155,207,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__cookie_8h__dep__incl.png" border="0" usemap="#ainclude_2apreq__cookie_8hdep" alt=""/></div>
<map name="ainclude_2apreq__cookie_8hdep" id="ainclude_2apreq__cookie_8hdep">
<area shape="rect" title="Cookies and Jars." alt="" coords="95,5,267,32"/>
<area shape="rect" href="apreq__module_8h.html" title="Module API." alt="" coords="92,80,271,107"/>
<area shape="rect" href="apreq__module__apache_8h_source.html" title=" " alt="" coords="5,155,168,196"/>
<area shape="rect" href="apreq__module__apache2_8h_source.html" title=" " alt="" coords="192,155,363,196"/>
</map>
</div>
</div>
<p><a href="apreq__cookie_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__cookie__t.html">apreq_cookie_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cookie type, supporting both Netscape and RFC cookie specifications. <a href="structapreq__cookie__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:a681b8ef60cad05e684876d4dd2be043b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a681b8ef60cad05e684876d4dd2be043b">APREQ_COOKIE_MAX_LENGTH</a>&#160;&#160;&#160;4096</td></tr>
<tr class="separator:a681b8ef60cad05e684876d4dd2be043b"><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:a40b9ebd9bc37f9019c0091ee97c4c535"><td class="memItemLeft" align="right" valign="top"><a id="a40b9ebd9bc37f9019c0091ee97c4c535"></a>
typedef struct <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a40b9ebd9bc37f9019c0091ee97c4c535">apreq_cookie_t</a></td></tr>
<tr class="memdesc:a40b9ebd9bc37f9019c0091ee97c4c535"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cookie type, supporting both Netscape and RFC cookie specifications. <br /></td></tr>
<tr class="separator:a40b9ebd9bc37f9019c0091ee97c4c535"><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:ab69d56f31d7c8f6f6f598a133817b46e"><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__cookie_8h.html#ab69d56f31d7c8f6f6f598a133817b46e">apreq_value_to_cookie</a> (const char *val)</td></tr>
<tr class="separator:ab69d56f31d7c8f6f6f598a133817b46e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04eaee766e51f143ff2ca4d8a0107004"><td class="memItemLeft" align="right" valign="top">static APR_INLINE unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a04eaee766e51f143ff2ca4d8a0107004">apreq_cookie_version</a> (const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
<tr class="separator:a04eaee766e51f143ff2ca4d8a0107004"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeff5b05ca6b935dd61dcc9da1a047546"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#aeff5b05ca6b935dd61dcc9da1a047546">apreq_cookie_version_set</a> (<a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c, unsigned v)</td></tr>
<tr class="separator:aeff5b05ca6b935dd61dcc9da1a047546"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7553c7f54497ce30e1828082c98c813e"><td class="memItemLeft" align="right" valign="top">static APR_INLINE unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a7553c7f54497ce30e1828082c98c813e">apreq_cookie_is_secure</a> (const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
<tr class="separator:a7553c7f54497ce30e1828082c98c813e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1df7a1ba35cf4c47fc907f40b95fe5e4"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a1df7a1ba35cf4c47fc907f40b95fe5e4">apreq_cookie_secure_on</a> (<a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
<tr class="separator:a1df7a1ba35cf4c47fc907f40b95fe5e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9f4813b99b80801ba1dc11d0099ac10"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#ad9f4813b99b80801ba1dc11d0099ac10">apreq_cookie_secure_off</a> (<a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
<tr class="separator:ad9f4813b99b80801ba1dc11d0099ac10"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61c3709414b9fe614e32587da8ee8e8a"><td class="memItemLeft" align="right" valign="top">static APR_INLINE unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a61c3709414b9fe614e32587da8ee8e8a">apreq_cookie_is_httponly</a> (const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
<tr class="separator:a61c3709414b9fe614e32587da8ee8e8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9a94a9b03dea7b286a9c4041d3c7e4e"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#aa9a94a9b03dea7b286a9c4041d3c7e4e">apreq_cookie_httponly_on</a> (<a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
<tr class="separator:aa9a94a9b03dea7b286a9c4041d3c7e4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a619cc2d56e20134e91bf1d31ab26bfec"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a619cc2d56e20134e91bf1d31ab26bfec">apreq_cookie_httponly_off</a> (<a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
<tr class="separator:a619cc2d56e20134e91bf1d31ab26bfec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08618139ba29e98cd2327de3f0e961fe"><td class="memItemLeft" align="right" valign="top">static APR_INLINE unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a08618139ba29e98cd2327de3f0e961fe">apreq_cookie_is_tainted</a> (const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
<tr class="separator:a08618139ba29e98cd2327de3f0e961fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afeec2e0802ae883d4f2fda750b74ca55"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#afeec2e0802ae883d4f2fda750b74ca55">apreq_cookie_tainted_on</a> (<a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
<tr class="separator:afeec2e0802ae883d4f2fda750b74ca55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac3b777e9709fa062ff978afef3867964"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#ac3b777e9709fa062ff978afef3867964">apreq_cookie_tainted_off</a> (<a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
<tr class="separator:ac3b777e9709fa062ff978afef3867964"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a113be08c01bc82605ec52d80c054cbf6"><td class="memItemLeft" align="right" valign="top"><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__cookie_8h.html#a113be08c01bc82605ec52d80c054cbf6">apreq_parse_cookie_header</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *jar, const char *header)</td></tr>
<tr class="separator:a113be08c01bc82605ec52d80c054cbf6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a53b5bb02baf7fb318cd643fb55820422"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a53b5bb02baf7fb318cd643fb55820422">apreq_cookie_make</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 *name, const apr_size_t nlen, const char *value, const apr_size_t vlen)</td></tr>
<tr class="separator:a53b5bb02baf7fb318cd643fb55820422"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a10c1d6639303c3f85fb5818d88e654d3"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a10c1d6639303c3f85fb5818d88e654d3">apreq_cookie_as_string</a> (const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c, <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:a10c1d6639303c3f85fb5818d88e654d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afc06d8f5e4ee8530013c4f3c3b12e01f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#afc06d8f5e4ee8530013c4f3c3b12e01f">apreq_cookie_serialize</a> (const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c, char *buf, apr_size_t len)</td></tr>
<tr class="separator:afc06d8f5e4ee8530013c4f3c3b12e01f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c6eb3c7c0f003bdc150d2ce99dacc7f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a8c6eb3c7c0f003bdc150d2ce99dacc7f">apreq_cookie_expires</a> (<a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c, const char *time_str)</td></tr>
<tr class="separator:a8c6eb3c7c0f003bdc150d2ce99dacc7f"><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>Cookies and Jars. </p>
<p><a class="el" href="apreq__cookie_8h.html" title="Cookies and Jars.">apreq_cookie.h</a> describes a common server-side API for request (incoming) and response (outgoing) cookies. It aims towards compliance with the standard cookie specifications listed below.</p>
<dl class="section see"><dt>See also</dt><dd><a href="http://wp.netscape.com/newsref/std/cookie_spec.html">http://wp.netscape.com/newsref/std/cookie_spec.html</a> </dd>
<dd>
<a href="http://www.ietf.org/rfc/rfc2109.txt">http://www.ietf.org/rfc/rfc2109.txt</a> </dd>
<dd>
<a href="http://www.ietf.org/rfc/rfc2964.txt">http://www.ietf.org/rfc/rfc2964.txt</a> </dd>
<dd>
<a href="http://www.ietf.org/rfc/rfc2965.txt">http://www.ietf.org/rfc/rfc2965.txt</a> </dd></dl>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a681b8ef60cad05e684876d4dd2be043b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a681b8ef60cad05e684876d4dd2be043b">&#9670;&nbsp;</a></span>APREQ_COOKIE_MAX_LENGTH</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define APREQ_COOKIE_MAX_LENGTH&#160;&#160;&#160;4096</td>
</tr>
</table>
</div><div class="memdoc">
<p>This macro is deprecated.</p>
<p>Maximum length of a single Set-Cookie(2) header. </p>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="a10c1d6639303c3f85fb5818d88e654d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a10c1d6639303c3f85fb5818d88e654d3">&#9670;&nbsp;</a></span>apreq_cookie_as_string()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">char* apreq_cookie_as_string </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
<td class="paramname"><em>c</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 string that represents the cookie as it would appear in a valid "Set-Cookie*" header.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">c</td><td>cookie. </td></tr>
<tr><td class="paramname">p</td><td>pool which allocates the returned string.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>header string. </dd></dl>
</div>
</div>
<a id="a8c6eb3c7c0f003bdc150d2ce99dacc7f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8c6eb3c7c0f003bdc150d2ce99dacc7f">&#9670;&nbsp;</a></span>apreq_cookie_expires()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void apreq_cookie_expires </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
<td class="paramname"><em>c</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>time_str</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the Cookie's expiration date.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">c</td><td>The cookie. </td></tr>
<tr><td class="paramname">time_str</td><td>If NULL, the Cookie's expiration date is unset, making it a session cookie. This means no "expires" or "max-age" attribute will appear in the cookie's serialized form. If time_str is not NULL, the expiration date will be reset to the offset (from now) represented by time_str. The time_str should be in a format that <a class="el" href="apreq__util_8h.html#a4e838a92724aa7d9be0b978dc5c4e50c">apreq_atoi64t()</a> can understand, namely /[+-]?\d+\s*[YMDhms]/.</td></tr>
</table>
</dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>Now time_str may also be a fixed date; see <a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/group___a_p_r___util___date.html#gaa6d4a18ff9f40c37c0f145d063c50e96">apr_date_parse_rfc()</a> for admissible formats. </dd></dl>
</div>
</div>
<a id="a619cc2d56e20134e91bf1d31ab26bfec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a619cc2d56e20134e91bf1d31ab26bfec">&#9670;&nbsp;</a></span>apreq_cookie_httponly_off()</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 void apreq_cookie_httponly_off </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
<td class="paramname"><em>c</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>Turns off the cookie's HttpOnly flag. </p>
</div>
</div>
<a id="aa9a94a9b03dea7b286a9c4041d3c7e4e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa9a94a9b03dea7b286a9c4041d3c7e4e">&#9670;&nbsp;</a></span>apreq_cookie_httponly_on()</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 void apreq_cookie_httponly_on </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
<td class="paramname"><em>c</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>Sets the cookie's HttpOnly flag, meaning it is not accessible through client-side script in supported browsers. </p>
</div>
</div>
<a id="a61c3709414b9fe614e32587da8ee8e8a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a61c3709414b9fe614e32587da8ee8e8a">&#9670;&nbsp;</a></span>apreq_cookie_is_httponly()</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_cookie_is_httponly </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
<td class="paramname"><em>c</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">
<dl class="section return"><dt>Returns</dt><dd>1 if the HttpOnly flag is set, 0 otherwise. </dd></dl>
</div>
</div>
<a id="a7553c7f54497ce30e1828082c98c813e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7553c7f54497ce30e1828082c98c813e">&#9670;&nbsp;</a></span>apreq_cookie_is_secure()</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_cookie_is_secure </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
<td class="paramname"><em>c</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">
<dl class="section return"><dt>Returns</dt><dd>1 if the secure flag is set, 0 otherwise. </dd></dl>
</div>
</div>
<a id="a08618139ba29e98cd2327de3f0e961fe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a08618139ba29e98cd2327de3f0e961fe">&#9670;&nbsp;</a></span>apreq_cookie_is_tainted()</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_cookie_is_tainted </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
<td class="paramname"><em>c</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">
<dl class="section return"><dt>Returns</dt><dd>1 if the taint flag is set, 0 otherwise. </dd></dl>
</div>
</div>
<a id="a53b5bb02baf7fb318cd643fb55820422"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a53b5bb02baf7fb318cd643fb55820422">&#9670;&nbsp;</a></span>apreq_cookie_make()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a>* apreq_cookie_make </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>name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const apr_size_t&#160;</td>
<td class="paramname"><em>nlen</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>value</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const apr_size_t&#160;</td>
<td class="paramname"><em>vlen</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a new cookie, made from the argument list.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pool</td><td>Pool which allocates the cookie. </td></tr>
<tr><td class="paramname">name</td><td>The cookie's name. </td></tr>
<tr><td class="paramname">nlen</td><td>Length of name. </td></tr>
<tr><td class="paramname">value</td><td>The cookie's value. </td></tr>
<tr><td class="paramname">vlen</td><td>Length of value.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the new cookie </dd></dl>
</div>
</div>
<a id="ad9f4813b99b80801ba1dc11d0099ac10"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad9f4813b99b80801ba1dc11d0099ac10">&#9670;&nbsp;</a></span>apreq_cookie_secure_off()</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 void apreq_cookie_secure_off </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
<td class="paramname"><em>c</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>Turns off the cookie's secure flag. </p>
</div>
</div>
<a id="a1df7a1ba35cf4c47fc907f40b95fe5e4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1df7a1ba35cf4c47fc907f40b95fe5e4">&#9670;&nbsp;</a></span>apreq_cookie_secure_on()</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 void apreq_cookie_secure_on </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
<td class="paramname"><em>c</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>Sets the cookie's secure flag, meaning it only comes back over an SSL-encrypted connction. </p>
</div>
</div>
<a id="afc06d8f5e4ee8530013c4f3c3b12e01f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afc06d8f5e4ee8530013c4f3c3b12e01f">&#9670;&nbsp;</a></span>apreq_cookie_serialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int apreq_cookie_serialize </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
<td class="paramname"><em>c</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char *&#160;</td>
<td class="paramname"><em>buf</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">apr_size_t&#160;</td>
<td class="paramname"><em>len</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Same functionality as apreq_cookie_as_string. Stores the string representation in buf, using up to len bytes in buf as storage. The return value has the same semantics as that of apr_snprintf, including the special behavior for a "len = 0" argument.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">c</td><td>cookie. </td></tr>
<tr><td class="paramname">buf</td><td>storage location for the result. </td></tr>
<tr><td class="paramname">len</td><td>size of buf's storage area.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>size of resulting header string. </dd></dl>
</div>
</div>
<a id="ac3b777e9709fa062ff978afef3867964"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac3b777e9709fa062ff978afef3867964">&#9670;&nbsp;</a></span>apreq_cookie_tainted_off()</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 void apreq_cookie_tainted_off </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
<td class="paramname"><em>c</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>Turns off the cookie's tainted flag. </p>
</div>
</div>
<a id="afeec2e0802ae883d4f2fda750b74ca55"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afeec2e0802ae883d4f2fda750b74ca55">&#9670;&nbsp;</a></span>apreq_cookie_tainted_on()</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 void apreq_cookie_tainted_on </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
<td class="paramname"><em>c</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>Sets the cookie's tainted flag. </p>
</div>
</div>
<a id="a04eaee766e51f143ff2ca4d8a0107004"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a04eaee766e51f143ff2ca4d8a0107004">&#9670;&nbsp;</a></span>apreq_cookie_version()</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_cookie_version </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
<td class="paramname"><em>c</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">
<dl class="section return"><dt>Returns</dt><dd>1 if this is an RFC cookie, 0 if its a Netscape cookie. </dd></dl>
</div>
</div>
<a id="aeff5b05ca6b935dd61dcc9da1a047546"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeff5b05ca6b935dd61dcc9da1a047546">&#9670;&nbsp;</a></span>apreq_cookie_version_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 void apreq_cookie_version_set </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
<td class="paramname"><em>c</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned&#160;</td>
<td class="paramname"><em>v</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>Sets the cookie's protocol version. </p>
</div>
</div>
<a id="a113be08c01bc82605ec52d80c054cbf6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a113be08c01bc82605ec52d80c054cbf6">&#9670;&nbsp;</a></span>apreq_parse_cookie_header()</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__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_parse_cookie_header </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"><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>jar</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>header</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Parse a cookie header and store the cookies in an apr_table_t.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pool</td><td>pool which allocates the cookies </td></tr>
<tr><td class="paramname">jar</td><td>table where parsed cookies are stored </td></tr>
<tr><td class="paramname">header</td><td>the header value</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS. </dd>
<dd>
<a class="el" href="apreq__error_8h.html#a73a69e21acc2cf849310a421ab43d2ba">APREQ_ERROR_BADSEQ</a> if an unparsable character sequence appears. </dd>
<dd>
<a class="el" href="apreq__error_8h.html#a33080081185585997ef9c5232ec4dd8f">APREQ_ERROR_MISMATCH</a> if an rfc-cookie attribute appears in a netscape cookie header. </dd>
<dd>
<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group___a_p_r___error.html#ga939ddb834a30bc9a5a0a329b13000161">APR_ENOTIMPL</a> if an unrecognized rfc-cookie attribute appears. </dd>
<dd>
<a class="el" href="apreq__error_8h.html#a59be3610ba54a58fbb3cd6bb655ff972">APREQ_ERROR_NOTOKEN</a> if a required token was not present. </dd>
<dd>
<a class="el" href="apreq__error_8h.html#a04b6a01738a1ee7fd1ecc79d256e721f">APREQ_ERROR_BADCHAR</a> if an unexpected token was present. </dd></dl>
</div>
</div>
<a id="ab69d56f31d7c8f6f6f598a133817b46e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab69d56f31d7c8f6f6f598a133817b46e">&#9670;&nbsp;</a></span>apreq_value_to_cookie()</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_value_to_cookie </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>val</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>Upgrades a jar's table values to <a class="el" href="structapreq__cookie__t.html" title="Cookie type, supporting both Netscape and RFC cookie specifications.">apreq_cookie_t</a> structs. </p>
</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>