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> > <a href="http://httpd.apache.org">HTTP Server Project</a> >
<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 Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="annotated.html">Data Structures</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Data Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related 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 <stdarg.h></span>
00023
00024 <span class="preprocessor">#ifdef HAVE_SYSLOG</span>
00025 <span class="preprocessor"></span><span class="preprocessor">#include <syslog.h></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)->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)->magic_number)
00285
00286 #ifdef __cplusplus
00287 }
00288 #endif
00289
00290 #endif
</div></pre><div id="footer">
<p class="apache">
Copyright © 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>
|