File: apreq_8h-source.html

package info (click to toggle)
libapreq2-perl 2.04-dev-1sarge2
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 3,700 kB
  • ctags: 1,508
  • sloc: sh: 8,103; ansic: 5,557; perl: 2,842; cpp: 1,052; makefile: 234
file content (206 lines) | stat: -rw-r--r-- 22,496 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
<html>
<head>
  <link rel="stylesheet" type="text/css" href="dox.css" />
  <title>libapreq2-2.04-dev: libapreq2: src/apreq.h Source File</title> 
</head>
<body>
<div id="page-header">
<p class="menu">
   <a href="http://www.apache.org/">Apache Software Foundation</a> &gt; <a href="http://httpd.apache.org">HTTP Server Project</a> &gt;
<a href="http://httpd.apache.org/apreq/">Request Library Subproject</a></p>
<p class="apache">Apache HTTP Server Request Library</p>
<img alt="" src="feather.gif" /></div>
<!-- Generated by Doxygen 1.3.8 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
<h1>src/apreq.h</h1><a href="apreq_8h.html">Go to the documentation of this file.</a><pre class="fragment"><div>00001 <span class="comment">/*</span>
00002 <span class="comment">**  Copyright 2003-2004  The Apache Software Foundation</span>
00003 <span class="comment">**</span>
00004 <span class="comment">**  Licensed under the Apache License, Version 2.0 (the "License");</span>
00005 <span class="comment">**  you may not use this file except in compliance with the License.</span>
00006 <span class="comment">**  You may obtain a copy of the License at</span>
00007 <span class="comment">**</span>
00008 <span class="comment">**      http://www.apache.org/licenses/LICENSE-2.0</span>
00009 <span class="comment">**</span>
00010 <span class="comment">**  Unless required by applicable law or agreed to in writing, software</span>
00011 <span class="comment">**  distributed under the License is distributed on an "AS IS" BASIS,</span>
00012 <span class="comment">**  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
00013 <span class="comment">**  See the License for the specific language governing permissions and</span>
00014 <span class="comment">**  limitations under the License.</span>
00015 <span class="comment">*/</span>
00016 
00017 <span class="preprocessor">#ifndef APREQ_H</span>
00018 <span class="preprocessor"></span><span class="preprocessor">#define APREQ_H</span>
00019 <span class="preprocessor"></span>
00020 <span class="preprocessor">#include "<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__tables_8h.html">apr_tables.h</a>"</span> 
00021 <span class="preprocessor">#include "<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__file__io_8h.html">apr_file_io.h</a>"</span>
00022 <span class="preprocessor">#include "<a class="codeRef" doxygen="apu.tag:http://apr.apache.org/docs/apr-util/" href="http://apr.apache.org/docs/apr-util/apr__buckets_8h.html">apr_buckets.h</a>"</span>
00023 <span class="preprocessor">#include &lt;stddef.h&gt;</span>
00024 
00025 <span class="preprocessor">#ifdef  __cplusplus</span>
00026 <span class="preprocessor"></span> <span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
00027 <span class="preprocessor">#endif </span>
00028 <span class="preprocessor"></span>
00042 <span class="preprocessor">#ifndef WIN32</span>
00043 <span class="preprocessor"></span><span class="preprocessor">#define APREQ_DECLARE(d)                APR_DECLARE(d)</span>
00044 <span class="preprocessor"></span><span class="preprocessor">#define APREQ_DECLARE_NONSTD(d)         APR_DECLARE_NONSTD(d)</span>
00045 <span class="preprocessor"></span><span class="preprocessor">#define APREQ_DECLARE_DATA</span>
00046 <span class="preprocessor"></span><span class="preprocessor">#else</span>
00047 <span class="preprocessor"></span><span class="preprocessor">#define APREQ_DECLARE(type)             __declspec(dllexport) type __stdcall</span>
00048 <span class="preprocessor"></span><span class="preprocessor">#define APREQ_DECLARE_NONSTD(type)      __declspec(dllexport) type</span>
00049 <span class="preprocessor"></span><span class="preprocessor">#define APREQ_DECLARE_DATA              __declspec(dllexport)</span>
00050 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
00051 <span class="preprocessor"></span>
00052 <span class="preprocessor">#define APREQ_URL_ENCTYPE               "application/x-www-form-urlencoded"</span>
00053 <span class="preprocessor"></span><span class="preprocessor">#define APREQ_MFD_ENCTYPE               "multipart/form-data"</span>
00054 <span class="preprocessor"></span><span class="preprocessor">#define APREQ_XML_ENCTYPE               "application/xml"</span>
00055 <span class="preprocessor"></span>
00056 <span class="preprocessor">#define APREQ_NELTS                     8</span>
00057 <span class="preprocessor"></span><span class="preprocessor">#define APREQ_READ_AHEAD                (64 * 1024)</span>
00058 <span class="preprocessor"></span>
<a name="l00062"></a><a class="code" href="apreq_8h.html#a8">00062</a> <span class="preprocessor">#define APREQ_MAX_BRIGADE_LEN           (256 * 1024) </span>
00063 <span class="preprocessor"></span>                     
00064 
<a name="l00066"></a><a class="code" href="structapreq__value__t.html">00066</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapreq__value__t.html">apreq_value_t</a> {
<a name="l00067"></a><a class="code" href="structapreq__value__t.html#o0">00067</a>     <span class="keyword">const</span> <span class="keywordtype">char</span>    *<a class="code" href="structapreq__value__t.html#o0">name</a>;    
<a name="l00068"></a><a class="code" href="structapreq__value__t.html#o1">00068</a>     <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a>     <a class="code" href="structapreq__value__t.html#o1">size</a>;    
<a name="l00069"></a><a class="code" href="structapreq__value__t.html#o2">00069</a>     <span class="keywordtype">char</span>           <a class="code" href="structapreq__value__t.html#o2">data</a>[1]; 
00070 } <a class="code" href="structapreq__value__t.html">apreq_value_t</a>;
00071 
00072 <span class="keyword">typedef</span> <a class="code" href="structapreq__value__t.html">apreq_value_t</a> *(apreq_value_merge_t)(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__pools_8h.html#ga0">apr_pool_t</a> *p,
00073                                              <span class="keyword">const</span> <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/structapr__array__header__t.html">apr_array_header_t</a> *a);
00074 <span class="keyword">typedef</span> <a class="code" href="structapreq__value__t.html">apreq_value_t</a> *(apreq_value_copy_t)(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__pools_8h.html#ga0">apr_pool_t</a> *p,
00075                                             <span class="keyword">const</span> <a class="code" href="structapreq__value__t.html">apreq_value_t</a> *v);
00076 
00077 
00078 <span class="preprocessor">#define apreq_attr_to_type(T,A,P) ( (T*) ((char*)(P)-offsetof(T,A)) )</span>
00079 <span class="preprocessor"></span>
<a name="l00087"></a><a class="code" href="apreq_8h.html#a10">00087</a> <span class="preprocessor">#define apreq_char_to_value(ptr)  apreq_attr_to_type(apreq_value_t, data, ptr)</span>
00088 <span class="preprocessor"></span><span class="preprocessor">#define apreq_strtoval(ptr)  apreq_char_to_value(ptr)</span>
00089 <span class="preprocessor"></span>
<a name="l00098"></a><a class="code" href="apreq_8h.html#a12">00098</a> <span class="preprocessor">#define apreq_strlen(ptr) (apreq_strtoval(ptr)-&gt;size)</span>
00099 <span class="preprocessor"></span>
00113 APREQ_DECLARE(<a class="code" href="structapreq__value__t.html">apreq_value_t</a> *) apreq_make_value(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__pools_8h.html#ga0">apr_pool_t</a> *p, 
00114                                                 const <span class="keywordtype">char</span> *name,
00115                                                 const <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a> nlen,
00116                                                 const <span class="keywordtype">char</span> *val, 
00117                                                 const <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a> vlen);
00118 
00124 APREQ_DECLARE(<a class="code" href="structapreq__value__t.html">apreq_value_t</a> *) apreq_copy_value(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__pools_8h.html#ga0">apr_pool_t</a> *p, 
00125                                                 const <a class="code" href="structapreq__value__t.html">apreq_value_t</a> *val);
00126 
00132 <a class="code" href="structapreq__value__t.html">apreq_value_t</a> * apreq_merge_values(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__pools_8h.html#ga0">apr_pool_t</a> *p, 
00133                                    const <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/structapr__array__header__t.html">apr_array_header_t</a> *arr);
00134 
00139 APREQ_DECLARE(const <span class="keywordtype">char</span> *)apreq_enctype(<span class="keywordtype">void</span> *env);
00140 
<a name="l00142"></a><a class="code" href="apreq_8h.html#a47">00142</a> typedef enum { 
00143     <a class="code" href="apreq_8h.html#a47a18">APREQ_JOIN_AS_IS</a>,      
00144     <a class="code" href="apreq_8h.html#a47a19">APREQ_JOIN_ENCODE</a>,     
00145     <a class="code" href="apreq_8h.html#a47a20">APREQ_JOIN_DECODE</a>,     
00146     <a class="code" href="apreq_8h.html#a47a21">APREQ_JOIN_QUOTE</a>       
00147 } <a class="code" href="apreq_8h.html#a47">apreq_join_t</a>;
00148 
00158 APREQ_DECLARE(<span class="keyword">const</span> <span class="keywordtype">char</span> *) apreq_join(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__pools_8h.html#ga0">apr_pool_t</a> *p, 
00159                                        const <span class="keywordtype">char</span> *sep, 
00160                                        const <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/structapr__array__header__t.html">apr_array_header_t</a> *arr, 
00161                                        apreq_join_t mode);
00162 
00163 
<a name="l00165"></a><a class="code" href="apreq_8h.html#a48">00165</a> typedef enum {
00166     <a class="code" href="apreq_8h.html#a48a22">APREQ_MATCH_FULL</a>,       
00167     <a class="code" href="apreq_8h.html#a48a23">APREQ_MATCH_PARTIAL</a>     
00168 } <a class="code" href="apreq_8h.html#a48">apreq_match_t</a>;
00169 
00179 APREQ_DECLARE(<span class="keywordtype">char</span> *) apreq_memmem(<span class="keywordtype">char</span>* hay, <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a> hlen, 
00180                                    const <span class="keywordtype">char</span>* ndl, <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a> nlen, 
00181                                    const apreq_match_t type);
00182 
00193 APREQ_DECLARE(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga8">apr_ssize_t</a>) apreq_index(const <span class="keywordtype">char</span>* hay, <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a> hlen, 
00194                         const <span class="keywordtype">char</span>* ndl, <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a> nlen, 
00195                         const apreq_match_t type);
00206 APREQ_DECLARE(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a>) apreq_quote(<span class="keywordtype">char</span> *dest, const <span class="keywordtype">char</span> *src, 
00207                                       const <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a> slen);
00208 
00219 APREQ_DECLARE(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a>) apreq_quote_once(<span class="keywordtype">char</span> *dest, const <span class="keywordtype">char</span> *src, 
00220                                            const <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a> slen);
00221 
00230 APREQ_DECLARE(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a>) apreq_encode(<span class="keywordtype">char</span> *dest, const <span class="keywordtype">char</span> *src, 
00231                                        const <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a> slen);
00232 
00242 APREQ_DECLARE(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga8">apr_ssize_t</a>) apreq_decode(<span class="keywordtype">char</span> *dest, const <span class="keywordtype">char</span> *src, <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a> slen);
00243 
00244 
00256 APREQ_DECLARE(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__errno_8h.html#ga0">apr_status_t</a>) apreq_decodev(<span class="keywordtype">char</span> *d, <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a> *dlen,
00257                                           struct iovec *v, <span class="keywordtype">int</span> nelts);
00258 
00268 APREQ_DECLARE(<span class="keywordtype">char</span> *) apreq_escape(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__pools_8h.html#ga0">apr_pool_t</a> *p, 
00269                                    const <span class="keywordtype">char</span> *src, const <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a> slen);
00270 
00278 APREQ_DECLARE(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga8">apr_ssize_t</a>) apreq_unescape(<span class="keywordtype">char</span> *str);
00279 
00280 
<a name="l00282"></a><a class="code" href="apreq_8h.html#a49">00282</a> typedef enum {
00283     <a class="code" href="apreq_8h.html#a49a24">APREQ_EXPIRES_HTTP</a>,       
00284     <a class="code" href="apreq_8h.html#a49a25">APREQ_EXPIRES_NSCOOKIE</a>    
00285 } <a class="code" href="apreq_8h.html#a49">apreq_expires_t</a>;
00286 
00302 APREQ_DECLARE(<span class="keywordtype">char</span> *) apreq_expires(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__pools_8h.html#ga0">apr_pool_t</a> *p, const <span class="keywordtype">char</span> *time_str, 
00303                                     const apreq_expires_t type);
00304 
00311 APREQ_DECLARE(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga5">apr_int64_t</a>) apreq_atoi64f(const <span class="keywordtype">char</span> *s);
00312 
00319 APREQ_DECLARE(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga5">apr_int64_t</a>) apreq_atoi64t(const <span class="keywordtype">char</span> *s);
00320 
00332 APREQ_DECLARE(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__errno_8h.html#ga0">apr_status_t</a>) apreq_brigade_fwrite(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__file__io_8h.html#ga2">apr_file_t</a> *f,
00333                                                  <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga9">apr_off_t</a> *wlen,
00334                                                  <a class="codeRef" doxygen="apu.tag:http://apr.apache.org/docs/apr-util/" href="http://apr.apache.org/docs/apr-util/structapr__bucket__brigade.html">apr_bucket_brigade</a> *bb);
00347 APREQ_DECLARE(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__errno_8h.html#ga0">apr_status_t</a>) apreq_file_mktemp(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__file__io_8h.html#ga2">apr_file_t</a> **fp, 
00348                                               <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__pools_8h.html#ga0">apr_pool_t</a> *pool,
00349                                               const <span class="keywordtype">char</span> *path);
00350 
00359 APREQ_DECLARE(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__file__io_8h.html#ga2">apr_file_t</a> *) apreq_brigade_spoolfile(<a class="codeRef" doxygen="apu.tag:http://apr.apache.org/docs/apr-util/" href="http://apr.apache.org/docs/apr-util/structapr__bucket__brigade.html">apr_bucket_brigade</a> *bb);
00360 
<a name="l00367"></a><a class="code" href="apreq_8h.html#a13">00367</a> #define APREQ_BRIGADE_SETASIDE(bb,p) do {                               \
00368     <a class="codeRef" doxygen="apu.tag:http://apr.apache.org/docs/apr-util/" href="http://apr.apache.org/docs/apr-util/structapr__bucket.html">apr_bucket</a> *e;                                                      \
00369     <span class="keywordflow">for</span> (e = <a class="codeRef" doxygen="apu.tag:http://apr.apache.org/docs/apr-util/" href="http://apr.apache.org/docs/apr-util/apr__buckets_8h.html#ga81">APR_BRIGADE_FIRST</a>(bb); e != <a class="codeRef" doxygen="apu.tag:http://apr.apache.org/docs/apr-util/" href="http://apr.apache.org/docs/apr-util/apr__buckets_8h.html#ga79">APR_BRIGADE_SENTINEL</a>(bb);      \
00370          e = <a class="codeRef" doxygen="apu.tag:http://apr.apache.org/docs/apr-util/" href="http://apr.apache.org/docs/apr-util/apr__buckets_8h.html#ga89">APR_BUCKET_NEXT</a>(e))                                        \
00371     {                                                                   \
00372         <a class="codeRef" doxygen="apu.tag:http://apr.apache.org/docs/apr-util/" href="http://apr.apache.org/docs/apr-util/apr__buckets_8h.html#ga108">apr_bucket_setaside</a>(e, p);                                      \
00373     }                                                                   \
00374 } <span class="keywordflow">while</span> (0)
00375 
00376 
<a name="l00384"></a><a class="code" href="apreq_8h.html#a14">00384</a> <span class="preprocessor">#define APREQ_BRIGADE_COPY(d,s) do {                                \</span>
00385 <span class="preprocessor">    apr_bucket *e;                                                  \</span>
00386 <span class="preprocessor">    for (e = APR_BRIGADE_FIRST(s); e != APR_BRIGADE_SENTINEL(s);    \</span>
00387 <span class="preprocessor">         e = APR_BUCKET_NEXT(e))                                    \</span>
00388 <span class="preprocessor">    {                                                               \</span>
00389 <span class="preprocessor">        apr_bucket *c;                                              \</span>
00390 <span class="preprocessor">        apr_bucket_copy(e, &amp;c);                                     \</span>
00391 <span class="preprocessor">        APR_BRIGADE_INSERT_TAIL(d, c);                              \</span>
00392 <span class="preprocessor">    }                                                               \</span>
00393 <span class="preprocessor">} while (0)</span>
00394 <span class="preprocessor"></span>
00395 
00405 APREQ_DECLARE(<a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr__errno_8h.html#ga0">apr_status_t</a>)
00406          apreq_header_attribute(const <span class="keywordtype">char</span> *hdr,
00407                                 const <span class="keywordtype">char</span> *name, const <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a> nlen,
00408                                 const <span class="keywordtype">char</span> **val, <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga7">apr_size_t</a> *vlen);
00409 
00410 
00411 #ifdef __cplusplus
00412  }
00413 #endif
00414 
00415 #endif <span class="comment">/* APREQ_H */</span>
</div></pre><div id="footer">
<p class="apache">
Copyright &copy; 2003-2004 <a href="http://www.apache.org">The Apache Software Foundation</a>.<br/>
See <a href="LICENSE.html">LICENSE</a>.</p>
<p class="menu">
<span style="color:#aaa">page generated by <a href="http://www.doxygen.org/"><code>doxygen</code></a>
version 1.3.8 on 30 Aug 2004</span>
</p>
</div>
</body>
</html>