31#define APR_WANT_STRFUNC
107 "Invalid response status %i",
type);
111 "Response from AP_FILTER_ERROR");
205 "error-notes")) !=
NULL) {
225 "Invalid error redirection directive: %s",
256 "Can't consume pipelined empty lines");
299 "Can't check pipelined data");
347#define RETRIEVE_BRIGADE_FROM_POOL(bb, key, pool, allocator) do { \
348 apr_pool_userdata_get((void **)&bb, key, pool); \
350 bb = apr_brigade_create(pool, allocator); \
351 apr_pool_userdata_setn((const void *)bb, key, NULL, pool); \
354 apr_brigade_cleanup(bb); \
370 c->pool,
c->bucket_alloc);
436 "Headers received from client:");
489 if (!
c->data_in_input_filters) {
491 c->pool,
c->bucket_alloc);
502 "flushing data to the client");
621 new->input_filters =
new->proto_input_filters;
633 f =
new->output_filters;
639 "dropping filter '%s' in internal redirect from %s to %s",
655 }
while (
f &&
f !=
new->proto_output_filters);
660 new->output_filters =
new->proto_output_filters;
Symbol export macros and hook functions.
const char apr_size_t len
#define AP_PROCESS_REQUEST_ENTRY(arg0, arg1)
#define AP_PROCESS_REQUEST_RETURN(arg0, arg1, arg2)
#define AP_INTERNAL_REDIRECT(arg0, arg1)
APR Standard Headers Support.
int ap_invoke_handler(request_rec *r)
int ap_run_quick_handler(request_rec *r, int lookup_uri)
#define APLOG_USE_MODULE(foo)
ap_conf_vector_t * ap_create_request_config(apr_pool_t *p)
#define DEFAULT_LIMIT_BLANK_LINES
apr_status_t ap_pass_brigade(ap_filter_t *filter, apr_bucket_brigade *bucket)
ap_filter_t * ap_add_output_filter_handle(ap_filter_rec_t *f, void *ctx, request_rec *r, conn_rec *c)
apr_status_t ap_get_brigade(ap_filter_t *filter, apr_bucket_brigade *bucket, ap_input_mode_t mode, apr_read_type_e block, apr_off_t readbytes)
void ap_remove_output_filter(ap_filter_t *f)
ap_filter_rec_t * ap_subreq_core_filter_handle
int ap_is_recursion_limit_exceeded(const request_rec *r)
const unsigned char * buf
ap_method_list_t * ap_make_method_list(apr_pool_t *p, int nelts)
void ap_method_list_add(ap_method_list_t *l, const char *method)
void ap_parse_uri(request_rec *r, const char *uri)
void ap_send_error_response(request_rec *r, int recursive_error)
void ap_finalize_request_protocol(request_rec *r)
int ap_index_of_response(int status)
int ap_post_read_request(request_rec *r)
void ap_set_content_type_ex(request_rec *r, const char *ct, int trusted)
void ap_clear_method_list(ap_method_list_t *l)
void ap_set_content_type(request_rec *r, const char *ct)
void ap_internal_fast_redirect(request_rec *rr, request_rec *r)
void ap_allow_methods(request_rec *r, int reset,...)
void ap_process_request(request_rec *r)
void ap_internal_redirect_handler(const char *new_uri, request_rec *r)
int ap_process_request_internal(request_rec *r)
apr_bucket * ap_bucket_eor_create(apr_bucket_alloc_t *list, request_rec *r)
int ap_run_create_request(request_rec *r)
void ap_process_request_after_handler(request_rec *r)
void ap_allow_standard_methods(request_rec *r, int reset,...)
void ap_die(int type, request_rec *r)
void ap_internal_redirect(const char *new_uri, request_rec *r)
void ap_process_async_request(request_rec *r)
apr_status_t ap_check_pipeline(conn_rec *c, apr_bucket_brigade *bb, unsigned int max_blank_lines)
#define AP_REQUEST_IS_TRUSTED_CT(r)
#define APR_STATUS_IS_TIMEUP(s)
#define APR_STATUS_IS_EAGAIN(s)
#define APR_BRIGADE_INSERT_HEAD(b, e)
#define APR_BRIGADE_EMPTY(b)
apr_dbd_transaction_t int mode
#define ap_is_HTTP_VALID_RESPONSE(x)
#define HTTP_PROXY_AUTHENTICATION_REQUIRED
#define HTTP_INTERNAL_SERVER_ERROR
#define HTTP_MOVED_TEMPORARILY
#define ap_is_HTTP_REDIRECT(x)
#define HTTP_UNAUTHORIZED
#define ap_status_drops_connection(x)
char * ap_response_code_string(request_rec *r, int error_index)
ap_filter_rec_t * ap_http_header_filter_handle
#define apr_pool_join(a, b)
int ap_is_url(const char *u)
char * ap_escape_logitem(apr_pool_t *p, const char *str)
#define AP_DEBUG_ASSERT(exp)
@ CONN_STATE_WRITE_COMPLETION
apr_vformatter_buff_t * c
apr_uint32_t apr_pool_t apr_uint32_t apr_pollset_method_e method
#define apr_pcalloc(p, size)
#define AP_REQ_DEFAULT_PATH_INFO
static void update_r_in_filters(ap_filter_t *f, request_rec *from, request_rec *to)
#define RETRIEVE_BRIGADE_FROM_POOL(bb, key, pool, allocator)
static request_rec * internal_internal_redirect(const char *new_uri, request_rec *r)
static apr_table_t * rename_original_env(apr_pool_t *p, apr_table_t *t)
static void ap_die_r(int type, request_rec *r, int recursive_error)
static md_log_level_cb * log_level
mod_core private header file
static apr_status_t reset(proxy_balancer *balancer, server_rec *s)
Apache scoreboard library.
void ap_time_process_request(ap_sb_handle_t *sbh, int status)
The representation of a filter chain.
Structure to store things which are per connection.
ap_conn_keepalive_e keepalive
A structure that represents the current request.
apr_array_header_t * content_languages
const char * content_type
apr_table_t * trailers_in
struct ap_filter_t * output_filters
struct ap_filter_t * proto_input_filters
const struct htaccess_result * htaccess
apr_sockaddr_t * useragent_addr
ap_method_list_t * allowed_methods
apr_table_t * err_headers_out
struct ap_filter_t * proto_output_filters
char * canonical_filename
struct ap_filter_t * input_filters
apr_table_t * subprocess_env
struct ap_conf_vector_t * per_dir_config
apr_thread_mutex_t * invoke_mtx
apr_table_t * trailers_out
const char * content_encoding
apr_table_t * headers_out
struct ap_conf_vector_t * lookup_defaults
ap_input_mode_t
input filtering modes