#include "apr.h"#include "apr_strings.h"#include "apr_lib.h"#include "apr_fnmatch.h"#include "apr_hash.h"#include "apr_thread_proc.h"#include "apr_hooks.h"#include "apr_want.h"#include "ap_config.h"#include "httpd.h"#include "http_config.h"#include "http_core.h"#include "http_protocol.h"#include "http_request.h"#include "http_vhost.h"#include "http_main.h"#include "http_log.h"#include "rfc1413.h"#include "util_md5.h"#include "http_connection.h"#include "apr_buckets.h"#include "util_filter.h"#include "util_ebcdic.h"#include "mpm.h"#include "mpm_common.h"#include "scoreboard.h"#include "mod_core.h"#include "mod_proxy.h"#include "ap_listen.h"Include dependency graph for core.c:

Go to the source code of this file.
Defines | |
| #define | APR_WANT_IOVEC |
| #define | APR_WANT_STRFUNC |
| #define | APR_WANT_MEMFUNC |
| #define | CORE_PRIVATE |
| #define | AP_LIMIT_REQ_BODY_UNSET ((apr_off_t) -1) |
| #define | AP_DEFAULT_LIMIT_REQ_BODY ((apr_off_t) 0) |
| #define | AP_LIMIT_UNSET ((long) -1) |
| #define | AP_DEFAULT_LIMIT_XML_BODY ((size_t)1000000) |
| #define | AP_MIN_SENDFILE_BYTES (256) |
| #define | AP_MAX_INCLUDE_DEPTH (128) |
| #define | USE_ICASE 0 |
| #define | BRIGADE_NORMALIZE(b) |
| #define | MAX_IOVEC_TO_WRITE 16 |
Typedefs | |
| typedef net_time_filter_ctx | net_time_filter_ctx_t |
Enumerations | |
| enum | server_token_type { SrvTk_MAJOR, SrvTk_MINOR, SrvTk_MINIMAL, SrvTk_OS, SrvTk_FULL, SrvTk_PRODUCT_ONLY } |
Functions | |
| APR_HOOK_STRUCT () | |
| static void * | merge_ct_filters (apr_pool_t *p, const void *key, apr_ssize_t klen, const void *overlay_val, const void *base_val, const void *data) |
| static void * | merge_core_dir_configs (apr_pool_t *a, void *basev, void *newv) |
| static void * | create_core_server_config (apr_pool_t *a, server_rec *s) |
| static void * | merge_core_server_configs (apr_pool_t *p, void *basev, void *virtv) |
| AP_CORE_DECLARE (void) | |
| static int | reorder_sorter (const void *va, const void *vb) |
| void | ap_core_reorder_directories (apr_pool_t *p, server_rec *s) |
| AP_DECLARE (int) | |
| AP_DECLARE (const char *) | |
| AP_DECLARE (const apr_array_header_t *) | |
| char * | ap_response_code_string (request_rec *r, int error_index) |
| static APR_INLINE void | do_double_reverse (conn_rec *conn) |
| static const char * | get_server_name_for_url (request_rec *r) |
| AP_DECLARE (apr_port_t) | |
| AP_DECLARE (char *) | |
| AP_DECLARE (apr_off_t) | |
| static const ap_directive_t * | find_parent (const ap_directive_t *dirp, const char *what) |
| static const char * | set_access_name (cmd_parms *cmd, void *dummy, const char *arg) |
| static const char * | set_add_default_charset (cmd_parms *cmd, void *d_, const char *arg) |
| static const char * | set_document_root (cmd_parms *cmd, void *dummy, const char *arg) |
| AP_DECLARE (void) | |
| static const char * | set_error_document (cmd_parms *cmd, void *conf_, const char *errno_str, const char *msg) |
| static const char * | set_override (cmd_parms *cmd, void *d_, const char *l) |
| static const char * | set_options (cmd_parms *cmd, void *d_, const char *l) |
| static const char * | set_etag_bits (cmd_parms *cmd, void *mconfig, const char *args_p) |
| static const char * | set_enable_mmap (cmd_parms *cmd, void *d_, const char *arg) |
| static const char * | set_enable_sendfile (cmd_parms *cmd, void *d_, const char *arg) |
| static const char * | satisfy (cmd_parms *cmd, void *c_, const char *arg) |
| static const char * | require (cmd_parms *cmd, void *c_, const char *arg) |
| AP_CORE_DECLARE_NONSTD (const char *) | |
| static char * | unclosed_directive (cmd_parms *cmd) |
| static const char * | dirsection (cmd_parms *cmd, void *mconfig, const char *arg) |
| static const char * | urlsection (cmd_parms *cmd, void *mconfig, const char *arg) |
| static const char * | filesection (cmd_parms *cmd, void *mconfig, const char *arg) |
| static const char * | start_ifmod (cmd_parms *cmd, void *mconfig, const char *arg) |
| static const char * | start_ifdefine (cmd_parms *cmd, void *dummy, const char *arg) |
| static const char * | virtualhost_section (cmd_parms *cmd, void *dummy, const char *arg) |
| static const char * | set_server_alias (cmd_parms *cmd, void *dummy, const char *arg) |
| static const char * | set_server_string_slot (cmd_parms *cmd, void *dummy, const char *arg) |
| static const char * | server_hostname_port (cmd_parms *cmd, void *dummy, const char *arg) |
| static const char * | set_signature_flag (cmd_parms *cmd, void *d_, const char *arg) |
| static const char * | set_server_root (cmd_parms *cmd, void *dummy, const char *arg) |
| static const char * | set_timeout (cmd_parms *cmd, void *dummy, const char *arg) |
| static const char * | set_idcheck (cmd_parms *cmd, void *d_, int arg) |
| static const char * | set_allow2f (cmd_parms *cmd, void *d_, int arg) |
| static const char * | set_hostname_lookups (cmd_parms *cmd, void *d_, const char *arg) |
| static const char * | set_serverpath (cmd_parms *cmd, void *dummy, const char *arg) |
| static const char * | set_content_md5 (cmd_parms *cmd, void *d_, int arg) |
| static const char * | set_accept_path_info (cmd_parms *cmd, void *d_, const char *arg) |
| static const char * | set_use_canonical_name (cmd_parms *cmd, void *d_, const char *arg) |
| static const char * | include_config (cmd_parms *cmd, void *dummy, const char *name) |
| static const char * | set_loglevel (cmd_parms *cmd, void *dummy, const char *arg) |
| static const char * | set_authname (cmd_parms *cmd, void *mconfig, const char *word1) |
| static apr_status_t | reset_version (void *dummy) |
| static void | ap_set_version (apr_pool_t *pconf) |
| static const char * | set_serv_tokens (cmd_parms *cmd, void *dummy, const char *arg) |
| static const char * | set_limit_req_line (cmd_parms *cmd, void *dummy, const char *arg) |
| static const char * | set_limit_req_fieldsize (cmd_parms *cmd, void *dummy, const char *arg) |
| static const char * | set_limit_req_fields (cmd_parms *cmd, void *dummy, const char *arg) |
| static const char * | set_limit_req_body (cmd_parms *cmd, void *conf_, const char *arg) |
| static const char * | set_limit_xml_req_body (cmd_parms *cmd, void *conf_, const char *arg) |
| AP_DECLARE (size_t) | |
| static const char * | no_set_limit (cmd_parms *cmd, void *conf_, const char *arg, const char *arg2) |
| static const char * | set_recursion_limit (cmd_parms *cmd, void *dummy, const char *arg1, const char *arg2) |
| static void | log_backtrace (const request_rec *r) |
| static const char * | add_ct_output_filters (cmd_parms *cmd, void *conf_, const char *arg, const char *arg2) |
| void | ap_add_output_filters_by_type (request_rec *r) |
| static apr_status_t | writev_it_all (apr_socket_t *s, struct iovec *vec, int nvec, apr_size_t len, apr_size_t *nbytes) |
| static apr_status_t | emulate_sendfile (core_net_rec *c, apr_file_t *fd, apr_hdtr_t *hdtr, apr_off_t offset, apr_size_t length, apr_size_t *nbytes) |
| AP_DECLARE_NONSTD (int) | |
| static int | core_map_to_storage (request_rec *r) |
| static int | do_nothing (request_rec *r) |
| static int | core_override_type (request_rec *r) |
| static int | default_handler (request_rec *r) |
| static int | net_time_filter (ap_filter_t *f, apr_bucket_brigade *b, ap_input_mode_t mode, apr_read_type_e block, apr_off_t readbytes) |
| static void | brigade_move (apr_bucket_brigade *b, apr_bucket_brigade *a, apr_bucket *e) |
| static int | core_input_filter (ap_filter_t *f, apr_bucket_brigade *b, ap_input_mode_t mode, apr_read_type_e block, apr_off_t readbytes) |
| static | APR_OPTIONAL_FN_TYPE (ap_logio_add_bytes_out) |
| static int | core_post_config (apr_pool_t *pconf, apr_pool_t *plog, apr_pool_t *ptemp, server_rec *s) |
| static void | core_insert_filter (request_rec *r) |
| static apr_status_t | reset_request_notes (void *dummy) |
| AP_DECLARE (apr_size_t) | |
| AP_DECLARE (void **) | |
| static int | core_create_req (request_rec *r) |
| static int | core_create_proxy_req (request_rec *r, request_rec *pr) |
| static conn_rec * | core_create_conn (apr_pool_t *ptrans, server_rec *server, apr_socket_t *csd, long id, void *sbh, apr_bucket_alloc_t *alloc) |
| static int | core_pre_connection (conn_rec *c, void *csd) |
| static void | register_hooks (apr_pool_t *p) |
Variables | |
| static char * | server_version = NULL |
| static int | version_locked = 0 |
| static enum server_token_type | ap_server_tokens = SrvTk_FULL |
| static const command_rec | core_cmds [] |
| static apr_size_t | num_request_notes = AP_NUM_STD_NOTES |
| AP_DECLARE_DATA module | core_module |
|
|
Definition at line 55 of file core.c. Referenced by AP_DECLARE(). |
|
|
Definition at line 59 of file core.c. Referenced by AP_DECLARE(). |
|
|
Definition at line 54 of file core.c. Referenced by AP_DECLARE(), APR_HOOK_STRUCT(), and merge_core_dir_configs(). |
|
|
Definition at line 58 of file core.c. Referenced by AP_DECLARE(), APR_HOOK_STRUCT(), and merge_core_dir_configs(). |
|
|
|
|
|
Definition at line 61 of file core.c. Referenced by APR_OPTIONAL_FN_TYPE(). |
|
|
|
|
|
|
|
|
|
|
|
Value: do { \ apr_bucket *e = APR_BRIGADE_FIRST(b); \ do { \ if (e->length == 0 && !APR_BUCKET_IS_METADATA(e)) { \ apr_bucket *d; \ d = APR_BUCKET_NEXT(e); \ apr_bucket_delete(e); \ e = d; \ } \ e = APR_BUCKET_NEXT(e); \ } while (!APR_BRIGADE_EMPTY(b) && (e != APR_BRIGADE_SENTINEL(b))); \ } while (0) Definition at line 3663 of file core.c. Referenced by core_input_filter(). |
|
|
|
|
|
|
|
|
Definition at line 1623 of file core.c. Referenced by dirsection(), and filesection(). |
|
|
|
|
|
|
|
||||||||||||||||||||
|
Definition at line 2826 of file core.c. References APR_HASH_KEY_STRING, apr_pcalloc, NULL, and cmd_parms_struct::pool. |
|
|
Definition at line 2869 of file core.c. References ap_get_module_config, APR_HASH_KEY_STRING, request_rec::connection, request_rec::content_type, core_module, ap_filter_rec_t::name, ap_filter_rec_t::next, NULL, request_rec::per_dir_config, request_rec::pool, request_rec::proxyreq, and PROXYREQ_NONE. |
|
|
Definition at line 499 of file core.c. References AP_CORE_DECLARE, ap_get_module_config, core_module, and sconf. |
|
|
Definition at line 1568 of file core.c. References AP_CORE_DECLARE_NONSTD, AP_METHOD_BIT, errmsg(), M_INVALID, M_TRACE, methnum, method, and NULL. Here is the call graph for this function: ![]() |
|
||||||||||||
|
Definition at line 568 of file core.c. References ap_get_module_config, apr_pool_create, core_module, apr_array_header_t::elts, server_rec::module_config, apr_array_header_t::nelts, nelts, reorder_sorter(), and sconf. Here is the call graph for this function: ![]() |
|
|
Definition at line 4352 of file core.c. References AP_DECLARE, ap_get_module_config, core_module, and NULL. |
|
|
Definition at line 4345 of file core.c. References AP_DECLARE, apr_hook_global_pool, NULL, and reset_request_notes(). Here is the call graph for this function: ![]() |
|
|
Definition at line 2641 of file core.c. References AP_DECLARE, AP_DEFAULT_LIMIT_XML_BODY, ap_get_module_config, AP_LIMIT_UNSET, and core_module. |
|
|
Send the minimal part of an HTTP response header.
Definition at line 1141 of file core.c. References AP_DECLARE, ap_get_module_config, apr_pcalloc, core_module, NULL, and RESPONSE_CODES. |
|
|
Definition at line 968 of file core.c. References AP_DECLARE, AP_DEFAULT_LIMIT_REQ_BODY, ap_get_module_config, AP_LIMIT_REQ_BODY_UNSET, and core_module. |
|
|
Definition at line 955 of file core.c. References AP_DECLARE, ap_http_method, ap_is_default_port, get_server_name_for_url(), host, NULL, and port. Here is the call graph for this function: ![]() |
|
|
Definition at line 919 of file core.c. References AP_DECLARE, ap_default_port, ap_get_module_config, core_module, and port. |
|
|
Retrieve information about all of the requires directives for this request
Definition at line 677 of file core.c. References AP_DECLARE, ap_get_module_config, conf, and core_module. |
|
|
Get XML post data and parse it
Definition at line 618 of file core.c. References AP_DECLARE, ap_get_module_config, conf, and core_module. |
|
|
Read headers strings from a script, ensuring that the output is valid. If the output is valid, then the headers are added to the headers out of the current request
Definition at line 3349 of file core.c. References AP_DECLARE_NONSTD, ap_get_module_config, APLOG_ERR, APLOG_MARK, APR_FILEPATH_SECUREROOT, APR_FILEPATH_TRUENAME, APR_SUCCESS, core_module, HTTP_BAD_REQUEST, HTTP_FORBIDDEN, OK, and path. |
|
||||||||||||
|
Definition at line 702 of file core.c. References ap_get_module_config, core_module, NULL, request_rec::per_dir_config, and request_rec::request_config. Referenced by AP_DECLARE(). |
|
|
Definition at line 2478 of file core.c. References AP_SERVER_BASEPRODUCT, AP_SERVER_BASEVERSION, AP_SERVER_MAJORVERSION, AP_SERVER_MINORREVISION, PLATFORM, SrvTk_FULL, SrvTk_MAJOR, SrvTk_MINIMAL, and SrvTk_MINOR. Referenced by core_post_config(). |
|
|
Definition at line 68 of file core.c. References AP_LIMIT_REQ_BODY_UNSET, AP_LIMIT_UNSET, apr_pcalloc, conf, METHODS, NULL, OPT_ALL, OPT_NONE, OPT_UNSET, OR_ALL, OR_UNSET, and SATISFY_NOSPEC. |
|
|
||||||||||||||||
|
Split the contents of a brigade after bucket 'e' to an existing brigade XXXX: Should this function be added to APR-Util? Definition at line 3683 of file core.c. References APR_BRIGADE_CHECK_CONSISTENCY, APR_BRIGADE_SENTINEL, APR_RING_LAST, APR_RING_SPLICE_HEAD, APR_RING_UNSPLICE, and f. Referenced by core_input_filter(). |
|
||||||||||||||||||||||||||||
|
Definition at line 4412 of file core.c. References APLOG_INFO, APLOG_MARK, APR_LOCAL, apr_pcalloc, APR_REMOTE, apr_socket_close(), APR_SUCCESS, conn_rec::base_server, conn_rec::bucket_alloc, conn_rec::conn_config, conn_rec::id, conn_rec::local_addr, conn_rec::local_ip, conn_rec::notes, NULL, conn_rec::pool, conn_rec::remote_addr, conn_rec::remote_ip, conn_rec::sbh, and SERVER_BUSY_READ. Referenced by register_hooks(). Here is the call graph for this function: ![]() |
|
||||||||||||
|
Definition at line 4407 of file core.c. References core_create_req(). Referenced by register_hooks(). Here is the call graph for this function: ![]() |
|
|
Definition at line 4370 of file core.c. References ap_get_module_config, ap_net_time_filter_handle, AP_REQ_DEFAULT_PATH_INFO, ap_set_module_config, apr_pcalloc, core_module, NULL, and OK. Referenced by core_create_proxy_req(), and register_hooks(). |
|
||||||||||||||||||||||||
|
Definition at line 3699 of file core.c. References AP_DEBUG_ASSERT, AP_MODE_EATCRLF, AP_MODE_EXHAUSTIVE, AP_MODE_GETLINE, AP_MODE_INIT, AP_MODE_READBYTES, AP_MODE_SPECULATIVE, APR_ASCII_CR, APR_ASCII_LF, APR_BLOCK_READ, APR_BRIGADE_CONCAT, APR_BRIGADE_EMPTY, APR_BRIGADE_FIRST, APR_BRIGADE_FOREACH, APR_BRIGADE_INSERT_TAIL, apr_bucket_copy, apr_bucket_delete, apr_bucket_read, APR_EOF, APR_NONBLOCK_READ, apr_pcalloc, APR_STATUS_IS_EAGAIN, APR_SUCCESS, core_filter_ctx::b, brigade_move(), BRIGADE_NORMALIZE, conn_rec::bucket_alloc, ap_filter_t::c, core_net_rec::client_socket, ctx, ap_filter_t::ctx, e, HUGE_STRING_LEN, core_net_rec::in_ctx, len, conn_rec::pool, str, and core_filter_ctx::tmpbb. Referenced by register_hooks(). Here is the call graph for this function: ![]() |
|
|
Definition at line 4316 of file core.c. References ap_get_module_config, request_rec::connection, core_module, NULL, request_rec::per_dir_config, and request_rec::pool. Referenced by register_hooks(). |
|
|
Definition at line 3416 of file core.c. References OK. Referenced by register_hooks(). |
|
|
Definition at line 3435 of file core.c. References ap_get_module_config, AP_REQ_DEFAULT_PATH_INFO, core_module, request_rec::handler, OK, request_rec::per_dir_config, and request_rec::used_path_info. Referenced by register_hooks(). |
|
||||||||||||||||||||
|
Definition at line 4307 of file core.c. References ap_logio_add_bytes_out, ap_set_version(), APR_RETRIEVE_OPTIONAL_FN, and OK. Referenced by register_hooks(). Here is the call graph for this function: ![]() |
|
||||||||||||
|
Definition at line 4455 of file core.c. References ap_core_input_filter_handle, ap_core_output_filter_handle, ap_set_module_config, ap_sock_disable_nagle, core_module, DONE, NULL, and conn_rec::pool. Referenced by register_hooks(). |
|
||||||||||||
|
Definition at line 441 of file core.c. References apr_pcalloc, conf, server_rec::is_virtual, and NULL. |
|
|
||||||||||||||||
|
Definition at line 1635 of file core.c. References ACCESS_CONF, ap_strrchr_c, APR_EPATHWILD, APR_FILEPATH_TRUENAME, APR_SUCCESS, cmd_parms_struct::cmd, command_struct::cmd_data, core_module, cmd_parms_struct::directive, errmsg(), ap_directive_t::first_child, command_struct::name, NULL, OR_ALL, cm |