File: apreq__env_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 (165 lines) | stat: -rw-r--r-- 16,151 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
<html>
<head>
  <link rel="stylesheet" type="text/css" href="dox.css" />
  <title>libapreq2-2.04-dev: libapreq2: src/apreq_env.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_env.h</h1><a href="apreq__env_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_ENV_H</span>
00018 <span class="preprocessor"></span><span class="preprocessor">#define APREQ_ENV_H</span>
00019 <span class="preprocessor"></span>
00020 <span class="preprocessor">#include "<a class="code" href="apreq__params_8h.html">apreq_params.h</a>"</span>
00021 <span class="preprocessor">#include "<a class="code" href="apreq__cookie_8h.html">apreq_cookie.h</a>"</span>
00022 <span class="preprocessor">#include &lt;stdarg.h&gt;</span>
00023 
00024 <span class="preprocessor">#ifdef HAVE_SYSLOG</span>
00025 <span class="preprocessor"></span><span class="preprocessor">#include &lt;syslog.h&gt;</span>
00026 
00027 <span class="preprocessor">#ifndef LOG_PRIMASK</span>
00028 <span class="preprocessor"></span><span class="preprocessor">#define LOG_PRIMASK 7</span>
00029 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
00030 <span class="preprocessor"></span>
00031 
00032 <span class="preprocessor">#define APREQ_LOG_EMERG     LOG_EMERG     </span><span class="comment">/* system is unusable */</span>
00033 <span class="preprocessor">#define APREQ_LOG_ALERT     LOG_ALERT     </span><span class="comment">/* action must be taken immediately */</span>
00034 <span class="preprocessor">#define APREQ_LOG_CRIT      LOG_CRIT      </span><span class="comment">/* critical conditions */</span>
00035 <span class="preprocessor">#define APREQ_LOG_ERR       LOG_ERR       </span><span class="comment">/* error conditions */</span>
00036 <span class="preprocessor">#define APREQ_LOG_WARNING   LOG_WARNING   </span><span class="comment">/* warning conditions */</span>
00037 <span class="preprocessor">#define APREQ_LOG_NOTICE    LOG_NOTICE    </span><span class="comment">/* normal but significant condition */</span>
00038 <span class="preprocessor">#define APREQ_LOG_INFO      LOG_INFO      </span><span class="comment">/* informational */</span>
00039 <span class="preprocessor">#define APREQ_LOG_DEBUG     LOG_DEBUG     </span><span class="comment">/* debug-level messages */</span>
00040 
00041 <span class="preprocessor">#define APREQ_LOG_LEVELMASK LOG_PRIMASK   </span><span class="comment">/* mask off the level value */</span>
00042 
00043 <span class="preprocessor">#else</span>
00044 <span class="preprocessor"></span>
00045 <span class="preprocessor">#define APREQ_LOG_EMERG     0   </span><span class="comment">/* system is unusable */</span>
00046 <span class="preprocessor">#define APREQ_LOG_ALERT     1   </span><span class="comment">/* action must be taken immediately */</span>
00047 <span class="preprocessor">#define APREQ_LOG_CRIT      2   </span><span class="comment">/* critical conditions */</span>
00048 <span class="preprocessor">#define APREQ_LOG_ERR       3   </span><span class="comment">/* error conditions */</span>
00049 <span class="preprocessor">#define APREQ_LOG_WARNING   4   </span><span class="comment">/* warning conditions */</span>
00050 <span class="preprocessor">#define APREQ_LOG_NOTICE    5   </span><span class="comment">/* normal but significant condition */</span>
00051 <span class="preprocessor">#define APREQ_LOG_INFO      6   </span><span class="comment">/* informational */</span>
00052 <span class="preprocessor">#define APREQ_LOG_DEBUG     7   </span><span class="comment">/* debug-level messages */</span>
00053 
00054 <span class="preprocessor">#define APREQ_LOG_LEVELMASK     7       </span><span class="comment">/* mask off the level value */</span>
00055 
00056 <span class="preprocessor">#endif</span>
00057 <span class="preprocessor"></span>
00058 <span class="preprocessor">#define APREQ_LOG_MARK  __FILE__ , __LINE__</span>
00059 <span class="preprocessor"></span>
00060 <span class="preprocessor">#define APREQ_DEBUG  APREQ_LOG_MARK, APREQ_LOG_DEBUG,</span>
00061 <span class="preprocessor"></span><span class="preprocessor">#define APREQ_WARN   APREQ_LOG_MARK, APREQ_LOG_WARNING,</span>
00062 <span class="preprocessor"></span><span class="preprocessor">#define APREQ_ERROR  APREQ_LOG_MARK, APREQ_LOG_ERR,</span>
00063 <span class="preprocessor"></span>
00064 <span class="preprocessor">#ifdef  __cplusplus</span>
00065 <span class="preprocessor"></span> <span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
00066 <span class="preprocessor">#endif </span>
00067 <span class="preprocessor"></span>
00084 APREQ_DECLARE_NONSTD(<span class="keywordtype">void</span>) apreq_log(const <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line,
00085                                      <span class="keywordtype">int</span> level, <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> status,
00086                                      <span class="keywordtype">void</span> *env, const <span class="keywordtype">char</span> *fmt, ...);
00093 APREQ_DECLARE(<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> *) apreq_env_pool(<span class="keywordtype">void</span> *env);
00094 
00103 APREQ_DECLARE(<a class="code" href="structapreq__jar__t.html">apreq_jar_t</a> *) apreq_env_jar(<span class="keywordtype">void</span> *env, <a class="code" href="structapreq__jar__t.html">apreq_jar_t</a> *jar);
00104 
00113 APREQ_DECLARE(<a class="code" href="structapreq__request__t.html">apreq_request_t</a> *) apreq_env_request(<span class="keywordtype">void</span> *env,
00114                                                    <a class="code" href="structapreq__request__t.html">apreq_request_t</a> *req);
00115 
00121 APREQ_DECLARE(const <span class="keywordtype">char</span> *) apreq_env_query_string(<span class="keywordtype">void</span> *env);
00122 
00130 APREQ_DECLARE(const <span class="keywordtype">char</span> *) apreq_env_header_in(<span class="keywordtype">void</span> *env, const <span class="keywordtype">char</span> *name);
00131 
00132 
<a name="l00138"></a><a class="code" href="apreq__env_8h.html#a13">00138</a> #define apreq_env_content_type(env) apreq_env_header_in(env, "Content-Type")
00139 
00140 
<a name="l00146"></a><a class="code" href="apreq__env_8h.html#a14">00146</a> #define apreq_env_cookie(env) apreq_env_header_in(env, "Cookie")
00147 
<a name="l00153"></a><a class="code" href="apreq__env_8h.html#a15">00153</a> #define apreq_env_cookie2(env) apreq_env_header_in(env, "Cookie2")
00154 
00162 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_env_header_out(<span class="keywordtype">void</span> *env, 
00163                                                 const <span class="keywordtype">char</span> *name,
00164                                                 <span class="keywordtype">char</span> *val);
00165 
<a name="l00172"></a><a class="code" href="apreq__env_8h.html#a16">00172</a> #define apreq_env_set_cookie(e,s) apreq_env_header_out(e,"Set-Cookie",s)
00173 
<a name="l00180"></a><a class="code" href="apreq__env_8h.html#a17">00180</a> #define apreq_env_set_cookie2(e,s) apreq_env_header_out(e,"Set-Cookie2",s)
00181 
00191 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_env_read(<span class="keywordtype">void</span> *env,
00192                                            apr_read_type_e block,
00193                                            <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> bytes);
00194 
00203 APREQ_DECLARE(const <span class="keywordtype">char</span> *) apreq_env_temp_dir(<span class="keywordtype">void</span> *env, const <span class="keywordtype">char</span> *path);
00204 
00215 APREQ_DECLARE(<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>) apreq_env_max_body(<span class="keywordtype">void</span> *env, <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> bytes);
00216 
00227 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_env_max_brigade(<span class="keywordtype">void</span> *env, <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> bytes);
00228 
<a name="l00236"></a><a class="code" href="structapreq__env__t.html">00236</a> typedef struct <a class="code" href="structapreq__env__t.html">apreq_env_t</a> {
00237     <span class="keyword">const</span> <span class="keywordtype">char</span> *name;
00238     <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/apr_8h.html#ga4">apr_uint32_t</a> magic_number;
00239     void (*log)(<span class="keyword">const</span> <span class="keywordtype">char</span> *,<span class="keywordtype">int</span>,<span class="keywordtype">int</span>,<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>,<span class="keywordtype">void</span> *,<span class="keyword">const</span> <span class="keywordtype">char</span> *,va_list);
00240     <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)(<span class="keywordtype">void</span> *);
00241     <a class="code" href="structapreq__jar__t.html">apreq_jar_t</a> *(*jar)(<span class="keywordtype">void</span> *,<a class="code" href="structapreq__jar__t.html">apreq_jar_t</a> *);
00242     <a class="code" href="structapreq__request__t.html">apreq_request_t</a> *(*request)(<span class="keywordtype">void</span> *,<a class="code" href="structapreq__request__t.html">apreq_request_t</a> *);
00243     <span class="keyword">const</span> <span class="keywordtype">char</span> *(*query_string)(<span class="keywordtype">void</span> *);
00244     <span class="keyword">const</span> <span class="keywordtype">char</span> *(*header_in)(<span class="keywordtype">void</span> *,<span class="keyword">const</span> <span class="keywordtype">char</span> *);
00245     <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/group__apr__errno.html#gga0">apr_status_t</a> (*header_out)(<span class="keywordtype">void</span> *, <span class="keyword">const</span> <span class="keywordtype">char</span> *,<span class="keywordtype">char</span> *);
00246     <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/group__apr__errno.html#gga0">apr_status_t</a> (*read)(<span class="keywordtype">void</span> *,<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#ga111">apr_read_type_e</a>,<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>);
00247     <span class="keyword">const</span> <span class="keywordtype">char</span> *(*temp_dir)(<span class="keywordtype">void</span> *, <span class="keyword">const</span> <span class="keywordtype">char</span> *);
00248     <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/group__apr__platform.html#gga9">apr_off_t</a> (*max_body)(<span class="keywordtype">void</span> *,<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>);
00249     <a class="codeRef" doxygen="apr.tag:http://apr.apache.org/docs/apr/" href="http://apr.apache.org/docs/apr/group__apr__platform.html#gga8">apr_ssize_t</a> (*max_brigade)(<span class="keywordtype">void</span> *, <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>);
00250 } <a class="code" href="structapreq__env__t.html">apreq_env_t</a>;
00251 
<a name="l00261"></a><a class="code" href="apreq__env_8h.html#a18">00261</a> <span class="preprocessor">#define APREQ_ENV_MODULE(pre, name, mmn) const apreq_env_t pre##_module = { \</span>
00262 <span class="preprocessor">  name, mmn, pre##_log, pre##_pool, pre##_jar, pre##_request,               \</span>
00263 <span class="preprocessor">  pre##_query_string, pre##_header_in, pre##_header_out, pre##_read,        \</span>
00264 <span class="preprocessor">  pre##_temp_dir, pre##_max_body, pre##_max_brigade }</span>
00265 <span class="preprocessor"></span>
00266 
00274 APREQ_DECLARE(<span class="keyword">const</span> <a class="code" href="structapreq__env__t.html">apreq_env_t</a> *) apreq_env_module(const <a class="code" href="structapreq__env__t.html">apreq_env_t</a> *mod);
00275 
<a name="l00279"></a><a class="code" href="apreq__env_8h.html#a19">00279</a> #define apreq_env_name (apreq_env_module(NULL)-&gt;name)
00280 
<a name="l00284"></a><a class="code" href="apreq__env_8h.html#a20">00284</a> #define apreq_env_magic_number (apreq_env_module(NULL)-&gt;magic_number)
00285 
00286 #ifdef __cplusplus
00287  }
00288 #endif
00289 
00290 #endif
</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>