Sophie

Sophie

distrib > Mageia > 7 > armv7hl > media > core-release > by-pkgid > cf66605433f4ed2e749a1e5586d0533a > files > 49

libapr-util-devel-1.6.1-3.mga7.armv7hl.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Apache Portable Runtime Utility Library: include/apr_buckets.h Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.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">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Apache Portable Runtime Utility Library
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<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('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</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="headertitle">
<div class="title">apr_buckets.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="apr__buckets_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/* Licensed to the Apache Software Foundation (ASF) under one or more</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment"> * contributor license agreements.  See the NOTICE file distributed with</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment"> * this work for additional information regarding copyright ownership.</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"> * The ASF licenses this file to You under the Apache License, Version 2.0</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> * (the &quot;License&quot;); you may not use this file except in compliance with</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment"> * the License.  You may obtain a copy of the License at</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment"> *     http://www.apache.org/licenses/LICENSE-2.0</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment"> * Unless required by applicable law or agreed to in writing, software</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment"> * distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment"> * See the License for the specific language governing permissions and</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment"> * limitations under the License.</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#ifndef APR_BUCKETS_H</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#define APR_BUCKETS_H</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#if defined(APR_BUCKET_DEBUG) &amp;&amp; !defined(APR_RING_DEBUG)</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#define APR_RING_DEBUG</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#include &quot;apu.h&quot;</span></div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#include &quot;apr_network_io.h&quot;</span></div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &quot;apr_file_io.h&quot;</span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#include &quot;apr_general.h&quot;</span></div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#include &quot;apr_mmap.h&quot;</span></div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#include &quot;apr_errno.h&quot;</span></div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#include &quot;apr_ring.h&quot;</span></div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#include &quot;apr.h&quot;</span></div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#if APR_HAVE_SYS_UIO_H</span></div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">#include &lt;sys/uio.h&gt;</span>    <span class="comment">/* for struct iovec */</span></div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#if APR_HAVE_STDARG_H</span></div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#include &lt;stdarg.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga82bf404af30875135c65e2c13ad035e5">   54</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_BUFF_SIZE 8000</span></div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga756973fb6392bd1026c3d96b4519776d">   57</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#gga756973fb6392bd1026c3d96b4519776da2d983f5b7fd996434e0dded171c261d8">   58</a></span>&#160;    <a class="code" href="group___a_p_r___util___bucket___brigades.html#gga756973fb6392bd1026c3d96b4519776da2d983f5b7fd996434e0dded171c261d8">APR_BLOCK_READ</a>,   </div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#gga756973fb6392bd1026c3d96b4519776da42b97663ca71fbbf2e2af7c8192e5dd8">   59</a></span>&#160;    <a class="code" href="group___a_p_r___util___bucket___brigades.html#gga756973fb6392bd1026c3d96b4519776da42b97663ca71fbbf2e2af7c8192e5dd8">APR_NONBLOCK_READ</a> </div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;} <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga756973fb6392bd1026c3d96b4519776d">apr_read_type_e</a>;</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="comment"> * Forward declaration of the main types.</span></div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga9f50254e85c7aad79ca289a0ba069025">  119</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> <a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a>;</div><div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#gaa17a456120961b1c5af0525f4900a457">  121</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapr__bucket.html">apr_bucket</a> <a class="code" href="structapr__bucket.html">apr_bucket</a>;</div><div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">  123</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a>;</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;</div><div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga4a152aaf7d851c81af73b7e84dc1a8a2">  126</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapr__bucket__type__t.html">apr_bucket_type_t</a> <a class="code" href="structapr__bucket__type__t.html">apr_bucket_type_t</a>;</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;</div><div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="structapr__bucket__type__t.html">  131</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structapr__bucket__type__t.html">apr_bucket_type_t</a> {</div><div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="structapr__bucket__type__t.html#ac6d779be45de214c6abd2cc205c48901">  135</a></span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structapr__bucket__type__t.html#ac6d779be45de214c6abd2cc205c48901">name</a>;</div><div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="structapr__bucket__type__t.html#ad4bd2ffb03cb2f5f3b3941ce20468038">  140</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="structapr__bucket__type__t.html#ad4bd2ffb03cb2f5f3b3941ce20468038">num_func</a>;</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;    <span class="keyword">enum</span> {</div><div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="structapr__bucket__type__t.html#a117f85e4a58c5e7d7e373705ad138f85a53d3ef9d6a275fe2b72a91acea7017d5">  153</a></span>&#160;        <a class="code" href="structapr__bucket__type__t.html#a117f85e4a58c5e7d7e373705ad138f85a53d3ef9d6a275fe2b72a91acea7017d5">APR_BUCKET_DATA</a> = 0,</div><div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="structapr__bucket__type__t.html#a117f85e4a58c5e7d7e373705ad138f85a9bf38b4eb3ea41c4af230432ac7a5fb1">  155</a></span>&#160;        <a class="code" href="structapr__bucket__type__t.html#a117f85e4a58c5e7d7e373705ad138f85a9bf38b4eb3ea41c4af230432ac7a5fb1">APR_BUCKET_METADATA</a> = 1</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;    } <a class="code" href="structapr__bucket__type__t.html#a34cef542a8eee5bb734ba8dcd8329711">is_metadata</a>;</div><div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="structapr__bucket__type__t.html#affe8b803b860b51d6ee86ff1c6d73d12">  164</a></span>&#160;    void (*<a class="code" href="structapr__bucket__type__t.html#affe8b803b860b51d6ee86ff1c6d73d12">destroy</a>)(<span class="keywordtype">void</span> *data);</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;</div><div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="structapr__bucket__type__t.html#a4e6befb63427ae39290fe146b1b4e510">  176</a></span>&#160;    apr_status_t (*<a class="code" href="structapr__bucket__type__t.html#a4e6befb63427ae39290fe146b1b4e510">read</a>)(<a class="code" href="structapr__bucket.html">apr_bucket</a> *b, <span class="keyword">const</span> <span class="keywordtype">char</span> **str, apr_size_t *len, </div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;                         <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga756973fb6392bd1026c3d96b4519776d">apr_read_type_e</a> block);</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;    </div><div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="structapr__bucket__type__t.html#aee86765d7fdffddb1d98a45e968ee937">  192</a></span>&#160;    apr_status_t (*<a class="code" href="structapr__bucket__type__t.html#aee86765d7fdffddb1d98a45e968ee937">setaside</a>)(<a class="code" href="structapr__bucket.html">apr_bucket</a> *e, apr_pool_t *pool);</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;</div><div class="line"><a name="l00203"></a><span class="lineno"><a class="line" href="structapr__bucket__type__t.html#a2281bf6b0c4538d29567fc7ddb1ad085">  203</a></span>&#160;    apr_status_t (*<a class="code" href="structapr__bucket__type__t.html#a2281bf6b0c4538d29567fc7ddb1ad085">split</a>)(<a class="code" href="structapr__bucket.html">apr_bucket</a> *e, apr_size_t point);</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno"><a class="line" href="structapr__bucket__type__t.html#a4e64635ed62e1f371154f934c8a8504f">  211</a></span>&#160;    apr_status_t (*<a class="code" href="structapr__bucket__type__t.html#a4e64635ed62e1f371154f934c8a8504f">copy</a>)(<a class="code" href="structapr__bucket.html">apr_bucket</a> *e, <a class="code" href="structapr__bucket.html">apr_bucket</a> **c);</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;};</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;</div><div class="line"><a name="l00224"></a><span class="lineno"><a class="line" href="structapr__bucket.html">  224</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structapr__bucket.html">apr_bucket</a> {</div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;    <a class="code" href="structapr__bucket.html#ab1acff965e57e067dfde80321d04dea7">APR_RING_ENTRY</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a>) link;</div><div class="line"><a name="l00228"></a><span class="lineno"><a class="line" href="structapr__bucket.html#ac27fa5ce798e688ad243ebe1615937fc">  228</a></span>&#160;    <span class="keyword">const</span> <a class="code" href="structapr__bucket__type__t.html">apr_bucket_type_t</a> *<a class="code" href="structapr__bucket.html#ac27fa5ce798e688ad243ebe1615937fc">type</a>;</div><div class="line"><a name="l00234"></a><span class="lineno"><a class="line" href="structapr__bucket.html#a0898dfc78d9275187189b9a745e619bf">  234</a></span>&#160;    apr_size_t <a class="code" href="structapr__bucket.html#a0898dfc78d9275187189b9a745e619bf">length</a>;</div><div class="line"><a name="l00242"></a><span class="lineno"><a class="line" href="structapr__bucket.html#a4a8791b606b3ad613b8672ec94145628">  242</a></span>&#160;    apr_off_t <a class="code" href="structapr__bucket.html#a4a8791b606b3ad613b8672ec94145628">start</a>;</div><div class="line"><a name="l00244"></a><span class="lineno"><a class="line" href="structapr__bucket.html#a7fc4604750889b3f762bda1a786d276a">  244</a></span>&#160;    <span class="keywordtype">void</span> *<a class="code" href="structapr__bucket.html#a7fc4604750889b3f762bda1a786d276a">data</a>; </div><div class="line"><a name="l00252"></a><span class="lineno"><a class="line" href="structapr__bucket.html#a0949c5d398756496e69449c2633975f1">  252</a></span>&#160;    void (*<a class="code" href="structapr__bucket.html#a0949c5d398756496e69449c2633975f1">free</a>)(<span class="keywordtype">void</span> *e);</div><div class="line"><a name="l00254"></a><span class="lineno"><a class="line" href="structapr__bucket.html#a5a500b80105834621514d6c0814d0966">  254</a></span>&#160;    <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *<a class="code" href="structapr__bucket.html#a5a500b80105834621514d6c0814d0966">list</a>;</div><div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;};</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;</div><div class="line"><a name="l00258"></a><span class="lineno"><a class="line" href="structapr__bucket__brigade.html">  258</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> {</div><div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="structapr__bucket__brigade.html#a8e03b4dd531903709ae3ae8ebe9e46ee">  264</a></span>&#160;    apr_pool_t *<a class="code" href="structapr__bucket__brigade.html#a8e03b4dd531903709ae3ae8ebe9e46ee">p</a>;</div><div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;    <span class="comment">/*</span></div><div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;<span class="comment">     * The apr_bucket_list structure doesn&#39;t actually need a name tag</span></div><div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;<span class="comment">     * because it has no existence independent of struct apr_bucket_brigade;</span></div><div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;<span class="comment">     * the ring macros are designed so that you can leave the name tag</span></div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;<span class="comment">     * argument empty in this situation but apparently the Windows compiler</span></div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;<span class="comment">     * doesn&#39;t like that.</span></div><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;<span class="comment">     */</span></div><div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    <a class="code" href="structapr__bucket__brigade.html#a76a313afc83dd161916f3f9b83eea734">APR_RING_HEAD</a>(apr_bucket_list, <a class="code" href="structapr__bucket.html">apr_bucket</a>) list;</div><div class="line"><a name="l00275"></a><span class="lineno"><a class="line" href="structapr__bucket__brigade.html#a9f58f90a088f02ebb6f935f004092aaa">  275</a></span>&#160;    <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *<a class="code" href="structapr__bucket__brigade.html#a9f58f90a088f02ebb6f935f004092aaa">bucket_alloc</a>;</div><div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;};</div><div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;</div><div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;</div><div class="line"><a name="l00282"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#gafa0dbcd060e2e432406052e4d7c96204">  282</a></span>&#160;<span class="keyword">typedef</span> apr_status_t (*<a class="code" href="group___a_p_r___util___bucket___brigades.html#gafa0dbcd060e2e432406052e4d7c96204">apr_brigade_flush</a>)(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *bb, <span class="keywordtype">void</span> *ctx);</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;<span class="comment"> * define APR_BUCKET_DEBUG if you want your brigades to be checked for</span></div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;<span class="comment"> * validity at every possible instant.  this will slow your code down</span></div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;<span class="comment"> * substantially but is a very useful debugging tool.</span></div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;<span class="preprocessor">#ifdef APR_BUCKET_DEBUG</span></div><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;<span class="preprocessor">#define APR_BRIGADE_CHECK_CONSISTENCY(b)                \</span></div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;<span class="preprocessor">        APR_RING_CHECK_CONSISTENCY(&amp;(b)-&gt;list, apr_bucket, link)</span></div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;<span class="preprocessor">#define APR_BUCKET_CHECK_CONSISTENCY(e)                 \</span></div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;<span class="preprocessor">        APR_RING_CHECK_ELEM_CONSISTENCY((e), apr_bucket, link)</span></div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;</div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;</div><div class="line"><a name="l00304"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#gae1dfe8bf117d10e7dc5b8e0c08f0ebb2">  304</a></span>&#160;<span class="preprocessor">#define APR_BRIGADE_CHECK_CONSISTENCY(b)</span></div><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;</div><div class="line"><a name="l00311"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#gaedaeb3fbe71aac408377471b8a54dc08">  311</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_CHECK_CONSISTENCY(e)</span></div><div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;</div><div class="line"><a name="l00331"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga858da66dccab1e063415678bb115788a">  331</a></span>&#160;<span class="preprocessor">#define APR_BRIGADE_SENTINEL(b) APR_RING_SENTINEL(&amp;(b)-&gt;list, apr_bucket, link)</span></div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;</div><div class="line"><a name="l00338"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga836f61da6cce15074eff257ce4b6fc0f">  338</a></span>&#160;<span class="preprocessor">#define APR_BRIGADE_EMPTY(b)    APR_RING_EMPTY(&amp;(b)-&gt;list, apr_bucket, link)</span></div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;</div><div class="line"><a name="l00345"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#gab5826a11eb6ba90786a94282f806c230">  345</a></span>&#160;<span class="preprocessor">#define APR_BRIGADE_FIRST(b)    APR_RING_FIRST(&amp;(b)-&gt;list)</span></div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;</div><div class="line"><a name="l00351"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga40e0ef2a904aa519ca9d63288dee0b4d">  351</a></span>&#160;<span class="preprocessor">#define APR_BRIGADE_LAST(b) APR_RING_LAST(&amp;(b)-&gt;list)</span></div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;</div><div class="line"><a name="l00358"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga6dc39d8757e18941a6fb069b0c18fbd3">  358</a></span>&#160;<span class="preprocessor">#define APR_BRIGADE_INSERT_HEAD(b, e) do {              \</span></div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;<span class="preprocessor">    apr_bucket *ap__b = (e);                                        \</span></div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;<span class="preprocessor">    APR_RING_INSERT_HEAD(&amp;(b)-&gt;list, ap__b, apr_bucket, link);  \</span></div><div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;<span class="preprocessor">        APR_BRIGADE_CHECK_CONSISTENCY((b));             \</span></div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;<span class="preprocessor">    } while (0)</span></div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;</div><div class="line"><a name="l00369"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga5447595f8374296c5ffe208db39b2f5d">  369</a></span>&#160;<span class="preprocessor">#define APR_BRIGADE_INSERT_TAIL(b, e) do {              \</span></div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;<span class="preprocessor">    apr_bucket *ap__b = (e);                    \</span></div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;<span class="preprocessor">    APR_RING_INSERT_TAIL(&amp;(b)-&gt;list, ap__b, apr_bucket, link);  \</span></div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;<span class="preprocessor">        APR_BRIGADE_CHECK_CONSISTENCY((b));             \</span></div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;<span class="preprocessor">    } while (0)</span></div><div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;</div><div class="line"><a name="l00380"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga7cecbc89be912ce9ab24c889eb8f955b">  380</a></span>&#160;<span class="preprocessor">#define APR_BRIGADE_CONCAT(a, b) do {                   \</span></div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;<span class="preprocessor">        APR_RING_CONCAT(&amp;(a)-&gt;list, &amp;(b)-&gt;list, apr_bucket, link);  \</span></div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;<span class="preprocessor">        APR_BRIGADE_CHECK_CONSISTENCY((a));             \</span></div><div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;<span class="preprocessor">    } while (0)</span></div><div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;</div><div class="line"><a name="l00390"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga52ba212f76507a79ccae213875150ad1">  390</a></span>&#160;<span class="preprocessor">#define APR_BRIGADE_PREPEND(a, b) do {                  \</span></div><div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;<span class="preprocessor">        APR_RING_PREPEND(&amp;(a)-&gt;list, &amp;(b)-&gt;list, apr_bucket, link); \</span></div><div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;<span class="preprocessor">        APR_BRIGADE_CHECK_CONSISTENCY((a));             \</span></div><div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;<span class="preprocessor">    } while (0)</span></div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;</div><div class="line"><a name="l00400"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#gae012adeccda754eabc42b7855bec081e">  400</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_INSERT_BEFORE(a, b) do {             \</span></div><div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;<span class="preprocessor">    apr_bucket *ap__a = (a), *ap__b = (b);              \</span></div><div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;<span class="preprocessor">    APR_RING_INSERT_BEFORE(ap__a, ap__b, link);         \</span></div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;<span class="preprocessor">        APR_BUCKET_CHECK_CONSISTENCY(ap__a);                \</span></div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;<span class="preprocessor">    } while (0)</span></div><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;</div><div class="line"><a name="l00411"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga1f8114b7316d1fef1deb95abc8f02341">  411</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_INSERT_AFTER(a, b) do {              \</span></div><div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;<span class="preprocessor">    apr_bucket *ap__a = (a), *ap__b = (b);              \</span></div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;<span class="preprocessor">    APR_RING_INSERT_AFTER(ap__a, ap__b, link);          \</span></div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;<span class="preprocessor">        APR_BUCKET_CHECK_CONSISTENCY(ap__a);                \</span></div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;<span class="preprocessor">    } while (0)</span></div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;</div><div class="line"><a name="l00422"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga7171f690b203d548a5b6ae0b079068d8">  422</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_NEXT(e)  APR_RING_NEXT((e), link)</span></div><div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;</div><div class="line"><a name="l00428"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#gaf229fecd4174efd4d6a9774e3048ae28">  428</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_PREV(e)  APR_RING_PREV((e), link)</span></div><div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;</div><div class="line"><a name="l00434"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga2c46a1b717a87b68bd98b425e0c64977">  434</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_REMOVE(e)    APR_RING_REMOVE((e), link)</span></div><div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;</div><div class="line"><a name="l00440"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga00c2e104125f124c3a52627863432de9">  440</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_INIT(e)  APR_RING_ELEM_INIT((e), link)</span></div><div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;</div><div class="line"><a name="l00448"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga506cb29cc1ec1abeb487e01b122bd4d9">  448</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_IS_METADATA(e)    ((e)-&gt;type-&gt;is_metadata)</span></div><div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;</div><div class="line"><a name="l00455"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga24105da0bb755a775c4b2a519d7c25f9">  455</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_IS_FLUSH(e)       ((e)-&gt;type == &amp;apr_bucket_type_flush)</span></div><div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;</div><div class="line"><a name="l00461"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga89b225e1c08473766eec719b985ca0d6">  461</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_IS_EOS(e)         ((e)-&gt;type == &amp;apr_bucket_type_eos)</span></div><div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;</div><div class="line"><a name="l00467"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga1d54037bb6953c73d5c61f64c311d470">  467</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_IS_FILE(e)        ((e)-&gt;type == &amp;apr_bucket_type_file)</span></div><div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;</div><div class="line"><a name="l00473"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga03e62d86c994d1d1cc9be3eb8b8f6ac6">  473</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_IS_PIPE(e)        ((e)-&gt;type == &amp;apr_bucket_type_pipe)</span></div><div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;</div><div class="line"><a name="l00479"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga4b8315b498e4eb67efde1c83bdbe8b87">  479</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_IS_SOCKET(e)      ((e)-&gt;type == &amp;apr_bucket_type_socket)</span></div><div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;</div><div class="line"><a name="l00485"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga3dee4fbd5b4e16e5188a6cfec40b6961">  485</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_IS_HEAP(e)        ((e)-&gt;type == &amp;apr_bucket_type_heap)</span></div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;</div><div class="line"><a name="l00491"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga1a7e7ac5fddbab4ce189e8d3007446ff">  491</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_IS_TRANSIENT(e)   ((e)-&gt;type == &amp;apr_bucket_type_transient)</span></div><div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;</div><div class="line"><a name="l00497"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga53f1188c168acf7dcfabfa1ac5a08655">  497</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_IS_IMMORTAL(e)    ((e)-&gt;type == &amp;apr_bucket_type_immortal)</span></div><div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;<span class="preprocessor">#if APR_HAS_MMAP</span></div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;</div><div class="line"><a name="l00504"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga1693d49aeb0287e3b171c922c6b633d2">  504</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_IS_MMAP(e)        ((e)-&gt;type == &amp;apr_bucket_type_mmap)</span></div><div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;</div><div class="line"><a name="l00511"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#gadbe80a9016da6a06ab414ba61d6625d0">  511</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_IS_POOL(e)        ((e)-&gt;type == &amp;apr_bucket_type_pool)</span></div><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;</div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;<span class="comment"> * General-purpose reference counting for the various bucket types.</span></div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;<span class="comment"> * Any bucket type that keeps track of the resources it uses (i.e.</span></div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;<span class="comment"> * most of them except for IMMORTAL, TRANSIENT, and EOS) needs to</span></div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;<span class="comment"> * attach a reference count to the resource so that it can be freed</span></div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;<span class="comment"> * when the last bucket that uses it goes away. Resource-sharing may</span></div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;<span class="comment"> * occur because of bucket splits or buckets that refer to globally</span></div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;<span class="comment"> * cached data. */</span></div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;</div><div class="line"><a name="l00524"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga785fd3402961b30315975b0c87c87706">  524</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapr__bucket__refcount.html">apr_bucket_refcount</a> <a class="code" href="structapr__bucket__refcount.html">apr_bucket_refcount</a>;</div><div class="line"><a name="l00531"></a><span class="lineno"><a class="line" href="structapr__bucket__refcount.html">  531</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structapr__bucket__refcount.html">apr_bucket_refcount</a> {</div><div class="line"><a name="l00533"></a><span class="lineno"><a class="line" href="structapr__bucket__refcount.html#a75040af03e3ad3c722bccea1048e3dae">  533</a></span>&#160;    <span class="keywordtype">int</span>          <a class="code" href="structapr__bucket__refcount.html#a75040af03e3ad3c722bccea1048e3dae">refcount</a>;</div><div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;};</div><div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;</div><div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;<span class="comment">/*  *****  Reference-counted bucket types  *****  */</span></div><div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;</div><div class="line"><a name="l00539"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#gaede6e77d621d0f3f7d2685d489d01283">  539</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapr__bucket__heap.html">apr_bucket_heap</a> <a class="code" href="structapr__bucket__heap.html">apr_bucket_heap</a>;</div><div class="line"><a name="l00543"></a><span class="lineno"><a class="line" href="structapr__bucket__heap.html">  543</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structapr__bucket__heap.html">apr_bucket_heap</a> {</div><div class="line"><a name="l00545"></a><span class="lineno"><a class="line" href="structapr__bucket__heap.html#ab87003dea25caef69aa3b30a1948024e">  545</a></span>&#160;    <a class="code" href="structapr__bucket__refcount.html">apr_bucket_refcount</a>  <a class="code" href="structapr__bucket__heap.html#ab87003dea25caef69aa3b30a1948024e">refcount</a>;</div><div class="line"><a name="l00549"></a><span class="lineno"><a class="line" href="structapr__bucket__heap.html#ac6386e2f635c6af19075123749e1fa71">  549</a></span>&#160;    <span class="keywordtype">char</span>    *<a class="code" href="structapr__bucket__heap.html#ac6386e2f635c6af19075123749e1fa71">base</a>;</div><div class="line"><a name="l00551"></a><span class="lineno"><a class="line" href="structapr__bucket__heap.html#ae373dada96f2e005a6aaf80e41c4cf6d">  551</a></span>&#160;    apr_size_t  <a class="code" href="structapr__bucket__heap.html#ae373dada96f2e005a6aaf80e41c4cf6d">alloc_len</a>;</div><div class="line"><a name="l00553"></a><span class="lineno"><a class="line" href="structapr__bucket__heap.html#ad180e40bfdc962bab946f764be9f6f88">  553</a></span>&#160;    void (*<a class="code" href="structapr__bucket__heap.html#ad180e40bfdc962bab946f764be9f6f88">free_func</a>)(<span class="keywordtype">void</span> *data);</div><div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;};</div><div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;</div><div class="line"><a name="l00557"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga211e00d871029de148116cd24b070aed">  557</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapr__bucket__pool.html">apr_bucket_pool</a> <a class="code" href="structapr__bucket__pool.html">apr_bucket_pool</a>;</div><div class="line"><a name="l00561"></a><span class="lineno"><a class="line" href="structapr__bucket__pool.html">  561</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structapr__bucket__pool.html">apr_bucket_pool</a> {</div><div class="line"><a name="l00573"></a><span class="lineno"><a class="line" href="structapr__bucket__pool.html#a0fe0b0dedea28fb1ed0a1a0f42338225">  573</a></span>&#160;    <a class="code" href="structapr__bucket__heap.html">apr_bucket_heap</a>  <a class="code" href="structapr__bucket__pool.html#a0fe0b0dedea28fb1ed0a1a0f42338225">heap</a>;</div><div class="line"><a name="l00579"></a><span class="lineno"><a class="line" href="structapr__bucket__pool.html#a9ee5297361ba548a20c3aa626a37c068">  579</a></span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structapr__bucket__pool.html#a9ee5297361ba548a20c3aa626a37c068">base</a>;</div><div class="line"><a name="l00586"></a><span class="lineno"><a class="line" href="structapr__bucket__pool.html#af55591a1e7f3b097e7c271683bc80968">  586</a></span>&#160;    apr_pool_t *<a class="code" href="structapr__bucket__pool.html#af55591a1e7f3b097e7c271683bc80968">pool</a>;</div><div class="line"><a name="l00590"></a><span class="lineno"><a class="line" href="structapr__bucket__pool.html#a651aa0c18658342daf72ff86680bfaca">  590</a></span>&#160;    <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *<a class="code" href="structapr__bucket__pool.html#a651aa0c18658342daf72ff86680bfaca">list</a>;</div><div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;};</div><div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;</div><div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;<span class="preprocessor">#if APR_HAS_MMAP</span></div><div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;</div><div class="line"><a name="l00595"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga27ede7c3a29627c7d184dc7cfbc4f767">  595</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapr__bucket__mmap.html">apr_bucket_mmap</a> <a class="code" href="structapr__bucket__mmap.html">apr_bucket_mmap</a>;</div><div class="line"><a name="l00599"></a><span class="lineno"><a class="line" href="structapr__bucket__mmap.html">  599</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structapr__bucket__mmap.html">apr_bucket_mmap</a> {</div><div class="line"><a name="l00601"></a><span class="lineno"><a class="line" href="structapr__bucket__mmap.html#a99f201622002479f4f84ea10598a013c">  601</a></span>&#160;    <a class="code" href="structapr__bucket__refcount.html">apr_bucket_refcount</a>  <a class="code" href="structapr__bucket__mmap.html#a99f201622002479f4f84ea10598a013c">refcount</a>;</div><div class="line"><a name="l00603"></a><span class="lineno"><a class="line" href="structapr__bucket__mmap.html#a66e9385752aaacb7fef7e96db62f1920">  603</a></span>&#160;    apr_mmap_t *<a class="code" href="structapr__bucket__mmap.html#a66e9385752aaacb7fef7e96db62f1920">mmap</a>;</div><div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;};</div><div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;</div><div class="line"><a name="l00608"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga1a786f7edac4d7a2c212f0fe74457b3d">  608</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapr__bucket__file.html">apr_bucket_file</a> <a class="code" href="structapr__bucket__file.html">apr_bucket_file</a>;</div><div class="line"><a name="l00612"></a><span class="lineno"><a class="line" href="structapr__bucket__file.html">  612</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structapr__bucket__file.html">apr_bucket_file</a> {</div><div class="line"><a name="l00614"></a><span class="lineno"><a class="line" href="structapr__bucket__file.html#ab0c123f34b85a07b601dc9794f8eed09">  614</a></span>&#160;    <a class="code" href="structapr__bucket__refcount.html">apr_bucket_refcount</a>  <a class="code" href="structapr__bucket__file.html#ab0c123f34b85a07b601dc9794f8eed09">refcount</a>;</div><div class="line"><a name="l00616"></a><span class="lineno"><a class="line" href="structapr__bucket__file.html#aa43154c0bc9d41ba4b0762c906de432f">  616</a></span>&#160;    apr_file_t *<a class="code" href="structapr__bucket__file.html#aa43154c0bc9d41ba4b0762c906de432f">fd</a>;</div><div class="line"><a name="l00619"></a><span class="lineno"><a class="line" href="structapr__bucket__file.html#a61b5603482215f6c9ace7b26fa12b884">  619</a></span>&#160;    apr_pool_t *<a class="code" href="structapr__bucket__file.html#a61b5603482215f6c9ace7b26fa12b884">readpool</a>;</div><div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;<span class="preprocessor">#if APR_HAS_MMAP</span></div><div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;</div><div class="line"><a name="l00623"></a><span class="lineno"><a class="line" href="structapr__bucket__file.html#a7812a8d6e6f10d0095569f04d3423e83">  623</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="structapr__bucket__file.html#a7812a8d6e6f10d0095569f04d3423e83">can_mmap</a>;</div><div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* APR_HAS_MMAP */</span><span class="preprocessor"></span></div><div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;</div><div class="line"><a name="l00626"></a><span class="lineno"><a class="line" href="structapr__bucket__file.html#a81c7e6646352fa03d4fb5a346dde4105">  626</a></span>&#160;    apr_size_t <a class="code" href="structapr__bucket__file.html#a81c7e6646352fa03d4fb5a346dde4105">read_size</a>;</div><div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;};</div><div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;</div><div class="line"><a name="l00630"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga3c0929c971f94de4521fb0fea6fd3209">  630</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">union </span><a class="code" href="unionapr__bucket__structs.html">apr_bucket_structs</a> <a class="code" href="unionapr__bucket__structs.html">apr_bucket_structs</a>;</div><div class="line"><a name="l00635"></a><span class="lineno"><a class="line" href="unionapr__bucket__structs.html">  635</a></span>&#160;<span class="keyword">union </span><a class="code" href="unionapr__bucket__structs.html">apr_bucket_structs</a> {</div><div class="line"><a name="l00636"></a><span class="lineno"><a class="line" href="unionapr__bucket__structs.html#a840c42a20727de2e4534ca05f1f6c990">  636</a></span>&#160;    <a class="code" href="structapr__bucket.html">apr_bucket</a>      <a class="code" href="unionapr__bucket__structs.html#a840c42a20727de2e4534ca05f1f6c990">b</a>;      </div><div class="line"><a name="l00637"></a><span class="lineno"><a class="line" href="unionapr__bucket__structs.html#a5335dc82d8250e511a9c55e5fea97141">  637</a></span>&#160;    <a class="code" href="structapr__bucket__heap.html">apr_bucket_heap</a> <a class="code" href="unionapr__bucket__structs.html#a5335dc82d8250e511a9c55e5fea97141">heap</a>;   </div><div class="line"><a name="l00638"></a><span class="lineno"><a class="line" href="unionapr__bucket__structs.html#ab926fe2af7c1780c03bf1669766db4a1">  638</a></span>&#160;    <a class="code" href="structapr__bucket__pool.html">apr_bucket_pool</a> <a class="code" href="unionapr__bucket__structs.html#ab926fe2af7c1780c03bf1669766db4a1">pool</a>;   </div><div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;<span class="preprocessor">#if APR_HAS_MMAP</span></div><div class="line"><a name="l00640"></a><span class="lineno"><a class="line" href="unionapr__bucket__structs.html#a627c4ca697f06bbf4226c8c2acd93cbc">  640</a></span>&#160;    <a class="code" href="structapr__bucket__mmap.html">apr_bucket_mmap</a> <a class="code" href="unionapr__bucket__structs.html#a627c4ca697f06bbf4226c8c2acd93cbc">mmap</a>;   </div><div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00642"></a><span class="lineno"><a class="line" href="unionapr__bucket__structs.html#ab339255acdf750133759a0d67b3f2e30">  642</a></span>&#160;    <a class="code" href="structapr__bucket__file.html">apr_bucket_file</a> <a class="code" href="unionapr__bucket__structs.html#ab339255acdf750133759a0d67b3f2e30">file</a>;   </div><div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;};</div><div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;</div><div class="line"><a name="l00650"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#gae3ccf4c383c9e7fea28354cc8e029626">  650</a></span>&#160;<span class="preprocessor">#define APR_BUCKET_ALLOC_SIZE  APR_ALIGN_DEFAULT(2*sizeof(apr_bucket_structs))</span></div><div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;</div><div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;<span class="comment">/*  *****  Bucket Brigade Functions  *****  */</span></div><div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gaeb422371006699c68f0ed3b496cc12a2">apr_brigade_create</a>(apr_pool_t *p,</div><div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;                                                     <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *list);</div><div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;</div><div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;APU_DECLARE(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga2eba1e262dece0d4444ddd25ae7b250a">apr_brigade_destroy</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *b);</div><div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;</div><div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;APU_DECLARE(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gafd6a8378a15e8b42a57a5923a03de7f2">apr_brigade_cleanup</a>(<span class="keywordtype">void</span> *data);</div><div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;</div><div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga36448fa89ab3239fd46591fbc82624e6">apr_brigade_split_ex</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *b,</div><div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;                                                       <a class="code" href="structapr__bucket.html">apr_bucket</a> *e,</div><div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160;                                                       <a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *a);</div><div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;</div><div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gacaf2929f951920a464e170baf2b4c345">apr_brigade_split</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *b,</div><div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;                                                    <a class="code" href="structapr__bucket.html">apr_bucket</a> *e);</div><div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;</div><div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;APU_DECLARE(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga4b2f22ba70ac9f65788014c61d4f5b76">apr_brigade_partition</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *b,</div><div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160;                                                apr_off_t point,</div><div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;                                                <a class="code" href="structapr__bucket.html">apr_bucket</a> **after_point);</div><div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;</div><div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;APU_DECLARE(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga65075839e31fd85e2c80717f4e9e0461">apr_brigade_length</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *bb,</div><div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;                                             <span class="keywordtype">int</span> read_all,</div><div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;                                             apr_off_t *length);</div><div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;</div><div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;APU_DECLARE(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga301aeb943e68ef4b99c1ae6a18dcf78e">apr_brigade_flatten</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *bb,</div><div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;                                              <span class="keywordtype">char</span> *c,</div><div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;                                              apr_size_t *len);</div><div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;</div><div class="line"><a name="l00762"></a><span class="lineno">  762</span>&#160;APU_DECLARE(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gaa5da970af09d1a87e020db054f2d1c94">apr_brigade_pflatten</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *bb, </div><div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;                                               <span class="keywordtype">char</span> **c,</div><div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;                                               apr_size_t *len,</div><div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;                                               apr_pool_t *pool);</div><div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;</div><div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;APU_DECLARE(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga257dece60dbdc910bc09e1fc0d7db622">apr_brigade_split_line</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *bbOut,</div><div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;                                                 <a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *bbIn,</div><div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;                                                 <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga756973fb6392bd1026c3d96b4519776d">apr_read_type_e</a> block,</div><div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;                                                 apr_off_t maxbytes);</div><div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;</div><div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;APU_DECLARE(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga904bdc4a9a9c800d2d2b20b4ddefa6f7">apr_brigade_to_iovec</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *b, </div><div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;                                               <span class="keyword">struct</span> iovec *vec, <span class="keywordtype">int</span> *nvec);</div><div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;</div><div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;APU_DECLARE(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga382871c1aec5cf9fbbcf19d67cff6b43">apr_brigade_vputstrs</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *b,</div><div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160;                                               <a class="code" href="group___a_p_r___util___bucket___brigades.html#gafa0dbcd060e2e432406052e4d7c96204">apr_brigade_flush</a> flush,</div><div class="line"><a name="l00802"></a><span class="lineno">  802</span>&#160;                                               <span class="keywordtype">void</span> *ctx,</div><div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160;                                               va_list va);</div><div class="line"><a name="l00804"></a><span class="lineno">  804</span>&#160;</div><div class="line"><a name="l00828"></a><span class="lineno">  828</span>&#160;APU_DECLARE(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga7242dae50995fc1a9174476ca3053d99">apr_brigade_write</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *b,</div><div class="line"><a name="l00829"></a><span class="lineno">  829</span>&#160;                                            <a class="code" href="group___a_p_r___util___bucket___brigades.html#gafa0dbcd060e2e432406052e4d7c96204">apr_brigade_flush</a> flush, <span class="keywordtype">void</span> *ctx,</div><div class="line"><a name="l00830"></a><span class="lineno">  830</span>&#160;                                            <span class="keyword">const</span> <span class="keywordtype">char</span> *str, apr_size_t nbyte);</div><div class="line"><a name="l00831"></a><span class="lineno">  831</span>&#160;</div><div class="line"><a name="l00841"></a><span class="lineno">  841</span>&#160;APU_DECLARE(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gafc116a4359b717cd3a78a19ddf169486">apr_brigade_writev</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *b,</div><div class="line"><a name="l00842"></a><span class="lineno">  842</span>&#160;                                             <a class="code" href="group___a_p_r___util___bucket___brigades.html#gafa0dbcd060e2e432406052e4d7c96204">apr_brigade_flush</a> flush,</div><div class="line"><a name="l00843"></a><span class="lineno">  843</span>&#160;                                             <span class="keywordtype">void</span> *ctx,</div><div class="line"><a name="l00844"></a><span class="lineno">  844</span>&#160;                                             <span class="keyword">const</span> <span class="keyword">struct</span> iovec *vec,</div><div class="line"><a name="l00845"></a><span class="lineno">  845</span>&#160;                                             apr_size_t nvec);</div><div class="line"><a name="l00846"></a><span class="lineno">  846</span>&#160;</div><div class="line"><a name="l00855"></a><span class="lineno">  855</span>&#160;APU_DECLARE(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga2d1fed26db94e3006223098737a06f5a">apr_brigade_puts</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *bb,</div><div class="line"><a name="l00856"></a><span class="lineno">  856</span>&#160;                                           <a class="code" href="group___a_p_r___util___bucket___brigades.html#gafa0dbcd060e2e432406052e4d7c96204">apr_brigade_flush</a> flush, <span class="keywordtype">void</span> *ctx,</div><div class="line"><a name="l00857"></a><span class="lineno">  857</span>&#160;                                           <span class="keyword">const</span> <span class="keywordtype">char</span> *str);</div><div class="line"><a name="l00858"></a><span class="lineno">  858</span>&#160;</div><div class="line"><a name="l00867"></a><span class="lineno">  867</span>&#160;APU_DECLARE(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga362999cb255297fd0fd433f03236302d">apr_brigade_putc</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *b,</div><div class="line"><a name="l00868"></a><span class="lineno">  868</span>&#160;                                           <a class="code" href="group___a_p_r___util___bucket___brigades.html#gafa0dbcd060e2e432406052e4d7c96204">apr_brigade_flush</a> flush, <span class="keywordtype">void</span> *ctx,</div><div class="line"><a name="l00869"></a><span class="lineno">  869</span>&#160;                                           <span class="keyword">const</span> <span class="keywordtype">char</span> c);</div><div class="line"><a name="l00870"></a><span class="lineno">  870</span>&#160;</div><div class="line"><a name="l00879"></a><span class="lineno">  879</span>&#160;APU_DECLARE_NONSTD(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga1f27949d92196cbf150b7d6256cbf4b7">apr_brigade_putstrs</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *b,</div><div class="line"><a name="l00880"></a><span class="lineno">  880</span>&#160;                                                     <a class="code" href="group___a_p_r___util___bucket___brigades.html#gafa0dbcd060e2e432406052e4d7c96204">apr_brigade_flush</a> flush,</div><div class="line"><a name="l00881"></a><span class="lineno">  881</span>&#160;                                                     <span class="keywordtype">void</span> *ctx, ...);</div><div class="line"><a name="l00882"></a><span class="lineno">  882</span>&#160;</div><div class="line"><a name="l00893"></a><span class="lineno">  893</span>&#160;APU_DECLARE_NONSTD(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga4120ba3834c545db3b9229d858e33b47">apr_brigade_printf</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *b, </div><div class="line"><a name="l00894"></a><span class="lineno">  894</span>&#160;                                                    <a class="code" href="group___a_p_r___util___bucket___brigades.html#gafa0dbcd060e2e432406052e4d7c96204">apr_brigade_flush</a> flush,</div><div class="line"><a name="l00895"></a><span class="lineno">  895</span>&#160;                                                    <span class="keywordtype">void</span> *ctx,</div><div class="line"><a name="l00896"></a><span class="lineno">  896</span>&#160;                                                    <span class="keyword">const</span> <span class="keywordtype">char</span> *fmt, ...)</div><div class="line"><a name="l00897"></a><span class="lineno">  897</span>&#160;        __attribute__((format(printf,4,5)));</div><div class="line"><a name="l00898"></a><span class="lineno">  898</span>&#160;</div><div class="line"><a name="l00909"></a><span class="lineno">  909</span>&#160;APU_DECLARE(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9e1af8c10946264e1bb37a3f56e4bfd8">apr_brigade_vprintf</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *b, </div><div class="line"><a name="l00910"></a><span class="lineno">  910</span>&#160;                                              <a class="code" href="group___a_p_r___util___bucket___brigades.html#gafa0dbcd060e2e432406052e4d7c96204">apr_brigade_flush</a> flush,</div><div class="line"><a name="l00911"></a><span class="lineno">  911</span>&#160;                                              <span class="keywordtype">void</span> *ctx,</div><div class="line"><a name="l00912"></a><span class="lineno">  912</span>&#160;                                              const <span class="keywordtype">char</span> *fmt, va_list va);</div><div class="line"><a name="l00913"></a><span class="lineno">  913</span>&#160;</div><div class="line"><a name="l00926"></a><span class="lineno">  926</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga7c4981f7050333a181e440e753c20555">apr_brigade_insert_file</a>(<a class="code" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> *bb,</div><div class="line"><a name="l00927"></a><span class="lineno">  927</span>&#160;                                                  apr_file_t *f,</div><div class="line"><a name="l00928"></a><span class="lineno">  928</span>&#160;                                                  apr_off_t start,</div><div class="line"><a name="l00929"></a><span class="lineno">  929</span>&#160;                                                  apr_off_t len,</div><div class="line"><a name="l00930"></a><span class="lineno">  930</span>&#160;                                                  apr_pool_t *p);</div><div class="line"><a name="l00931"></a><span class="lineno">  931</span>&#160;</div><div class="line"><a name="l00932"></a><span class="lineno">  932</span>&#160;</div><div class="line"><a name="l00933"></a><span class="lineno">  933</span>&#160;</div><div class="line"><a name="l00934"></a><span class="lineno">  934</span>&#160;<span class="comment">/*  *****  Bucket freelist functions *****  */</span></div><div class="line"><a name="l00948"></a><span class="lineno">  948</span>&#160;APU_DECLARE_NONSTD(<a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga2d96fa729a17a86dc5221958e8c13c96">apr_bucket_alloc_create</a>(apr_pool_t *p);</div><div class="line"><a name="l00949"></a><span class="lineno">  949</span>&#160;</div><div class="line"><a name="l00958"></a><span class="lineno">  958</span>&#160;APU_DECLARE_NONSTD(<a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga252642139099350d0b987889d5c0868c">apr_bucket_alloc_create_ex</a>(apr_allocator_t *allocator);</div><div class="line"><a name="l00959"></a><span class="lineno">  959</span>&#160;</div><div class="line"><a name="l00964"></a><span class="lineno">  964</span>&#160;APU_DECLARE_NONSTD(<span class="keywordtype">void</span>) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gaf5eb58cc232851c8449ba1d98d049a0a">apr_bucket_alloc_destroy</a>(<a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *list);</div><div class="line"><a name="l00965"></a><span class="lineno">  965</span>&#160;</div><div class="line"><a name="l00974"></a><span class="lineno">  974</span>&#160;APU_DECLARE_NONSTD(apr_size_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gaaed4421317b76d9d3458ded3d5b6eb05">apr_bucket_alloc_aligned_floor</a>(<a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *list,</div><div class="line"><a name="l00975"></a><span class="lineno">  975</span>&#160;                                                              apr_size_t size)</div><div class="line"><a name="l00976"></a><span class="lineno">  976</span>&#160;                         __attribute__((nonnull(1)));</div><div class="line"><a name="l00977"></a><span class="lineno">  977</span>&#160;</div><div class="line"><a name="l00983"></a><span class="lineno">  983</span>&#160;APU_DECLARE_NONSTD(<span class="keywordtype">void</span> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gae47c2235a3740432f4a0990fccfe4102">apr_bucket_alloc</a>(apr_size_t size, <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *list);</div><div class="line"><a name="l00984"></a><span class="lineno">  984</span>&#160;</div><div class="line"><a name="l00989"></a><span class="lineno">  989</span>&#160;APU_DECLARE_NONSTD(<span class="keywordtype">void</span>) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga951beb3a8249648214e130ab06275a3a">apr_bucket_free</a>(<span class="keywordtype">void</span> *block);</div><div class="line"><a name="l00990"></a><span class="lineno">  990</span>&#160;</div><div class="line"><a name="l00991"></a><span class="lineno">  991</span>&#160;</div><div class="line"><a name="l00992"></a><span class="lineno">  992</span>&#160;<span class="comment">/*  *****  Bucket Functions  *****  */</span></div><div class="line"><a name="l00999"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#gafc0dae1e90a798284ed777a0c9e90ec6">  999</a></span>&#160;<span class="preprocessor">#define apr_bucket_destroy(e) do {                  \</span></div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;<span class="preprocessor">        (e)-&gt;type-&gt;destroy((e)-&gt;data);                  \</span></div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;<span class="preprocessor">        (e)-&gt;free(e);                           \</span></div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160;<span class="preprocessor">    } while (0)</span></div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160;</div><div class="line"><a name="l01015"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga8925c02a7f95e8c1c3986294d4678797"> 1015</a></span>&#160;<span class="preprocessor">#define apr_bucket_delete(e) do {                   \</span></div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160;<span class="preprocessor">        APR_BUCKET_REMOVE(e);                       \</span></div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160;<span class="preprocessor">        apr_bucket_destroy(e);                      \</span></div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160;<span class="preprocessor">    } while (0)</span></div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160;</div><div class="line"><a name="l01087"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#gae44ae938c6c60e148430fdb098dcf28f"> 1087</a></span>&#160;<span class="preprocessor">#define apr_bucket_read(e,str,len,block) (e)-&gt;type-&gt;read(e, str, len, block)</span></div><div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160;</div><div class="line"><a name="l01095"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#gab00941ffd472982693eb415a964de7af"> 1095</a></span>&#160;<span class="preprocessor">#define apr_bucket_setaside(e,p) (e)-&gt;type-&gt;setaside(e,p)</span></div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160;</div><div class="line"><a name="l01107"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#ga5bb8827a8dd1baa6ac32682e13e9d8c2"> 1107</a></span>&#160;<span class="preprocessor">#define apr_bucket_split(e,point) (e)-&gt;type-&gt;split(e, point)</span></div><div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160;</div><div class="line"><a name="l01114"></a><span class="lineno"><a class="line" href="group___a_p_r___util___bucket___brigades.html#gab33cc08b7f064d06397f312e427279c3"> 1114</a></span>&#160;<span class="preprocessor">#define apr_bucket_copy(e,c) (e)-&gt;type-&gt;copy(e, c)</span></div><div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>&#160;</div><div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160;<span class="comment">/* Bucket type handling */</span></div><div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160;</div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160;APU_DECLARE_NONSTD(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gae6135b83d9f7bd7e1b60dbc761a3ca5f">apr_bucket_setaside_noop</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *data,</div><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160;                                                          apr_pool_t *pool);</div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160;</div><div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160;APU_DECLARE_NONSTD(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gade52b057161f657a6b298d9c6a78b339">apr_bucket_setaside_notimpl</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *data,</div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160;                                                             apr_pool_t *pool);</div><div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>&#160;</div><div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160;APU_DECLARE_NONSTD(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga305766ff39440711da93e72f5b348a3a">apr_bucket_split_notimpl</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *data,</div><div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160;                                                          apr_size_t point);</div><div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160;</div><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160;APU_DECLARE_NONSTD(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga5fc17c10cee2abf02557669f6f507e89">apr_bucket_copy_notimpl</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *e,</div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160;                                                         <a class="code" href="structapr__bucket.html">apr_bucket</a> **c);</div><div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160;</div><div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160;APU_DECLARE_NONSTD(<span class="keywordtype">void</span>) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga09221bea9541ca2340a4e8b5e1e7ac56">apr_bucket_destroy_noop</a>(<span class="keywordtype">void</span> *data);</div><div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160;</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160;<span class="comment">/* There is no apr_bucket_read_notimpl, because it is a required function</span></div><div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160;</div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160;</div><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160;<span class="comment">/* All of the bucket types implemented by the core */</span></div><div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160;APU_DECLARE_DATA <span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structapr__bucket__type__t.html">apr_bucket_type_t</a> <a class="code" href="group___a_p_r___util___bucket___brigades.html#gaecc113cfcc7751dfe70876437a2f51d7">apr_bucket_type_flush</a>;</div><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160;APU_DECLARE_DATA <span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structapr__bucket__type__t.html">apr_bucket_type_t</a> <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga829cac9b4843b85a902ddd64dffbfb12">apr_bucket_type_eos</a>;</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160;APU_DECLARE_DATA <span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structapr__bucket__type__t.html">apr_bucket_type_t</a> <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga5f17aa7e616179411a06475ec09626e9">apr_bucket_type_file</a>;</div><div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>&#160;APU_DECLARE_DATA <span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structapr__bucket__type__t.html">apr_bucket_type_t</a> <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga2c5608267ed7b860657f5a1c89c2f40d">apr_bucket_type_heap</a>;</div><div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#160;<span class="preprocessor">#if APR_HAS_MMAP</span></div><div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>&#160;</div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160;APU_DECLARE_DATA <span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structapr__bucket__type__t.html">apr_bucket_type_t</a> <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga63f9ce8e4d6e796921aad14a218a3b23">apr_bucket_type_mmap</a>;</div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160;</div><div class="line"><a name="l01213"></a><span class="lineno"> 1213</span>&#160;APU_DECLARE_DATA <span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structapr__bucket__type__t.html">apr_bucket_type_t</a> <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga87bace819fdbf07c12497a8289b3567b">apr_bucket_type_pool</a>;</div><div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>&#160;APU_DECLARE_DATA <span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structapr__bucket__type__t.html">apr_bucket_type_t</a> <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga334a875abb2908364a40abbfa80c401f">apr_bucket_type_pipe</a>;</div><div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160;APU_DECLARE_DATA <span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structapr__bucket__type__t.html">apr_bucket_type_t</a> <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga391ac24b2c85969e8efa504588b364bb">apr_bucket_type_immortal</a>;</div><div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>&#160;APU_DECLARE_DATA <span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structapr__bucket__type__t.html">apr_bucket_type_t</a> <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga1692ced61c1966e67adc05ec2a69ce9b">apr_bucket_type_transient</a>;</div><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160;APU_DECLARE_DATA <span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structapr__bucket__type__t.html">apr_bucket_type_t</a> <a class="code" href="group___a_p_r___util___bucket___brigades.html#gaa6d9978cc10895bdf0a4686728822a84">apr_bucket_type_socket</a>;</div><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160;</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160;</div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160;<span class="comment">/*  *****  Simple buckets  *****  */</span></div><div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>&#160;</div><div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>&#160;APU_DECLARE_NONSTD(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9fd8c7d9e42dd04b8f153072655e875c">apr_bucket_simple_split</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *b,</div><div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>&#160;                                                         apr_size_t point);</div><div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>&#160;</div><div class="line"><a name="l01262"></a><span class="lineno"> 1262</span>&#160;APU_DECLARE_NONSTD(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga123c95e832734f92e6f1139b6a68cfa6">apr_bucket_simple_copy</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *a,</div><div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>&#160;                                                        <a class="code" href="structapr__bucket.html">apr_bucket</a> **b);</div><div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>&#160;</div><div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>&#160;</div><div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160;<span class="comment">/*  *****  Shared, reference-counted buckets  *****  */</span></div><div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>&#160;</div><div class="line"><a name="l01282"></a><span class="lineno"> 1282</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga562251ac5776e88f7384158b85e74be8">apr_bucket_shared_make</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *b, <span class="keywordtype">void</span> *data,</div><div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>&#160;                                 apr_off_t start, </div><div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>&#160;                                                 apr_size_t length);</div><div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>&#160;</div><div class="line"><a name="l01294"></a><span class="lineno"> 1294</span>&#160;APU_DECLARE(<span class="keywordtype">int</span>) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga43c7dc7e3eb961a91bbc0b69a47e503c">apr_bucket_shared_destroy</a>(<span class="keywordtype">void</span> *data);</div><div class="line"><a name="l01295"></a><span class="lineno"> 1295</span>&#160;</div><div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>&#160;APU_DECLARE_NONSTD(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga871e54ba20487a2085a73a673ffa4110">apr_bucket_shared_split</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *b,</div><div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>&#160;                                                         apr_size_t point);</div><div class="line"><a name="l01309"></a><span class="lineno"> 1309</span>&#160;</div><div class="line"><a name="l01319"></a><span class="lineno"> 1319</span>&#160;APU_DECLARE_NONSTD(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga2e9a035d340ef6b4279b178eff614670">apr_bucket_shared_copy</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *a,</div><div class="line"><a name="l01320"></a><span class="lineno"> 1320</span>&#160;                                                        <a class="code" href="structapr__bucket.html">apr_bucket</a> **b);</div><div class="line"><a name="l01321"></a><span class="lineno"> 1321</span>&#160;</div><div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>&#160;</div><div class="line"><a name="l01323"></a><span class="lineno"> 1323</span>&#160;<span class="comment">/*  *****  Functions to Create Buckets of varying types  *****  */</span></div><div class="line"><a name="l01324"></a><span class="lineno"> 1324</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l01325"></a><span class="lineno"> 1325</span>&#160;<span class="comment"> * Each bucket type foo has two initialization functions:</span></div><div class="line"><a name="l01326"></a><span class="lineno"> 1326</span>&#160;<span class="comment"> * apr_bucket_foo_make which sets up some already-allocated memory as a</span></div><div class="line"><a name="l01327"></a><span class="lineno"> 1327</span>&#160;<span class="comment"> * bucket of type foo; and apr_bucket_foo_create which allocates memory</span></div><div class="line"><a name="l01328"></a><span class="lineno"> 1328</span>&#160;<span class="comment"> * for the bucket, calls apr_bucket_make_foo, and initializes the</span></div><div class="line"><a name="l01329"></a><span class="lineno"> 1329</span>&#160;<span class="comment"> * bucket&#39;s list pointers. The apr_bucket_foo_make functions are used</span></div><div class="line"><a name="l01330"></a><span class="lineno"> 1330</span>&#160;<span class="comment"> * inside the bucket code to change the type of buckets in place;</span></div><div class="line"><a name="l01331"></a><span class="lineno"> 1331</span>&#160;<span class="comment"> * other code should call apr_bucket_foo_create. All the initialization</span></div><div class="line"><a name="l01332"></a><span class="lineno"> 1332</span>&#160;<span class="comment"> * functions change nothing if they fail.</span></div><div class="line"><a name="l01333"></a><span class="lineno"> 1333</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l01334"></a><span class="lineno"> 1334</span>&#160;</div><div class="line"><a name="l01341"></a><span class="lineno"> 1341</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gaac308b459ecdab87e94b12adad1b8760">apr_bucket_eos_create</a>(<a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *list);</div><div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>&#160;</div><div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga06312ba339cb0ec1844b698d30e754c4">apr_bucket_eos_make</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *b);</div><div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>&#160;</div><div class="line"><a name="l01359"></a><span class="lineno"> 1359</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga48347f3f7d5738cdb61fe35c25c09666">apr_bucket_flush_create</a>(<a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *list);</div><div class="line"><a name="l01360"></a><span class="lineno"> 1360</span>&#160;</div><div class="line"><a name="l01368"></a><span class="lineno"> 1368</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gaee543b95249a320a27ae9bb03e2c4f23">apr_bucket_flush_make</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *b);</div><div class="line"><a name="l01369"></a><span class="lineno"> 1369</span>&#160;</div><div class="line"><a name="l01377"></a><span class="lineno"> 1377</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gad81543da24b144c0e100dd1e6d843adb">apr_bucket_immortal_create</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *buf, </div><div class="line"><a name="l01378"></a><span class="lineno"> 1378</span>&#160;                                                     apr_size_t nbyte,</div><div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>&#160;                                                     <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *list);</div><div class="line"><a name="l01380"></a><span class="lineno"> 1380</span>&#160;</div><div class="line"><a name="l01388"></a><span class="lineno"> 1388</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga33b21eb55cad9d28b5cdd40ad4181774">apr_bucket_immortal_make</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *b, </div><div class="line"><a name="l01389"></a><span class="lineno"> 1389</span>&#160;                                                   <span class="keyword">const</span> <span class="keywordtype">char</span> *buf, </div><div class="line"><a name="l01390"></a><span class="lineno"> 1390</span>&#160;                                                   apr_size_t nbyte);</div><div class="line"><a name="l01391"></a><span class="lineno"> 1391</span>&#160;</div><div class="line"><a name="l01399"></a><span class="lineno"> 1399</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga554f2d87c718f30a9259d52c6f81a405">apr_bucket_transient_create</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *buf, </div><div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>&#160;                                                      apr_size_t nbyte,</div><div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>&#160;                                                      <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *list);</div><div class="line"><a name="l01402"></a><span class="lineno"> 1402</span>&#160;</div><div class="line"><a name="l01410"></a><span class="lineno"> 1410</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga7e1f9a0ae64781ff4430d08c25e6e831">apr_bucket_transient_make</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *b, </div><div class="line"><a name="l01411"></a><span class="lineno"> 1411</span>&#160;                                                    <span class="keyword">const</span> <span class="keywordtype">char</span> *buf,</div><div class="line"><a name="l01412"></a><span class="lineno"> 1412</span>&#160;                                                    apr_size_t nbyte);</div><div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>&#160;</div><div class="line"><a name="l01428"></a><span class="lineno"> 1428</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gadde6843cfe311a60d290adc1d6635cac">apr_bucket_heap_create</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *buf, </div><div class="line"><a name="l01429"></a><span class="lineno"> 1429</span>&#160;                                                 apr_size_t nbyte,</div><div class="line"><a name="l01430"></a><span class="lineno"> 1430</span>&#160;                                                 <span class="keywordtype">void</span> (*free_func)(<span class="keywordtype">void</span> *data),</div><div class="line"><a name="l01431"></a><span class="lineno"> 1431</span>&#160;                                                 <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *list);</div><div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga71de285204d21507420068f05b12a541">apr_bucket_heap_make</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *b, <span class="keyword">const</span> <span class="keywordtype">char</span> *buf,</div><div class="line"><a name="l01442"></a><span class="lineno"> 1442</span>&#160;                                               apr_size_t nbyte,</div><div class="line"><a name="l01443"></a><span class="lineno"> 1443</span>&#160;                                               <span class="keywordtype">void</span> (*free_func)(<span class="keywordtype">void</span> *data));</div><div class="line"><a name="l01444"></a><span class="lineno"> 1444</span>&#160;</div><div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga154ea763ee9de4ccb8692b9e3b60ebb2">apr_bucket_pool_create</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *buf, </div><div class="line"><a name="l01455"></a><span class="lineno"> 1455</span>&#160;                                                 apr_size_t length,</div><div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>&#160;                                                 apr_pool_t *pool,</div><div class="line"><a name="l01457"></a><span class="lineno"> 1457</span>&#160;                                                 <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *list);</div><div class="line"><a name="l01458"></a><span class="lineno"> 1458</span>&#160;</div><div class="line"><a name="l01467"></a><span class="lineno"> 1467</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga01197c5b2cda6382354628cecdeae145">apr_bucket_pool_make</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *b, <span class="keyword">const</span> <span class="keywordtype">char</span> *buf,</div><div class="line"><a name="l01468"></a><span class="lineno"> 1468</span>&#160;                                               apr_size_t length, </div><div class="line"><a name="l01469"></a><span class="lineno"> 1469</span>&#160;                                               apr_pool_t *pool);</div><div class="line"><a name="l01470"></a><span class="lineno"> 1470</span>&#160;</div><div class="line"><a name="l01471"></a><span class="lineno"> 1471</span>&#160;<span class="preprocessor">#if APR_HAS_MMAP</span></div><div class="line"><a name="l01472"></a><span class="lineno"> 1472</span>&#160;</div><div class="line"><a name="l01481"></a><span class="lineno"> 1481</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gaee338c7d218ce1fbbf8c1aefedcc0632">apr_bucket_mmap_create</a>(apr_mmap_t *mm, </div><div class="line"><a name="l01482"></a><span class="lineno"> 1482</span>&#160;                                                 apr_off_t start,</div><div class="line"><a name="l01483"></a><span class="lineno"> 1483</span>&#160;                                                 apr_size_t length,</div><div class="line"><a name="l01484"></a><span class="lineno"> 1484</span>&#160;                                                 <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *list);</div><div class="line"><a name="l01485"></a><span class="lineno"> 1485</span>&#160;</div><div class="line"><a name="l01495"></a><span class="lineno"> 1495</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gab561ac92d1811e5a2589783536e64a1a">apr_bucket_mmap_make</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *b, apr_mmap_t *mm,</div><div class="line"><a name="l01496"></a><span class="lineno"> 1496</span>&#160;                                               apr_off_t start, </div><div class="line"><a name="l01497"></a><span class="lineno"> 1497</span>&#160;                                               apr_size_t length);</div><div class="line"><a name="l01498"></a><span class="lineno"> 1498</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01499"></a><span class="lineno"> 1499</span>&#160;</div><div class="line"><a name="l01506"></a><span class="lineno"> 1506</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gacd9f08b40eb2204cd93b42e58338aeb2">apr_bucket_socket_create</a>(apr_socket_t *thissock,</div><div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>&#160;                                                   <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *list);</div><div class="line"><a name="l01514"></a><span class="lineno"> 1514</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga2fffd4c4701ad55c6df27cdee0c47200">apr_bucket_socket_make</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *b, </div><div class="line"><a name="l01515"></a><span class="lineno"> 1515</span>&#160;                                                 apr_socket_t *thissock);</div><div class="line"><a name="l01516"></a><span class="lineno"> 1516</span>&#160;</div><div class="line"><a name="l01523"></a><span class="lineno"> 1523</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gab9ea07d5f9246e06c1bb3e76ee90cd71">apr_bucket_pipe_create</a>(apr_file_t *thispipe,</div><div class="line"><a name="l01524"></a><span class="lineno"> 1524</span>&#160;                                                 <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *list);</div><div class="line"><a name="l01525"></a><span class="lineno"> 1525</span>&#160;</div><div class="line"><a name="l01532"></a><span class="lineno"> 1532</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gae7b4daa1318226beda4bf0eead2f5582">apr_bucket_pipe_make</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *b, </div><div class="line"><a name="l01533"></a><span class="lineno"> 1533</span>&#160;                                               apr_file_t *thispipe);</div><div class="line"><a name="l01534"></a><span class="lineno"> 1534</span>&#160;</div><div class="line"><a name="l01551"></a><span class="lineno"> 1551</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga421f96e8e9387a9c27fe010ebdee0202">apr_bucket_file_create</a>(apr_file_t *fd,</div><div class="line"><a name="l01552"></a><span class="lineno"> 1552</span>&#160;                                                 apr_off_t offset,</div><div class="line"><a name="l01553"></a><span class="lineno"> 1553</span>&#160;                                                 apr_size_t len, </div><div class="line"><a name="l01554"></a><span class="lineno"> 1554</span>&#160;                                                 apr_pool_t *p,</div><div class="line"><a name="l01555"></a><span class="lineno"> 1555</span>&#160;                                                 <a class="code" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *list);</div><div class="line"><a name="l01556"></a><span class="lineno"> 1556</span>&#160;</div><div class="line"><a name="l01567"></a><span class="lineno"> 1567</span>&#160;APU_DECLARE(<a class="code" href="structapr__bucket.html">apr_bucket</a> *) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gacb716dea400092f2f8c84a3f0f6d3a10">apr_bucket_file_make</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *b, apr_file_t *fd,</div><div class="line"><a name="l01568"></a><span class="lineno"> 1568</span>&#160;                                               apr_off_t offset,</div><div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>&#160;                                               apr_size_t len, apr_pool_t *p);</div><div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>&#160;</div><div class="line"><a name="l01577"></a><span class="lineno"> 1577</span>&#160;APU_DECLARE(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gab18ee46f66634c35ad79b6a74559cbb8">apr_bucket_file_enable_mmap</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *b,</div><div class="line"><a name="l01578"></a><span class="lineno"> 1578</span>&#160;                                                      <span class="keywordtype">int</span> enabled);</div><div class="line"><a name="l01579"></a><span class="lineno"> 1579</span>&#160;</div><div class="line"><a name="l01590"></a><span class="lineno"> 1590</span>&#160;APU_DECLARE(apr_status_t) <a class="code" href="group___a_p_r___util___bucket___brigades.html#gafa315bc20da89857af5cc2f3f27c54af">apr_bucket_file_set_buf_size</a>(<a class="code" href="structapr__bucket.html">apr_bucket</a> *e,</div><div class="line"><a name="l01591"></a><span class="lineno"> 1591</span>&#160;                                                       apr_size_t size);</div><div class="line"><a name="l01592"></a><span class="lineno"> 1592</span>&#160;</div><div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l01595"></a><span class="lineno"> 1595</span>&#160;}</div><div class="line"><a name="l01596"></a><span class="lineno"> 1596</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>&#160;</div><div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* !APR_BUCKETS_H */</span><span class="preprocessor"></span></div><div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga48347f3f7d5738cdb61fe35c25c09666"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga48347f3f7d5738cdb61fe35c25c09666">apr_bucket_flush_create</a></div><div class="ttdeci">apr_bucket * apr_bucket_flush_create(apr_bucket_alloc_t *list)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga257dece60dbdc910bc09e1fc0d7db622"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga257dece60dbdc910bc09e1fc0d7db622">apr_brigade_split_line</a></div><div class="ttdeci">apr_status_t apr_brigade_split_line(apr_bucket_brigade *bbOut, apr_bucket_brigade *bbIn, apr_read_type_e block, apr_off_t maxbytes)</div></div>
<div class="ttc" id="structapr__bucket__file_html_aa43154c0bc9d41ba4b0762c906de432f"><div class="ttname"><a href="structapr__bucket__file.html#aa43154c0bc9d41ba4b0762c906de432f">apr_bucket_file::fd</a></div><div class="ttdeci">apr_file_t * fd</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:616</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga5fc17c10cee2abf02557669f6f507e89"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga5fc17c10cee2abf02557669f6f507e89">apr_bucket_copy_notimpl</a></div><div class="ttdeci">apr_status_t apr_bucket_copy_notimpl(apr_bucket *e, apr_bucket **c)</div></div>
<div class="ttc" id="structapr__bucket__heap_html"><div class="ttname"><a href="structapr__bucket__heap.html">apr_bucket_heap</a></div><div class="ttdef"><b>Definition:</b> apr_buckets.h:543</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga1f27949d92196cbf150b7d6256cbf4b7"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga1f27949d92196cbf150b7d6256cbf4b7">apr_brigade_putstrs</a></div><div class="ttdeci">apr_status_t apr_brigade_putstrs(apr_bucket_brigade *b, apr_brigade_flush flush, void *ctx,...)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gade52b057161f657a6b298d9c6a78b339"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gade52b057161f657a6b298d9c6a78b339">apr_bucket_setaside_notimpl</a></div><div class="ttdeci">apr_status_t apr_bucket_setaside_notimpl(apr_bucket *data, apr_pool_t *pool)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga33b21eb55cad9d28b5cdd40ad4181774"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga33b21eb55cad9d28b5cdd40ad4181774">apr_bucket_immortal_make</a></div><div class="ttdeci">apr_bucket * apr_bucket_immortal_make(apr_bucket *b, const char *buf, apr_size_t nbyte)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gafa315bc20da89857af5cc2f3f27c54af"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gafa315bc20da89857af5cc2f3f27c54af">apr_bucket_file_set_buf_size</a></div><div class="ttdeci">apr_status_t apr_bucket_file_set_buf_size(apr_bucket *e, apr_size_t size)</div></div>
<div class="ttc" id="structapr__bucket__heap_html_ac6386e2f635c6af19075123749e1fa71"><div class="ttname"><a href="structapr__bucket__heap.html#ac6386e2f635c6af19075123749e1fa71">apr_bucket_heap::base</a></div><div class="ttdeci">char * base</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:549</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga4120ba3834c545db3b9229d858e33b47"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga4120ba3834c545db3b9229d858e33b47">apr_brigade_printf</a></div><div class="ttdeci">apr_status_t apr_brigade_printf(apr_bucket_brigade *b, apr_brigade_flush flush, void *ctx, const char *fmt,...)</div></div>
<div class="ttc" id="structapr__bucket_html_a7fc4604750889b3f762bda1a786d276a"><div class="ttname"><a href="structapr__bucket.html#a7fc4604750889b3f762bda1a786d276a">apr_bucket::data</a></div><div class="ttdeci">void * data</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:244</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gaac308b459ecdab87e94b12adad1b8760"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gaac308b459ecdab87e94b12adad1b8760">apr_bucket_eos_create</a></div><div class="ttdeci">apr_bucket * apr_bucket_eos_create(apr_bucket_alloc_t *list)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga87bace819fdbf07c12497a8289b3567b"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga87bace819fdbf07c12497a8289b3567b">apr_bucket_type_pool</a></div><div class="ttdeci">const apr_bucket_type_t apr_bucket_type_pool</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga9e1af8c10946264e1bb37a3f56e4bfd8"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga9e1af8c10946264e1bb37a3f56e4bfd8">apr_brigade_vprintf</a></div><div class="ttdeci">apr_status_t apr_brigade_vprintf(apr_bucket_brigade *b, apr_brigade_flush flush, void *ctx, const char *fmt, va_list va)</div></div>
<div class="ttc" id="structapr__bucket_html_ab1acff965e57e067dfde80321d04dea7"><div class="ttname"><a href="structapr__bucket.html#ab1acff965e57e067dfde80321d04dea7">apr_bucket::APR_RING_ENTRY</a></div><div class="ttdeci">APR_RING_ENTRY(apr_bucket) link</div></div>
<div class="ttc" id="structapr__bucket__file_html_a7812a8d6e6f10d0095569f04d3423e83"><div class="ttname"><a href="structapr__bucket__file.html#a7812a8d6e6f10d0095569f04d3423e83">apr_bucket_file::can_mmap</a></div><div class="ttdeci">int can_mmap</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:623</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga334a875abb2908364a40abbfa80c401f"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga334a875abb2908364a40abbfa80c401f">apr_bucket_type_pipe</a></div><div class="ttdeci">const apr_bucket_type_t apr_bucket_type_pipe</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga7242dae50995fc1a9174476ca3053d99"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga7242dae50995fc1a9174476ca3053d99">apr_brigade_write</a></div><div class="ttdeci">apr_status_t apr_brigade_write(apr_bucket_brigade *b, apr_brigade_flush flush, void *ctx, const char *str, apr_size_t nbyte)</div></div>
<div class="ttc" id="structapr__bucket__type__t_html_a34cef542a8eee5bb734ba8dcd8329711"><div class="ttname"><a href="structapr__bucket__type__t.html#a34cef542a8eee5bb734ba8dcd8329711">apr_bucket_type_t::is_metadata</a></div><div class="ttdeci">enum apr_bucket_type_t::@0 is_metadata</div></div>
<div class="ttc" id="structapr__bucket__type__t_html_aee86765d7fdffddb1d98a45e968ee937"><div class="ttname"><a href="structapr__bucket__type__t.html#aee86765d7fdffddb1d98a45e968ee937">apr_bucket_type_t::setaside</a></div><div class="ttdeci">apr_status_t(* setaside)(apr_bucket *e, apr_pool_t *pool)</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:192</div></div>
<div class="ttc" id="structapr__bucket__file_html"><div class="ttname"><a href="structapr__bucket__file.html">apr_bucket_file</a></div><div class="ttdef"><b>Definition:</b> apr_buckets.h:612</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga382871c1aec5cf9fbbcf19d67cff6b43"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga382871c1aec5cf9fbbcf19d67cff6b43">apr_brigade_vputstrs</a></div><div class="ttdeci">apr_status_t apr_brigade_vputstrs(apr_bucket_brigade *b, apr_brigade_flush flush, void *ctx, va_list va)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga06312ba339cb0ec1844b698d30e754c4"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga06312ba339cb0ec1844b698d30e754c4">apr_bucket_eos_make</a></div><div class="ttdeci">apr_bucket * apr_bucket_eos_make(apr_bucket *b)</div></div>
<div class="ttc" id="structapr__bucket__type__t_html_a4e6befb63427ae39290fe146b1b4e510"><div class="ttname"><a href="structapr__bucket__type__t.html#a4e6befb63427ae39290fe146b1b4e510">apr_bucket_type_t::read</a></div><div class="ttdeci">apr_status_t(* read)(apr_bucket *b, const char **str, apr_size_t *len, apr_read_type_e block)</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:176</div></div>
<div class="ttc" id="structapr__bucket__brigade_html_a9f58f90a088f02ebb6f935f004092aaa"><div class="ttname"><a href="structapr__bucket__brigade.html#a9f58f90a088f02ebb6f935f004092aaa">apr_bucket_brigade::bucket_alloc</a></div><div class="ttdeci">apr_bucket_alloc_t * bucket_alloc</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:275</div></div>
<div class="ttc" id="structapr__bucket__type__t_html_a2281bf6b0c4538d29567fc7ddb1ad085"><div class="ttname"><a href="structapr__bucket__type__t.html#a2281bf6b0c4538d29567fc7ddb1ad085">apr_bucket_type_t::split</a></div><div class="ttdeci">apr_status_t(* split)(apr_bucket *e, apr_size_t point)</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:203</div></div>
<div class="ttc" id="structapr__bucket__file_html_a61b5603482215f6c9ace7b26fa12b884"><div class="ttname"><a href="structapr__bucket__file.html#a61b5603482215f6c9ace7b26fa12b884">apr_bucket_file::readpool</a></div><div class="ttdeci">apr_pool_t * readpool</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:619</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gadde6843cfe311a60d290adc1d6635cac"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gadde6843cfe311a60d290adc1d6635cac">apr_bucket_heap_create</a></div><div class="ttdeci">apr_bucket * apr_bucket_heap_create(const char *buf, apr_size_t nbyte, void(*free_func)(void *data), apr_bucket_alloc_t *list)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga951beb3a8249648214e130ab06275a3a"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga951beb3a8249648214e130ab06275a3a">apr_bucket_free</a></div><div class="ttdeci">void apr_bucket_free(void *block)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gacd9f08b40eb2204cd93b42e58338aeb2"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gacd9f08b40eb2204cd93b42e58338aeb2">apr_bucket_socket_create</a></div><div class="ttdeci">apr_bucket * apr_bucket_socket_create(apr_socket_t *thissock, apr_bucket_alloc_t *list)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga1692ced61c1966e67adc05ec2a69ce9b"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga1692ced61c1966e67adc05ec2a69ce9b">apr_bucket_type_transient</a></div><div class="ttdeci">const apr_bucket_type_t apr_bucket_type_transient</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga756973fb6392bd1026c3d96b4519776d"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga756973fb6392bd1026c3d96b4519776d">apr_read_type_e</a></div><div class="ttdeci">apr_read_type_e</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:57</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga562251ac5776e88f7384158b85e74be8"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga562251ac5776e88f7384158b85e74be8">apr_bucket_shared_make</a></div><div class="ttdeci">apr_bucket * apr_bucket_shared_make(apr_bucket *b, void *data, apr_off_t start, apr_size_t length)</div></div>
<div class="ttc" id="structapr__bucket__brigade_html_a8e03b4dd531903709ae3ae8ebe9e46ee"><div class="ttname"><a href="structapr__bucket__brigade.html#a8e03b4dd531903709ae3ae8ebe9e46ee">apr_bucket_brigade::p</a></div><div class="ttdeci">apr_pool_t * p</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:264</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga65075839e31fd85e2c80717f4e9e0461"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga65075839e31fd85e2c80717f4e9e0461">apr_brigade_length</a></div><div class="ttdeci">apr_status_t apr_brigade_length(apr_bucket_brigade *bb, int read_all, apr_off_t *length)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gafc116a4359b717cd3a78a19ddf169486"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gafc116a4359b717cd3a78a19ddf169486">apr_brigade_writev</a></div><div class="ttdeci">apr_status_t apr_brigade_writev(apr_bucket_brigade *b, apr_brigade_flush flush, void *ctx, const struct iovec *vec, apr_size_t nvec)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga421f96e8e9387a9c27fe010ebdee0202"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga421f96e8e9387a9c27fe010ebdee0202">apr_bucket_file_create</a></div><div class="ttdeci">apr_bucket * apr_bucket_file_create(apr_file_t *fd, apr_off_t offset, apr_size_t len, apr_pool_t *p, apr_bucket_alloc_t *list)</div></div>
<div class="ttc" id="structapr__bucket__heap_html_ab87003dea25caef69aa3b30a1948024e"><div class="ttname"><a href="structapr__bucket__heap.html#ab87003dea25caef69aa3b30a1948024e">apr_bucket_heap::refcount</a></div><div class="ttdeci">apr_bucket_refcount refcount</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:545</div></div>
<div class="ttc" id="unionapr__bucket__structs_html_a840c42a20727de2e4534ca05f1f6c990"><div class="ttname"><a href="unionapr__bucket__structs.html#a840c42a20727de2e4534ca05f1f6c990">apr_bucket_structs::b</a></div><div class="ttdeci">apr_bucket b</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:636</div></div>
<div class="ttc" id="structapr__bucket__brigade_html"><div class="ttname"><a href="structapr__bucket__brigade.html">apr_bucket_brigade</a></div><div class="ttdef"><b>Definition:</b> apr_buckets.h:258</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga252642139099350d0b987889d5c0868c"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga252642139099350d0b987889d5c0868c">apr_bucket_alloc_create_ex</a></div><div class="ttdeci">apr_bucket_alloc_t * apr_bucket_alloc_create_ex(apr_allocator_t *allocator)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gaee543b95249a320a27ae9bb03e2c4f23"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gaee543b95249a320a27ae9bb03e2c4f23">apr_bucket_flush_make</a></div><div class="ttdeci">apr_bucket * apr_bucket_flush_make(apr_bucket *b)</div></div>
<div class="ttc" id="structapr__bucket__heap_html_ae373dada96f2e005a6aaf80e41c4cf6d"><div class="ttname"><a href="structapr__bucket__heap.html#ae373dada96f2e005a6aaf80e41c4cf6d">apr_bucket_heap::alloc_len</a></div><div class="ttdeci">apr_size_t alloc_len</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:551</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga9a30babfeb6e290db124d8f9b69e49e4"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a></div><div class="ttdeci">struct apr_bucket_alloc_t apr_bucket_alloc_t</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:123</div></div>
<div class="ttc" id="structapr__bucket__mmap_html_a99f201622002479f4f84ea10598a013c"><div class="ttname"><a href="structapr__bucket__mmap.html#a99f201622002479f4f84ea10598a013c">apr_bucket_mmap::refcount</a></div><div class="ttdeci">apr_bucket_refcount refcount</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:601</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga871e54ba20487a2085a73a673ffa4110"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga871e54ba20487a2085a73a673ffa4110">apr_bucket_shared_split</a></div><div class="ttdeci">apr_status_t apr_bucket_shared_split(apr_bucket *b, apr_size_t point)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga829cac9b4843b85a902ddd64dffbfb12"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga829cac9b4843b85a902ddd64dffbfb12">apr_bucket_type_eos</a></div><div class="ttdeci">const apr_bucket_type_t apr_bucket_type_eos</div></div>
<div class="ttc" id="structapr__bucket_html_a0949c5d398756496e69449c2633975f1"><div class="ttname"><a href="structapr__bucket.html#a0949c5d398756496e69449c2633975f1">apr_bucket::free</a></div><div class="ttdeci">void(* free)(void *e)</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:252</div></div>
<div class="ttc" id="unionapr__bucket__structs_html_ab339255acdf750133759a0d67b3f2e30"><div class="ttname"><a href="unionapr__bucket__structs.html#ab339255acdf750133759a0d67b3f2e30">apr_bucket_structs::file</a></div><div class="ttdeci">apr_bucket_file file</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:642</div></div>
<div class="ttc" id="structapr__bucket__pool_html_a9ee5297361ba548a20c3aa626a37c068"><div class="ttname"><a href="structapr__bucket__pool.html#a9ee5297361ba548a20c3aa626a37c068">apr_bucket_pool::base</a></div><div class="ttdeci">const char * base</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:579</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga43c7dc7e3eb961a91bbc0b69a47e503c"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga43c7dc7e3eb961a91bbc0b69a47e503c">apr_bucket_shared_destroy</a></div><div class="ttdeci">int apr_bucket_shared_destroy(void *data)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gab18ee46f66634c35ad79b6a74559cbb8"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gab18ee46f66634c35ad79b6a74559cbb8">apr_bucket_file_enable_mmap</a></div><div class="ttdeci">apr_status_t apr_bucket_file_enable_mmap(apr_bucket *b, int enabled)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga123c95e832734f92e6f1139b6a68cfa6"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga123c95e832734f92e6f1139b6a68cfa6">apr_bucket_simple_copy</a></div><div class="ttdeci">apr_status_t apr_bucket_simple_copy(apr_bucket *a, apr_bucket **b)</div></div>
<div class="ttc" id="structapr__bucket__brigade_html_a76a313afc83dd161916f3f9b83eea734"><div class="ttname"><a href="structapr__bucket__brigade.html#a76a313afc83dd161916f3f9b83eea734">apr_bucket_brigade::APR_RING_HEAD</a></div><div class="ttdeci">APR_RING_HEAD(apr_bucket_list, apr_bucket) list</div></div>
<div class="ttc" id="structapr__bucket__pool_html_af55591a1e7f3b097e7c271683bc80968"><div class="ttname"><a href="structapr__bucket__pool.html#af55591a1e7f3b097e7c271683bc80968">apr_bucket_pool::pool</a></div><div class="ttdeci">apr_pool_t * pool</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:586</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gab561ac92d1811e5a2589783536e64a1a"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gab561ac92d1811e5a2589783536e64a1a">apr_bucket_mmap_make</a></div><div class="ttdeci">apr_bucket * apr_bucket_mmap_make(apr_bucket *b, apr_mmap_t *mm, apr_off_t start, apr_size_t length)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga391ac24b2c85969e8efa504588b364bb"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga391ac24b2c85969e8efa504588b364bb">apr_bucket_type_immortal</a></div><div class="ttdeci">const apr_bucket_type_t apr_bucket_type_immortal</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga71de285204d21507420068f05b12a541"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga71de285204d21507420068f05b12a541">apr_bucket_heap_make</a></div><div class="ttdeci">apr_bucket * apr_bucket_heap_make(apr_bucket *b, const char *buf, apr_size_t nbyte, void(*free_func)(void *data))</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga63f9ce8e4d6e796921aad14a218a3b23"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga63f9ce8e4d6e796921aad14a218a3b23">apr_bucket_type_mmap</a></div><div class="ttdeci">const apr_bucket_type_t apr_bucket_type_mmap</div></div>
<div class="ttc" id="structapr__bucket_html"><div class="ttname"><a href="structapr__bucket.html">apr_bucket</a></div><div class="ttdef"><b>Definition:</b> apr_buckets.h:224</div></div>
<div class="ttc" id="unionapr__bucket__structs_html"><div class="ttname"><a href="unionapr__bucket__structs.html">apr_bucket_structs</a></div><div class="ttdef"><b>Definition:</b> apr_buckets.h:635</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gae7b4daa1318226beda4bf0eead2f5582"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gae7b4daa1318226beda4bf0eead2f5582">apr_bucket_pipe_make</a></div><div class="ttdeci">apr_bucket * apr_bucket_pipe_make(apr_bucket *b, apr_file_t *thispipe)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga904bdc4a9a9c800d2d2b20b4ddefa6f7"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga904bdc4a9a9c800d2d2b20b4ddefa6f7">apr_brigade_to_iovec</a></div><div class="ttdeci">apr_status_t apr_brigade_to_iovec(apr_bucket_brigade *b, struct iovec *vec, int *nvec)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga2d1fed26db94e3006223098737a06f5a"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga2d1fed26db94e3006223098737a06f5a">apr_brigade_puts</a></div><div class="ttdeci">apr_status_t apr_brigade_puts(apr_bucket_brigade *bb, apr_brigade_flush flush, void *ctx, const char *str)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gaee338c7d218ce1fbbf8c1aefedcc0632"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gaee338c7d218ce1fbbf8c1aefedcc0632">apr_bucket_mmap_create</a></div><div class="ttdeci">apr_bucket * apr_bucket_mmap_create(apr_mmap_t *mm, apr_off_t start, apr_size_t length, apr_bucket_alloc_t *list)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gafd6a8378a15e8b42a57a5923a03de7f2"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gafd6a8378a15e8b42a57a5923a03de7f2">apr_brigade_cleanup</a></div><div class="ttdeci">apr_status_t apr_brigade_cleanup(void *data)</div></div>
<div class="ttc" id="structapr__bucket__pool_html"><div class="ttname"><a href="structapr__bucket__pool.html">apr_bucket_pool</a></div><div class="ttdef"><b>Definition:</b> apr_buckets.h:561</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga7c4981f7050333a181e440e753c20555"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga7c4981f7050333a181e440e753c20555">apr_brigade_insert_file</a></div><div class="ttdeci">apr_bucket * apr_brigade_insert_file(apr_bucket_brigade *bb, apr_file_t *f, apr_off_t start, apr_off_t len, apr_pool_t *p)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gad81543da24b144c0e100dd1e6d843adb"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gad81543da24b144c0e100dd1e6d843adb">apr_bucket_immortal_create</a></div><div class="ttdeci">apr_bucket * apr_bucket_immortal_create(const char *buf, apr_size_t nbyte, apr_bucket_alloc_t *list)</div></div>
<div class="ttc" id="structapr__bucket__heap_html_ad180e40bfdc962bab946f764be9f6f88"><div class="ttname"><a href="structapr__bucket__heap.html#ad180e40bfdc962bab946f764be9f6f88">apr_bucket_heap::free_func</a></div><div class="ttdeci">void(* free_func)(void *data)</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:553</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gafa0dbcd060e2e432406052e4d7c96204"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gafa0dbcd060e2e432406052e4d7c96204">apr_brigade_flush</a></div><div class="ttdeci">apr_status_t(* apr_brigade_flush)(apr_bucket_brigade *bb, void *ctx)</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:282</div></div>
<div class="ttc" id="structapr__bucket__refcount_html"><div class="ttname"><a href="structapr__bucket__refcount.html">apr_bucket_refcount</a></div><div class="ttdef"><b>Definition:</b> apr_buckets.h:531</div></div>
<div class="ttc" id="structapr__bucket__type__t_html_a4e64635ed62e1f371154f934c8a8504f"><div class="ttname"><a href="structapr__bucket__type__t.html#a4e64635ed62e1f371154f934c8a8504f">apr_bucket_type_t::copy</a></div><div class="ttdeci">apr_status_t(* copy)(apr_bucket *e, apr_bucket **c)</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:211</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gaecc113cfcc7751dfe70876437a2f51d7"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gaecc113cfcc7751dfe70876437a2f51d7">apr_bucket_type_flush</a></div><div class="ttdeci">const apr_bucket_type_t apr_bucket_type_flush</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga2c5608267ed7b860657f5a1c89c2f40d"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga2c5608267ed7b860657f5a1c89c2f40d">apr_bucket_type_heap</a></div><div class="ttdeci">const apr_bucket_type_t apr_bucket_type_heap</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gaa5da970af09d1a87e020db054f2d1c94"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gaa5da970af09d1a87e020db054f2d1c94">apr_brigade_pflatten</a></div><div class="ttdeci">apr_status_t apr_brigade_pflatten(apr_bucket_brigade *bb, char **c, apr_size_t *len, apr_pool_t *pool)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga36448fa89ab3239fd46591fbc82624e6"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga36448fa89ab3239fd46591fbc82624e6">apr_brigade_split_ex</a></div><div class="ttdeci">apr_bucket_brigade * apr_brigade_split_ex(apr_bucket_brigade *b, apr_bucket *e, apr_bucket_brigade *a)</div></div>
<div class="ttc" id="structapr__bucket__type__t_html_ad4bd2ffb03cb2f5f3b3941ce20468038"><div class="ttname"><a href="structapr__bucket__type__t.html#ad4bd2ffb03cb2f5f3b3941ce20468038">apr_bucket_type_t::num_func</a></div><div class="ttdeci">int num_func</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:140</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gaf5eb58cc232851c8449ba1d98d049a0a"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gaf5eb58cc232851c8449ba1d98d049a0a">apr_bucket_alloc_destroy</a></div><div class="ttdeci">void apr_bucket_alloc_destroy(apr_bucket_alloc_t *list)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gaa6d9978cc10895bdf0a4686728822a84"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gaa6d9978cc10895bdf0a4686728822a84">apr_bucket_type_socket</a></div><div class="ttdeci">const apr_bucket_type_t apr_bucket_type_socket</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga154ea763ee9de4ccb8692b9e3b60ebb2"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga154ea763ee9de4ccb8692b9e3b60ebb2">apr_bucket_pool_create</a></div><div class="ttdeci">apr_bucket * apr_bucket_pool_create(const char *buf, apr_size_t length, apr_pool_t *pool, apr_bucket_alloc_t *list)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga4b2f22ba70ac9f65788014c61d4f5b76"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga4b2f22ba70ac9f65788014c61d4f5b76">apr_brigade_partition</a></div><div class="ttdeci">apr_status_t apr_brigade_partition(apr_bucket_brigade *b, apr_off_t point, apr_bucket **after_point)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga2e9a035d340ef6b4279b178eff614670"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga2e9a035d340ef6b4279b178eff614670">apr_bucket_shared_copy</a></div><div class="ttdeci">apr_status_t apr_bucket_shared_copy(apr_bucket *a, apr_bucket **b)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga2fffd4c4701ad55c6df27cdee0c47200"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga2fffd4c4701ad55c6df27cdee0c47200">apr_bucket_socket_make</a></div><div class="ttdeci">apr_bucket * apr_bucket_socket_make(apr_bucket *b, apr_socket_t *thissock)</div></div>
<div class="ttc" id="structapr__bucket_html_a4a8791b606b3ad613b8672ec94145628"><div class="ttname"><a href="structapr__bucket.html#a4a8791b606b3ad613b8672ec94145628">apr_bucket::start</a></div><div class="ttdeci">apr_off_t start</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:242</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gacaf2929f951920a464e170baf2b4c345"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gacaf2929f951920a464e170baf2b4c345">apr_brigade_split</a></div><div class="ttdeci">apr_bucket_brigade * apr_brigade_split(apr_bucket_brigade *b, apr_bucket *e)</div></div>
<div class="ttc" id="structapr__bucket__refcount_html_a75040af03e3ad3c722bccea1048e3dae"><div class="ttname"><a href="structapr__bucket__refcount.html#a75040af03e3ad3c722bccea1048e3dae">apr_bucket_refcount::refcount</a></div><div class="ttdeci">int refcount</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:533</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gaaed4421317b76d9d3458ded3d5b6eb05"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gaaed4421317b76d9d3458ded3d5b6eb05">apr_bucket_alloc_aligned_floor</a></div><div class="ttdeci">apr_size_t apr_bucket_alloc_aligned_floor(apr_bucket_alloc_t *list, apr_size_t size)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga01197c5b2cda6382354628cecdeae145"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga01197c5b2cda6382354628cecdeae145">apr_bucket_pool_make</a></div><div class="ttdeci">apr_bucket * apr_bucket_pool_make(apr_bucket *b, const char *buf, apr_size_t length, apr_pool_t *pool)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga09221bea9541ca2340a4e8b5e1e7ac56"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga09221bea9541ca2340a4e8b5e1e7ac56">apr_bucket_destroy_noop</a></div><div class="ttdeci">void apr_bucket_destroy_noop(void *data)</div></div>
<div class="ttc" id="structapr__bucket__type__t_html"><div class="ttname"><a href="structapr__bucket__type__t.html">apr_bucket_type_t</a></div><div class="ttdef"><b>Definition:</b> apr_buckets.h:131</div></div>
<div class="ttc" id="structapr__bucket__type__t_html_affe8b803b860b51d6ee86ff1c6d73d12"><div class="ttname"><a href="structapr__bucket__type__t.html#affe8b803b860b51d6ee86ff1c6d73d12">apr_bucket_type_t::destroy</a></div><div class="ttdeci">void(* destroy)(void *data)</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:164</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga554f2d87c718f30a9259d52c6f81a405"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga554f2d87c718f30a9259d52c6f81a405">apr_bucket_transient_create</a></div><div class="ttdeci">apr_bucket * apr_bucket_transient_create(const char *buf, apr_size_t nbyte, apr_bucket_alloc_t *list)</div></div>
<div class="ttc" id="structapr__bucket__file_html_a81c7e6646352fa03d4fb5a346dde4105"><div class="ttname"><a href="structapr__bucket__file.html#a81c7e6646352fa03d4fb5a346dde4105">apr_bucket_file::read_size</a></div><div class="ttdeci">apr_size_t read_size</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:626</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gga756973fb6392bd1026c3d96b4519776da2d983f5b7fd996434e0dded171c261d8"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gga756973fb6392bd1026c3d96b4519776da2d983f5b7fd996434e0dded171c261d8">APR_BLOCK_READ</a></div><div class="ttdef"><b>Definition:</b> apr_buckets.h:58</div></div>
<div class="ttc" id="structapr__bucket__type__t_html_a117f85e4a58c5e7d7e373705ad138f85a53d3ef9d6a275fe2b72a91acea7017d5"><div class="ttname"><a href="structapr__bucket__type__t.html#a117f85e4a58c5e7d7e373705ad138f85a53d3ef9d6a275fe2b72a91acea7017d5">apr_bucket_type_t::APR_BUCKET_DATA</a></div><div class="ttdef"><b>Definition:</b> apr_buckets.h:153</div></div>
<div class="ttc" id="structapr__bucket__pool_html_a651aa0c18658342daf72ff86680bfaca"><div class="ttname"><a href="structapr__bucket__pool.html#a651aa0c18658342daf72ff86680bfaca">apr_bucket_pool::list</a></div><div class="ttdeci">apr_bucket_alloc_t * list</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:590</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gacb716dea400092f2f8c84a3f0f6d3a10"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gacb716dea400092f2f8c84a3f0f6d3a10">apr_bucket_file_make</a></div><div class="ttdeci">apr_bucket * apr_bucket_file_make(apr_bucket *b, apr_file_t *fd, apr_off_t offset, apr_size_t len, apr_pool_t *p)</div></div>
<div class="ttc" id="structapr__bucket_html_ac27fa5ce798e688ad243ebe1615937fc"><div class="ttname"><a href="structapr__bucket.html#ac27fa5ce798e688ad243ebe1615937fc">apr_bucket::type</a></div><div class="ttdeci">const apr_bucket_type_t * type</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:228</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga305766ff39440711da93e72f5b348a3a"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga305766ff39440711da93e72f5b348a3a">apr_bucket_split_notimpl</a></div><div class="ttdeci">apr_status_t apr_bucket_split_notimpl(apr_bucket *data, apr_size_t point)</div></div>
<div class="ttc" id="structapr__bucket__file_html_ab0c123f34b85a07b601dc9794f8eed09"><div class="ttname"><a href="structapr__bucket__file.html#ab0c123f34b85a07b601dc9794f8eed09">apr_bucket_file::refcount</a></div><div class="ttdeci">apr_bucket_refcount refcount</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:614</div></div>
<div class="ttc" id="unionapr__bucket__structs_html_a627c4ca697f06bbf4226c8c2acd93cbc"><div class="ttname"><a href="unionapr__bucket__structs.html#a627c4ca697f06bbf4226c8c2acd93cbc">apr_bucket_structs::mmap</a></div><div class="ttdeci">apr_bucket_mmap mmap</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:640</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gaeb422371006699c68f0ed3b496cc12a2"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gaeb422371006699c68f0ed3b496cc12a2">apr_brigade_create</a></div><div class="ttdeci">apr_bucket_brigade * apr_brigade_create(apr_pool_t *p, apr_bucket_alloc_t *list)</div></div>
<div class="ttc" id="unionapr__bucket__structs_html_ab926fe2af7c1780c03bf1669766db4a1"><div class="ttname"><a href="unionapr__bucket__structs.html#ab926fe2af7c1780c03bf1669766db4a1">apr_bucket_structs::pool</a></div><div class="ttdeci">apr_bucket_pool pool</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:638</div></div>
<div class="ttc" id="structapr__bucket__mmap_html"><div class="ttname"><a href="structapr__bucket__mmap.html">apr_bucket_mmap</a></div><div class="ttdef"><b>Definition:</b> apr_buckets.h:599</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gae6135b83d9f7bd7e1b60dbc761a3ca5f"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gae6135b83d9f7bd7e1b60dbc761a3ca5f">apr_bucket_setaside_noop</a></div><div class="ttdeci">apr_status_t apr_bucket_setaside_noop(apr_bucket *data, apr_pool_t *pool)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gae47c2235a3740432f4a0990fccfe4102"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gae47c2235a3740432f4a0990fccfe4102">apr_bucket_alloc</a></div><div class="ttdeci">void * apr_bucket_alloc(apr_size_t size, apr_bucket_alloc_t *list)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gab9ea07d5f9246e06c1bb3e76ee90cd71"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gab9ea07d5f9246e06c1bb3e76ee90cd71">apr_bucket_pipe_create</a></div><div class="ttdeci">apr_bucket * apr_bucket_pipe_create(apr_file_t *thispipe, apr_bucket_alloc_t *list)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga7e1f9a0ae64781ff4430d08c25e6e831"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga7e1f9a0ae64781ff4430d08c25e6e831">apr_bucket_transient_make</a></div><div class="ttdeci">apr_bucket * apr_bucket_transient_make(apr_bucket *b, const char *buf, apr_size_t nbyte)</div></div>
<div class="ttc" id="structapr__bucket_html_a5a500b80105834621514d6c0814d0966"><div class="ttname"><a href="structapr__bucket.html#a5a500b80105834621514d6c0814d0966">apr_bucket::list</a></div><div class="ttdeci">apr_bucket_alloc_t * list</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:254</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga301aeb943e68ef4b99c1ae6a18dcf78e"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga301aeb943e68ef4b99c1ae6a18dcf78e">apr_brigade_flatten</a></div><div class="ttdeci">apr_status_t apr_brigade_flatten(apr_bucket_brigade *bb, char *c, apr_size_t *len)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_gga756973fb6392bd1026c3d96b4519776da42b97663ca71fbbf2e2af7c8192e5dd8"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#gga756973fb6392bd1026c3d96b4519776da42b97663ca71fbbf2e2af7c8192e5dd8">APR_NONBLOCK_READ</a></div><div class="ttdef"><b>Definition:</b> apr_buckets.h:59</div></div>
<div class="ttc" id="unionapr__bucket__structs_html_a5335dc82d8250e511a9c55e5fea97141"><div class="ttname"><a href="unionapr__bucket__structs.html#a5335dc82d8250e511a9c55e5fea97141">apr_bucket_structs::heap</a></div><div class="ttdeci">apr_bucket_heap heap</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:637</div></div>
<div class="ttc" id="structapr__bucket_html_a0898dfc78d9275187189b9a745e619bf"><div class="ttname"><a href="structapr__bucket.html#a0898dfc78d9275187189b9a745e619bf">apr_bucket::length</a></div><div class="ttdeci">apr_size_t length</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:234</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga2eba1e262dece0d4444ddd25ae7b250a"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga2eba1e262dece0d4444ddd25ae7b250a">apr_brigade_destroy</a></div><div class="ttdeci">apr_status_t apr_brigade_destroy(apr_bucket_brigade *b)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga9fd8c7d9e42dd04b8f153072655e875c"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga9fd8c7d9e42dd04b8f153072655e875c">apr_bucket_simple_split</a></div><div class="ttdeci">apr_status_t apr_bucket_simple_split(apr_bucket *b, apr_size_t point)</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga5f17aa7e616179411a06475ec09626e9"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga5f17aa7e616179411a06475ec09626e9">apr_bucket_type_file</a></div><div class="ttdeci">const apr_bucket_type_t apr_bucket_type_file</div></div>
<div class="ttc" id="structapr__bucket__pool_html_a0fe0b0dedea28fb1ed0a1a0f42338225"><div class="ttname"><a href="structapr__bucket__pool.html#a0fe0b0dedea28fb1ed0a1a0f42338225">apr_bucket_pool::heap</a></div><div class="ttdeci">apr_bucket_heap heap</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:573</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga362999cb255297fd0fd433f03236302d"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga362999cb255297fd0fd433f03236302d">apr_brigade_putc</a></div><div class="ttdeci">apr_status_t apr_brigade_putc(apr_bucket_brigade *b, apr_brigade_flush flush, void *ctx, const char c)</div></div>
<div class="ttc" id="structapr__bucket__type__t_html_a117f85e4a58c5e7d7e373705ad138f85a9bf38b4eb3ea41c4af230432ac7a5fb1"><div class="ttname"><a href="structapr__bucket__type__t.html#a117f85e4a58c5e7d7e373705ad138f85a9bf38b4eb3ea41c4af230432ac7a5fb1">apr_bucket_type_t::APR_BUCKET_METADATA</a></div><div class="ttdef"><b>Definition:</b> apr_buckets.h:155</div></div>
<div class="ttc" id="structapr__bucket__type__t_html_ac6d779be45de214c6abd2cc205c48901"><div class="ttname"><a href="structapr__bucket__type__t.html#ac6d779be45de214c6abd2cc205c48901">apr_bucket_type_t::name</a></div><div class="ttdeci">const char * name</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:135</div></div>
<div class="ttc" id="structapr__bucket__mmap_html_a66e9385752aaacb7fef7e96db62f1920"><div class="ttname"><a href="structapr__bucket__mmap.html#a66e9385752aaacb7fef7e96db62f1920">apr_bucket_mmap::mmap</a></div><div class="ttdeci">apr_mmap_t * mmap</div><div class="ttdef"><b>Definition:</b> apr_buckets.h:603</div></div>
<div class="ttc" id="group___a_p_r___util___bucket___brigades_html_ga2d96fa729a17a86dc5221958e8c13c96"><div class="ttname"><a href="group___a_p_r___util___bucket___brigades.html#ga2d96fa729a17a86dc5221958e8c13c96">apr_bucket_alloc_create</a></div><div class="ttdeci">apr_bucket_alloc_t * apr_bucket_alloc_create(apr_pool_t *p)</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.14
</small></address>
</body>
</html>