| /* Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You under the Apache License, Version 2.0 |
| * (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| #ifndef MODPERL_APACHE_COMPAT_H |
| #define MODPERL_APACHE_COMPAT_H |
| |
| /* back compat adjustements for older Apache versions */ |
| |
| #if !APR_HAS_THREADS |
| typedef unsigned long apr_os_thread_t; |
| typedef void * apr_thread_mutex_t; |
| typedef void * apr_thread_rwlock_t; |
| #endif |
| |
| /* back compat adjustements for older Apache versions |
| * BACK_COMPAT_MARKER: make back compat issues easy to find :) |
| */ |
| |
| /* use the following format: |
| * #if ! AP_MODULE_MAGIC_AT_LEAST(20020903,4) |
| * [compat code] |
| * #endif |
| * and don't forget to insert comments explaining exactly |
| * which httpd release allows us to remove the compat code |
| */ |
| |
| /* pre-APACHE_2.2.4 */ |
| #if ! AP_MODULE_MAGIC_AT_LEAST(20051115,4) |
| |
| /* added in APACHE_2.2.4 */ |
| AP_DECLARE(const char *) ap_get_server_description(void); |
| AP_DECLARE(const char *) ap_get_server_banner(void); |
| |
| #endif /* pre-APACHE_2.2.4 */ |
| |
| /* since-APACHE-2.3.0 */ |
| #if AP_MODULE_MAGIC_AT_LEAST(20060905,0) |
| |
| /* removed in APACHE-2.3.0 */ |
| AP_DECLARE(const char *) ap_get_server_version(void); |
| |
| #endif /* since-APACHE-2.3.0 */ |
| |
| /* ap_http_scheme is called ap_http_method in httpd 2.0 */ |
| #ifndef ap_http_scheme |
| #define ap_http_scheme(r) ap_http_method(r) |
| #endif |
| |
| #if AP_SERVER_MAJORVERSION_NUMBER>2 || AP_SERVER_MINORVERSION_NUMBER>=2 |
| #define MP_HTTPD_HAS_OVERRIDE_OPTS |
| #endif |
| |
| #define MP_HTTPD_OVERRIDE_HTACCESS (OR_LIMIT|OR_OPTIONS|OR_FILEINFO|OR_AUTHCFG|OR_INDEXES) |
| |
| #define MP_HTTPD_OVERRIDE_OPTS_UNSET (-1) |
| #if AP_SERVER_MAJORVERSION_NUMBER>2 || \ |
| (AP_SERVER_MAJORVERSION_NUMBER == 2 && AP_SERVER_MINORVERSION_NUMBER>=3) |
| |
| /* 2.4 API */ |
| #define MP_HTTPD_OVERRIDE_OPTS_DEFAULT (OPT_UNSET | \ |
| OPT_ALL | \ |
| OPT_SYM_OWNER | \ |
| OPT_MULTI) |
| #define mp_add_loaded_module(modp, pool, name) \ |
| ap_add_loaded_module((modp), (pool), (name)) |
| |
| #define mp_loglevel(s) ((s)->log.level) |
| #define mp_module_index_ perl_module.module_index, |
| |
| #else |
| /* 2.2 API */ |
| #define MP_HTTPD_OVERRIDE_OPTS_DEFAULT (OPT_UNSET | \ |
| OPT_ALL | \ |
| OPT_INCNOEXEC | \ |
| OPT_SYM_OWNER | \ |
| OPT_MULTI) |
| #define mp_add_loaded_module(modp, pool, name) \ |
| ap_add_loaded_module((modp), (pool)) |
| |
| #define mp_loglevel(s) ((s)->loglevel) |
| #define mp_module_index_ |
| |
| #define ap_unixd_config unixd_config |
| |
| #endif /* 2.4 vs. 2.2 API */ |
| |
| #ifndef PROXYREQ_RESPONSE |
| #define PROXYREQ_RESPONSE (3) |
| #endif |
| |
| #endif /* MODPERL_APACHE_COMPAT_H */ |
| |
| /* |
| * Local Variables: |
| * c-basic-offset: 4 |
| * indent-tabs-mode: nil |
| * End: |
| */ |