~ubuntu-branches/ubuntu/feisty/apache2/feisty

« back to all changes in this revision

Viewing changes to modules/http/mod_core.h

  • Committer: Bazaar Package Importer
  • Author(s): Andreas Barth
  • Date: 2006-12-09 21:05:45 UTC
  • mfrom: (0.6.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20061209210545-h70s0xaqc2v8vqr2
Tags: 2.2.3-3.2
* Non-maintainer upload.
* 043_ajp_connection_reuse: Patch from upstream Bugzilla, fixing a critical
  issue with regard to connection reuse in mod_proxy_ajp.
  Closes: #396265

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* Licensed to the Apache Software Foundation (ASF) under one or more
 
2
 * contributor license agreements.  See the NOTICE file distributed with
 
3
 * this work for additional information regarding copyright ownership.
 
4
 * The ASF licenses this file to You under the Apache License, Version 2.0
 
5
 * (the "License"); you may not use this file except in compliance with
 
6
 * the License.  You may obtain a copy of the License at
 
7
 *
 
8
 *     http://www.apache.org/licenses/LICENSE-2.0
 
9
 *
 
10
 * Unless required by applicable law or agreed to in writing, software
 
11
 * distributed under the License is distributed on an "AS IS" BASIS,
 
12
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
13
 * See the License for the specific language governing permissions and
 
14
 * limitations under the License.
 
15
 */
 
16
 
 
17
 
 
18
/**
 
19
 * @file  mod_core.h
 
20
 * @brief mod_core private header file
 
21
 *
 
22
 * @defgroup MOD_CORE mod_core
 
23
 * @ingroup  APACHE_MODS
 
24
 * @{
 
25
 */
 
26
 
 
27
#ifndef MOD_CORE_H
 
28
#define MOD_CORE_H
 
29
 
 
30
#include "apr.h"
 
31
#include "apr_buckets.h"
 
32
 
 
33
#include "httpd.h"
 
34
#include "util_filter.h"
 
35
 
 
36
 
 
37
#ifdef __cplusplus
 
38
extern "C" {
 
39
#endif
 
40
 
 
41
/* Handles for core filters */
 
42
extern AP_DECLARE_DATA ap_filter_rec_t *ap_http_input_filter_handle;
 
43
extern AP_DECLARE_DATA ap_filter_rec_t *ap_http_header_filter_handle;
 
44
extern AP_DECLARE_DATA ap_filter_rec_t *ap_chunk_filter_handle;
 
45
extern AP_DECLARE_DATA ap_filter_rec_t *ap_http_outerror_filter_handle;
 
46
extern AP_DECLARE_DATA ap_filter_rec_t *ap_byterange_filter_handle;
 
47
 
 
48
/*
 
49
 * These (input) filters are internal to the mod_core operation.
 
50
 */
 
51
apr_status_t ap_http_filter(ap_filter_t *f, apr_bucket_brigade *b,
 
52
                            ap_input_mode_t mode, apr_read_type_e block,
 
53
                            apr_off_t readbytes);
 
54
 
 
55
/* HTTP/1.1 chunked transfer encoding filter. */
 
56
apr_status_t ap_http_chunk_filter(ap_filter_t *f, apr_bucket_brigade *b);
 
57
 
 
58
/* Filter to handle any error buckets on output */
 
59
apr_status_t ap_http_outerror_filter(ap_filter_t *f,
 
60
                                     apr_bucket_brigade *b);
 
61
 
 
62
char *ap_response_code_string(request_rec *r, int error_index);
 
63
 
 
64
/**
 
65
 * Send the minimal part of an HTTP response header.
 
66
 * @param r The current request
 
67
 * @param bb The brigade to add the header to.
 
68
 * @warning Modules should be very careful about using this, and should
 
69
 *          the default behavior.  Much of the HTTP/1.1 implementation
 
70
 *          correctness depends on the full headers.
 
71
 * @deffunc void ap_basic_http_header(request_rec *r, apr_bucket_brigade *bb)
 
72
 */
 
73
AP_DECLARE(void) ap_basic_http_header(request_rec *r, apr_bucket_brigade *bb);
 
74
 
 
75
/**
 
76
 * Send an appropriate response to an http TRACE request.
 
77
 * @param r The current request
 
78
 * @tip returns DONE or the HTTP status error if it handles the TRACE,
 
79
 * or DECLINED if the request was not for TRACE.
 
80
 * request method was not TRACE.
 
81
 */
 
82
AP_DECLARE_NONSTD(int) ap_send_http_trace(request_rec *r);
 
83
 
 
84
/**
 
85
 * Send an appropriate response to an http OPTIONS request.
 
86
 * @param r The current request
 
87
 */
 
88
AP_DECLARE(int) ap_send_http_options(request_rec *r);
 
89
 
 
90
#ifdef __cplusplus
 
91
}
 
92
#endif
 
93
 
 
94
#endif  /* !MOD_CORE_H */
 
95
/** @} */