diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/ap_compat.h | 5 | ||||
-rw-r--r-- | include/ap_config.h | 15 | ||||
-rw-r--r-- | include/ap_config_layout.h.in | 5 | ||||
-rw-r--r-- | include/ap_listen.h | 18 | ||||
-rw-r--r-- | include/ap_mmn.h | 14 | ||||
-rw-r--r-- | include/ap_mpm.h | 14 | ||||
-rw-r--r-- | include/ap_provider.h | 14 | ||||
-rw-r--r-- | include/ap_regex.h | 5 | ||||
-rw-r--r-- | include/ap_regkey.h | 10 | ||||
-rw-r--r-- | include/ap_release.h | 5 | ||||
-rw-r--r-- | include/http_config.h | 19 | ||||
-rw-r--r-- | include/http_connection.h | 29 | ||||
-rw-r--r-- | include/http_core.h | 115 | ||||
-rw-r--r-- | include/http_log.h | 58 | ||||
-rw-r--r-- | include/http_main.h | 23 | ||||
-rw-r--r-- | include/http_protocol.h | 107 | ||||
-rw-r--r-- | include/http_request.h | 62 | ||||
-rw-r--r-- | include/http_vhost.h | 25 | ||||
-rw-r--r-- | include/httpd.h | 229 | ||||
-rw-r--r-- | include/mpm_common.h | 14 | ||||
-rw-r--r-- | include/scoreboard.h | 5 | ||||
-rw-r--r-- | include/util_cfgtree.h | 18 | ||||
-rw-r--r-- | include/util_charset.h | 13 | ||||
-rw-r--r-- | include/util_ebcdic.h | 14 | ||||
-rw-r--r-- | include/util_filter.h | 21 | ||||
-rw-r--r-- | include/util_ldap.h | 5 | ||||
-rw-r--r-- | include/util_md5.h | 14 | ||||
-rw-r--r-- | include/util_script.h | 14 | ||||
-rw-r--r-- | include/util_time.h | 14 | ||||
-rw-r--r-- | include/util_xml.h | 14 |
30 files changed, 578 insertions, 340 deletions
diff --git a/include/ap_compat.h b/include/ap_compat.h index 4c25b0ad9d..93edd6af51 100644 --- a/include/ap_compat.h +++ b/include/ap_compat.h @@ -14,6 +14,11 @@ * limitations under the License. */ +/** + * @file ap_compat.h + * @brief Redefine Apache 1.3 symbols + */ + #ifndef AP_COMPAT_H #define AP_COMPAT_H diff --git a/include/ap_config.h b/include/ap_config.h index cfcd04ac95..a580e67b49 100644 --- a/include/ap_config.h +++ b/include/ap_config.h @@ -14,6 +14,11 @@ * limitations under the License. */ +/** + * @file ap_config.h + * @brief Symbol export macros and hook functions + */ + #ifndef AP_CONFIG_H #define AP_CONFIG_H @@ -21,13 +26,11 @@ #include "apr_hooks.h" #include "apr_optional_hooks.h" -/** - * @file ap_config.h - * @brief Symbol export macros and hook functions - */ - /* Although this file doesn't declare any hooks, declare the hook group here */ -/** @defgroup hooks Apache Hooks */ +/** + * @defgroup hooks Apache Hooks + * @ingroup APACHE_CORE + */ #ifdef DOXYGEN /* define these just so doxygen documents them */ diff --git a/include/ap_config_layout.h.in b/include/ap_config_layout.h.in index 185494de26..12c9d938fc 100644 --- a/include/ap_config_layout.h.in +++ b/include/ap_config_layout.h.in @@ -14,6 +14,11 @@ * limitations under the License. */ +/** + * @file ap_config_layout.h + * @brief Apache Config Layout + */ + #ifndef AP_CONFIG_LAYOUT_H #define AP_CONFIG_LAYOUT_H diff --git a/include/ap_listen.h b/include/ap_listen.h index 6182a8917d..d244392290 100644 --- a/include/ap_listen.h +++ b/include/ap_listen.h @@ -14,6 +14,15 @@ * limitations under the License. */ +/** + * @file ap_listen.h + * @brief Apache Listeners Library + * + * @defgroup APACHE_CORE_LISTEN Apache Listeners Library + * @ingroup APACHE_CORE + * @{ + */ + #ifndef AP_LISTEN_H #define AP_LISTEN_H @@ -21,15 +30,13 @@ #include "httpd.h" #include "http_config.h" -/** - * @package Apache Listeners Library - */ - typedef struct ap_listen_rec ap_listen_rec; typedef apr_status_t (*accept_function)(void **csd, ap_listen_rec *lr, apr_pool_t *ptrans); /** - * Apache's listeners record. These are used in the Multi-Processing Modules + * @brief Apache's listeners record. + * + * These are used in the Multi-Processing Modules * to setup all of the sockets for the MPM to listen to and accept on. */ struct ap_listen_rec { @@ -109,3 +116,4 @@ AP_INIT_TAKE1("ReceiveBufferSize", ap_set_receive_buffer_size, NULL, \ RSRC_CONF, "Receive buffer size in bytes") #endif +/** @} */ diff --git a/include/ap_mmn.h b/include/ap_mmn.h index b8d922fdf6..84dfebeb86 100644 --- a/include/ap_mmn.h +++ b/include/ap_mmn.h @@ -14,13 +14,18 @@ * limitations under the License. */ -#ifndef APACHE_AP_MMN_H -#define APACHE_AP_MMN_H - /** - * @package Module Magic Number + * @file ap_mpm.h + * @brief Module Magic Number + * + * @defgroup APACHE_CORE_MMN Module Magic Number + * @ingroup APACHE_CORE + * @{ */ +#ifndef APACHE_AP_MMN_H +#define APACHE_AP_MMN_H + /* * MODULE_MAGIC_NUMBER_MAJOR * Major API changes that could cause compatibility problems for older modules @@ -137,3 +142,4 @@ #define MODULE_MAGIC_AT_LEAST old_broken_macro_we_hope_you_are_not_using #endif /* !APACHE_AP_MMN_H */ +/** @} */ diff --git a/include/ap_mpm.h b/include/ap_mpm.h index b1e303fe05..405580b0ea 100644 --- a/include/ap_mpm.h +++ b/include/ap_mpm.h @@ -14,15 +14,20 @@ * limitations under the License. */ +/** + * @file ap_mmn.h + * @brief Apache Multi-Processing Module library + * + * @defgroup APACHE_CORE_MPM Multi-Processing Module library + * @ingroup APACHE_CORE + * @{ + */ + #ifndef AP_MPM_H #define AP_MPM_H #include "apr_thread_proc.h" -/** - * @package Multi-Processing Module library - */ - /* The MPM, "multi-processing model" provides an abstraction of the interface with the OS for distributing incoming connections to @@ -175,3 +180,4 @@ AP_DECLARE_HOOK(int,fatal_exception,(ap_exception_info_t *ei)) #endif /*AP_ENABLE_EXCEPTION_HOOK*/ #endif +/** @} */ diff --git a/include/ap_provider.h b/include/ap_provider.h index c05da554c5..d4ee78eb2c 100644 --- a/include/ap_provider.h +++ b/include/ap_provider.h @@ -14,16 +14,21 @@ * limitations under the License. */ +/** + * @file ap_provider.h + * @brief Apache Provider API + * + * @defgroup APACHE_CORE_PROVIDER Provider API + * @ingroup APACHE_CORE + * @{ + */ + #ifndef AP_PROVIDER_H #define AP_PROVIDER_H #include "ap_config.h" /** - * @package Provider API - */ - -/** * This function is used to register a provider with the global * provider pool. * @param pool The pool to create any storage from @@ -52,3 +57,4 @@ AP_DECLARE(void *) ap_lookup_provider(const char *provider_group, const char *provider_version); #endif +/** @} */ diff --git a/include/ap_regex.h b/include/ap_regex.h index a52ade8180..0f1ea92bfa 100644 --- a/include/ap_regex.h +++ b/include/ap_regex.h @@ -47,6 +47,11 @@ POSSIBILITY OF SUCH DAMAGE. ----------------------------------------------------------------------------- */ +/** + * @file ap_regex.h + * @brief Apache Regex defines + */ + #ifndef AP_REGEX_H #define AP_REGEX_H diff --git a/include/ap_regkey.h b/include/ap_regkey.h index 1964ccd2d3..c193e21cc0 100644 --- a/include/ap_regkey.h +++ b/include/ap_regkey.h @@ -14,6 +14,11 @@ * limitations under the License. */ +/** + * @file ap_regkey.h + * @brief APR-style Win32 Registry Manipulation + */ + #ifndef AP_REGKEY_H #define AP_REGKEY_H @@ -34,11 +39,6 @@ typedef struct ap_regkey_t ap_regkey_t; AP_DECLARE(const ap_regkey_t *) ap_regkey_const(int i); /** - * @file ap_regkey.h - * @brief APR-style Win32 Registry Manipulation - */ - -/** * Win32 Only: Constants for ap_regkey_open() */ #define AP_REGKEY_CLASSES_ROOT ap_regkey_const(0) diff --git a/include/ap_release.h b/include/ap_release.h index 2923f0e39f..40ae2155e0 100644 --- a/include/ap_release.h +++ b/include/ap_release.h @@ -14,6 +14,11 @@ * limitations under the License. */ +/** + * @file ap_release.h + * @brief Version Release defines + */ + #ifndef AP_RELEASE_H #define AP_RELEASE_H diff --git a/include/http_config.h b/include/http_config.h index 483cae56d2..022d01ec52 100644 --- a/include/http_config.h +++ b/include/http_config.h @@ -14,6 +14,15 @@ * limitations under the License. */ +/** + * @file http_config.h + * @brief Apache Configuration + * + * @defgroup APACHE_CORE_CONFIG Configuration + * @ingroup APACHE_CORE + * @{ + */ + #ifndef APACHE_HTTP_CONFIG_H #define APACHE_HTTP_CONFIG_H @@ -24,11 +33,6 @@ extern "C" { #endif -/** - * @file http_config.h - * @brief Apache Configuration - */ - /* * The central data structures around here... */ @@ -694,7 +698,7 @@ AP_DECLARE(const char *) ap_walk_config(ap_directive_t *conftree, ap_conf_vector_t *section_vector); /** - * @defgroup ap_check_cmd_context ap_check_cmd_context + * @defgroup ap_check_cmd_context Check command context * @{ */ /** @@ -721,7 +725,7 @@ AP_DECLARE(const char *) ap_check_cmd_context(cmd_parms *cmd, #ifdef CORE_PRIVATE /** - * This structure is used to assign symbol names to module pointers + * @brief This structure is used to assign symbol names to module pointers */ typedef struct { const char *name; @@ -1049,3 +1053,4 @@ AP_DECLARE_HOOK(void,optional_fn_retrieve,(void)) #endif #endif /* !APACHE_HTTP_CONFIG_H */ +/** @} */ diff --git a/include/http_connection.h b/include/http_connection.h index 8ade757b1d..e5f7f0e416 100644 --- a/include/http_connection.h +++ b/include/http_connection.h @@ -14,6 +14,15 @@ * limitations under the License. */ +/** + * @file http_connection.h + * @brief Apache connection library + * + * @defgroup APACHE_CORE_CONNECTION Connection Library + * @ingroup APACHE_CORE + * @{ + */ + #ifndef APACHE_HTTP_CONNECTION_H #define APACHE_HTTP_CONNECTION_H @@ -24,10 +33,11 @@ #ifdef __cplusplus extern "C" { #endif - /** - * @package Apache connection library + * @file http_connection.h + * @brief Apache connection library */ + #ifdef CORE_PRIVATE /** * This is the protocol module driver. This calls all of the @@ -36,10 +46,13 @@ extern "C" { * @param csd The mechanism on which this connection is to be read. * Most times this will be a socket, but it is up to the module * that accepts the request to determine the exact type. - * @deffunc void ap_process_connection(conn_rec *c, void *csd) */ AP_CORE_DECLARE(void) ap_process_connection(conn_rec *c, void *csd); +/** + * Flushes all remain data in the client send buffer + * @param c The connection to flush + */ AP_CORE_DECLARE(void) ap_flush_conn(conn_rec *c); /** @@ -70,10 +83,12 @@ AP_DECLARE(void) ap_lingering_close(conn_rec *c); * if it encounters a fatal error condition. * * @param p The pool from which to allocate the connection record + * @param server The server record to create the connection too. * @param csd The socket that has been accepted * @param conn_id A unique identifier for this connection. The ID only * needs to be unique at that time, not forever. * @param sbh A handle to scoreboard information for this connection. + * @param alloc The bucket allocator to use for all bucket/brigade creations * @return An allocated connection record or NULL. */ AP_DECLARE_HOOK(conn_rec *, create_connection, @@ -89,7 +104,6 @@ AP_DECLARE_HOOK(conn_rec *, create_connection, * Most times this will be a socket, but it is up to the module * that accepts the request to determine the exact type. * @return OK or DECLINED - * @deffunc int ap_run_pre_connection(conn_rec *c, void *csd) */ AP_DECLARE_HOOK(int,pre_connection,(conn_rec *c, void *csd)) @@ -100,12 +114,10 @@ AP_DECLARE_HOOK(int,pre_connection,(conn_rec *c, void *csd)) * to handle the request is the last module run. * @param c The connection on which the request has been received. * @return OK or DECLINED - * @deffunc int ap_run_process_connection(conn_rec *c) */ AP_DECLARE_HOOK(int,process_connection,(conn_rec *c)) -/* End Of Connection (EOC) bucket */ - +/** End Of Connection (EOC) bucket */ AP_DECLARE_DATA extern const apr_bucket_type_t ap_bucket_type_eoc; /** @@ -119,7 +131,6 @@ AP_DECLARE_DATA extern const apr_bucket_type_t ap_bucket_type_eoc; * Make the bucket passed in an End Of Connection (EOC) bucket * @param b The bucket to make into an EOC bucket * @return The new bucket, or NULL if allocation failed - * @deffunc apr_bucket *ap_bucket_eoc_make(apr_bucket *b) */ AP_DECLARE(apr_bucket *) ap_bucket_eoc_make(apr_bucket *b); @@ -128,7 +139,6 @@ AP_DECLARE(apr_bucket *) ap_bucket_eoc_make(apr_bucket *b); * that the connection will be closed. * @param list The freelist from which this bucket should be allocated * @return The new bucket, or NULL if allocation failed - * @deffunc apr_bucket *ap_bucket_eoc_create(apr_bucket_alloc_t *list) */ AP_DECLARE(apr_bucket *) ap_bucket_eoc_create(apr_bucket_alloc_t *list); @@ -137,3 +147,4 @@ AP_DECLARE(apr_bucket *) ap_bucket_eoc_create(apr_bucket_alloc_t *list); #endif #endif /* !APACHE_HTTP_REQUEST_H */ +/** @} */ diff --git a/include/http_core.h b/include/http_core.h index d25f93c976..ecf7b9d037 100644 --- a/include/http_core.h +++ b/include/http_core.h @@ -14,6 +14,15 @@ * limitations under the License. */ +/** + * @file http_core.h + * @brief CORE HTTP Daemon + * + * @defgroup APACHE_CORE_HTTPD Core HTTP Daemon + * @ingroup APACHE_CORE + * @{ + */ + #ifndef APACHE_HTTP_CORE_H #define APACHE_HTTP_CORE_H @@ -32,10 +41,6 @@ extern "C" { #endif -/** - * @package CORE HTTP Daemon - */ - /* **************************************************************** * * The most basic server code is encapsulated in a single module @@ -48,61 +53,88 @@ extern "C" { * of one of them (allow_options). */ +/** + * @defgroup APACHE_CORE_HTTPD_ACESSORS Acessors + * + * @brief File/Directory Accessor directives + * + * @{ + */ + +/** No directives */ #define OPT_NONE 0 +/** Indexes directive */ #define OPT_INDEXES 1 +/** Includes directive */ #define OPT_INCLUDES 2 +/** FollowSymLinks directive */ #define OPT_SYM_LINKS 4 +/** ExecCGI directive */ #define OPT_EXECCGI 8 +/** directive unset */ #define OPT_UNSET 16 +/** IncludesNOEXEC directive */ #define OPT_INCNOEXEC 32 +/** SymLinksIfOwnerMatch directive */ #define OPT_SYM_OWNER 64 +/** MultiViews directive */ #define OPT_MULTI 128 +/** All directives */ #define OPT_ALL (OPT_INDEXES|OPT_INCLUDES|OPT_SYM_LINKS|OPT_EXECCGI) +/** @} */ -/* options for get_remote_host() */ -/* REMOTE_HOST returns the hostname, or NULL if the hostname +/** + * @defgroup get_remote_host Remote Host Resolution + * @ingroup APACHE_CORE_HTTPD + * @{ + */ +/** REMOTE_HOST returns the hostname, or NULL if the hostname * lookup fails. It will force a DNS lookup according to the * HostnameLookups setting. */ #define REMOTE_HOST (0) -/* REMOTE_NAME returns the hostname, or the dotted quad if the +/** REMOTE_NAME returns the hostname, or the dotted quad if the * hostname lookup fails. It will force a DNS lookup according * to the HostnameLookups setting. */ #define REMOTE_NAME (1) -/* REMOTE_NOLOOKUP is like REMOTE_NAME except that a DNS lookup is +/** REMOTE_NOLOOKUP is like REMOTE_NAME except that a DNS lookup is * never forced. */ #define REMOTE_NOLOOKUP (2) -/* REMOTE_DOUBLE_REV will always force a DNS lookup, and also force +/** REMOTE_DOUBLE_REV will always force a DNS lookup, and also force * a double reverse lookup, regardless of the HostnameLookups * setting. The result is the (double reverse checked) hostname, * or NULL if any of the lookups fail. */ #define REMOTE_DOUBLE_REV (3) +/** @} // get_remote_host */ + +/** all of the requirements must be met */ #define SATISFY_ALL 0 +/** any of the requirements must be met */ #define SATISFY_ANY 1 +/** There are no applicable satisfy lines */ #define SATISFY_NOSPEC 2 -/* Make sure we don't write less than 8000 bytes at any one time. +/** Make sure we don't write less than 8000 bytes at any one time. */ #define AP_MIN_BYTES_TO_WRITE 8000 -/* default maximum of internal redirects */ +/** default maximum of internal redirects */ # define AP_DEFAULT_MAX_INTERNAL_REDIRECTS 10 -/* default maximum subrequest nesting level */ +/** default maximum subrequest nesting level */ # define AP_DEFAULT_MAX_SUBREQ_DEPTH 10 /** * Retrieve the value of Options for this request * @param r The current request * @return the Options bitmask - * @deffunc int ap_allow_options(request_rec *r) */ AP_DECLARE(int) ap_allow_options(request_rec *r); @@ -110,7 +142,6 @@ AP_DECLARE(int) ap_allow_options(request_rec *r); * Retrieve the value of the AllowOverride for this request * @param r The current request * @return the overrides bitmask - * @deffunc int ap_allow_overrides(request_rec *r) */ AP_DECLARE(int) ap_allow_overrides(request_rec *r); @@ -118,7 +149,6 @@ AP_DECLARE(int) ap_allow_overrides(request_rec *r); * Retrieve the value of the DefaultType directive, or text/plain if not set * @param r The current request * @return The default type - * @deffunc const char *ap_default_type(request_rec *r) */ AP_DECLARE(const char *) ap_default_type(request_rec *r); @@ -128,12 +158,12 @@ AP_DECLARE(const char *) ap_default_type(request_rec *r); * @warning Don't use this! If your request went through a Userdir, or * something like that, it'll screw you. But it's back-compatible... * @return The document root - * @deffunc const char *ap_document_root(request_rec *r) */ AP_DECLARE(const char *) ap_document_root(request_rec *r); /** * Lookup the remote client's DNS name or IP address + * @ingroup get_remote_host * @param conn The current connection * @param dir_config The directory config vector from the request * @param type The type of lookup to perform. One of: @@ -154,7 +184,6 @@ AP_DECLARE(const char *) ap_document_root(request_rec *r); * @param str_is_ip unless NULL is passed, this will be set to non-zero on output when an IP address * string is returned * @return The remote hostname - * @deffunc const char *ap_get_remote_host(conn_rec *conn, void *dir_config, int type, int *str_is_ip) */ AP_DECLARE(const char *) ap_get_remote_host(conn_rec *conn, void *dir_config, int type, int *str_is_ip); @@ -163,7 +192,6 @@ AP_DECLARE(const char *) ap_get_remote_host(conn_rec *conn, void *dir_config, in * determined * @param r The current request * @return The user logged in to the client machine - * @deffunc const char *ap_get_remote_logname(request_rec *r) */ AP_DECLARE(const char *) ap_get_remote_logname(request_rec *r); @@ -176,7 +204,6 @@ AP_DECLARE(const char *) ap_get_remote_logname(request_rec *r); * @param uri The path to the requested file * @param r The current request * @return A fully qualified URL - * @deffunc char *ap_construct_url(apr_pool_t *p, const char *uri, request_rec *r) */ AP_DECLARE(char *) ap_construct_url(apr_pool_t *p, const char *uri, request_rec *r); @@ -184,15 +211,13 @@ AP_DECLARE(char *) ap_construct_url(apr_pool_t *p, const char *uri, request_rec * Get the current server name from the request * @param r The current request * @return the server name - * @deffunc const char *ap_get_server_name(request_rec *r) */ AP_DECLARE(const char *) ap_get_server_name(request_rec *r); /** * Get the current server port - * @param The current request + * @param r The current request * @return The server's port - * @deffunc apr_port_t ap_get_server_port(const request_rec *r) */ AP_DECLARE(apr_port_t) ap_get_server_port(const request_rec *r); @@ -200,7 +225,6 @@ AP_DECLARE(apr_port_t) ap_get_server_port(const request_rec *r); * Return the limit on bytes in request msg body * @param r The current request * @return the maximum number of bytes in the request msg body - * @deffunc apr_off_t ap_get_limit_req_body(const request_rec *r) */ AP_DECLARE(apr_off_t) ap_get_limit_req_body(const request_rec *r); @@ -208,7 +232,6 @@ AP_DECLARE(apr_off_t) ap_get_limit_req_body(const request_rec *r); * Return the limit on bytes in XML request msg body * @param r The current request * @return the maximum number of bytes in XML request msg body - * @deffunc size_t ap_get_limit_xml_body(const request_rec *r) */ AP_DECLARE(size_t) ap_get_limit_xml_body(const request_rec *r); @@ -225,7 +248,6 @@ AP_DECLARE(void) ap_custom_response(request_rec *r, int status, const char *stri * Check if the current request is beyond the configured max. number of redirects or subrequests * @param r The current request * @return true (is exceeded) or false - * @deffunc int ap_is_recursion_limit_exceeded(const request_rec *r) */ AP_DECLARE(int) ap_is_recursion_limit_exceeded(const request_rec *r); @@ -233,7 +255,6 @@ AP_DECLARE(int) ap_is_recursion_limit_exceeded(const request_rec *r); * Check for a definition from the server command line * @param name The define to check for * @return 1 if defined, 0 otherwise - * @deffunc int ap_exists_config_define(const char *name) */ AP_DECLARE(int) ap_exists_config_define(const char *name); /* FIXME! See STATUS about how */ @@ -245,9 +266,13 @@ AP_DECLARE_NONSTD(int) ap_core_translate(request_rec *r); * to maintain common state for all of them in the core, and make it * available to the other modules through interfaces. */ + +/** @see require_line */ typedef struct require_line require_line; -/** A structure to keep track of authorization requirements */ +/** + * @brief A structure to keep track of authorization requirements +*/ struct require_line { /** Where the require line is in the config file. */ apr_int64_t method_mask; @@ -259,7 +284,6 @@ struct require_line { * Return the type of authorization required for this request * @param r The current request * @return The authorization required - * @deffunc const char *ap_auth_type(request_rec *r) */ AP_DECLARE(const char *) ap_auth_type(request_rec *r); @@ -267,7 +291,6 @@ AP_DECLARE(const char *) ap_auth_type(request_rec *r); * Return the current Authorization realm * @param r The current request * @return The current authorization realm - * @deffunc const char *ap_auth_name(request_rec *r) */ AP_DECLARE(const char *) ap_auth_name(request_rec *r); @@ -280,7 +303,6 @@ AP_DECLARE(const char *) ap_auth_name(request_rec *r); * SATISFY_ALL -- all of the requirements must be met. * SATISFY_NOSPEC -- There are no applicable satisfy lines * </pre> - * @deffunc int ap_satisfies(request_rec *r) */ AP_DECLARE(int) ap_satisfies(request_rec *r); @@ -288,35 +310,34 @@ AP_DECLARE(int) ap_satisfies(request_rec *r); * Retrieve information about all of the requires directives for this request * @param r The current request * @return An array of all requires directives for this request - * @deffunc const apr_array_header_t *ap_requires(request_rec *r) */ AP_DECLARE(const apr_array_header_t *) ap_requires(request_rec *r); #ifdef CORE_PRIVATE -/* +/** * Core is also unlike other modules in being implemented in more than * one file... so, data structures are declared here, even though most of * the code that cares really is in http_core.c. Also, another accessor. */ - AP_DECLARE_DATA extern module core_module; -/* Per-request configuration */ - +/** + * @brief Per-request configuration +*/ typedef struct { - /* bucket brigade used by getline for look-ahead and + /** bucket brigade used by getline for look-ahead and * ap_get_client_block for holding left-over request body */ struct apr_bucket_brigade *bb; - /* an array of per-request working data elements, accessed + /** an array of per-request working data elements, accessed * by ID using ap_get_request_note() * (Use ap_register_request_note() during initialization * to add elements) */ void **notes; - /* There is a script processor installed on the output filter chain, + /** There is a script processor installed on the output filter chain, * so it needs the default_handler to deliver a (script) file into * the chain so it can process it. Normally, default_handler only * serves files on a GET request (assuming the file is actual content), @@ -326,13 +347,13 @@ typedef struct { */ int deliver_script; - /* Custom response strings registered via ap_custom_response(), + /** Custom response strings registered via ap_custom_response(), * or NULL; check per-dir config if nothing found here */ char **response_code_strings; /* from ap_custom_response(), not from * ErrorDocument */ - /* Should addition of charset= be suppressed for this request? + /** Should addition of charset= be suppressed for this request? */ int suppress_charset; } core_request_config; @@ -371,7 +392,6 @@ AP_DECLARE(apr_size_t) ap_register_request_note(void); */ AP_DECLARE(void **) ap_get_request_note(request_rec *r, apr_size_t note_num); -/* Per-directory configuration */ typedef unsigned char allow_options_t; typedef unsigned char overrides_t; @@ -392,6 +412,9 @@ typedef unsigned long etag_components_t; #define ETAG_BACKWARD (ETAG_MTIME | ETAG_INODE | ETAG_SIZE) #define ETAG_ALL (ETAG_MTIME | ETAG_INODE | ETAG_SIZE) +/** + * @brief Server Signature Enumeration + */ typedef enum { srv_sig_unset, srv_sig_off, @@ -399,13 +422,16 @@ typedef enum { srv_sig_withmail } server_signature_e; +/** + * @brief Per-directory configuration + */ typedef struct { - /* path of the directory/regex/etc. see also d_is_fnmatch/absolute below */ + /** path of the directory/regex/etc. see also d_is_fnmatch/absolute below */ char *d; - /* the number of slashes in d */ + /** the number of slashes in d */ unsigned d_components; - /* If (opts & OPT_UNSET) then no absolute assignment to options has + /** If (opts & OPT_UNSET) then no absolute assignment to options has * been made. * invariant: (opts_add & opts_remove) == 0 * Which said another way means that the last relative (options + or -) @@ -659,3 +685,4 @@ APR_DECLARE_OPTIONAL_FN(const char *, ap_ident_lookup, #endif #endif /* !APACHE_HTTP_CORE_H */ +/** @} */ diff --git a/include/http_log.h b/include/http_log.h index 8912beca0b..d10f1b26d8 100644 --- a/include/http_log.h +++ b/include/http_log.h @@ -14,6 +14,15 @@ * limitations under the License. */ +/** + * @file http_log.h + * @brief Apache Logging library + * + * @defgroup APACHE_CORE_LOG Logging library + * @ingroup APACHE_CORE + * @{ + */ + #ifndef APACHE_HTTP_LOG_H #define APACHE_HTTP_LOG_H @@ -23,10 +32,6 @@ extern "C" { #include "apr_thread_proc.h" -/** - * @package Apache logging library - */ - #ifdef HAVE_SYSLOG #include <syslog.h> @@ -110,7 +115,7 @@ AP_DECLARE(apr_status_t) ap_replace_stderr_log(apr_pool_t *p, * @param plog The pool to allocate the logs from * @param ptemp Pool used for temporary allocations * @param s_main The main server - * @tip ap_open_logs isn't expected to be used by modules, it is + * @note ap_open_logs isn't expected to be used by modules, it is * an internal core function */ int ap_open_logs(apr_pool_t *pconf, apr_pool_t *plog, @@ -123,7 +128,7 @@ int ap_open_logs(apr_pool_t *pconf, apr_pool_t *plog, * processes. * @param p Not used * @param s Not used - * @tip ap_logs_child_init is not for use by modules; it is an + * @note ap_logs_child_init is not for use by modules; it is an * internal core function */ void ap_logs_child_init(apr_pool_t *p, server_rec *s); @@ -151,8 +156,8 @@ void ap_logs_child_init(apr_pool_t *p, server_rec *s); * @param s The server on which we are logging * @param fmt The format string * @param ... The arguments to use to fill out fmt. - * @tip Use APLOG_MARK to fill out file and line - * @tip If a request_rec is available, use that with ap_log_rerror() + * @note Use APLOG_MARK to fill out file and line + * @note If a request_rec is available, use that with ap_log_rerror() * in preference to calling this function. Otherwise, if a conn_rec is * available, use that with ap_log_cerror() in preference to calling * this function. @@ -162,7 +167,6 @@ void ap_logs_child_init(apr_pool_t *p, server_rec *s); * denial-of-service attack and other messy behavior. Instead, use a * simple format string like "%s", followed by the string containing the * untrusted data. - * @deffunc void ap_log_error(const char *file, int line, int level, apr_status_t status, const server_rec *s, const char *fmt, ...) */ AP_DECLARE(void) ap_log_error(const char *file, int line, int level, apr_status_t status, const server_rec *s, @@ -180,14 +184,13 @@ AP_DECLARE(void) ap_log_error(const char *file, int line, int level, * @param p The pool which we are logging for * @param fmt The format string * @param ... The arguments to use to fill out fmt. - * @tip Use APLOG_MARK to fill out file and line + * @note Use APLOG_MARK to fill out file and line * @warning It is VERY IMPORTANT that you not include any raw data from * the network, such as the request-URI or request header fields, within * the format string. Doing so makes the server vulnerable to a * denial-of-service attack and other messy behavior. Instead, use a * simple format string like "%s", followed by the string containing the * untrusted data. - * @deffunc void ap_log_perror(const char *file, int line, int level, apr_status_t status, apr_pool_t *p, const char *fmt, ...) */ AP_DECLARE(void) ap_log_perror(const char *file, int line, int level, apr_status_t status, apr_pool_t *p, @@ -205,14 +208,13 @@ AP_DECLARE(void) ap_log_perror(const char *file, int line, int level, * @param r The request which we are logging for * @param fmt The format string * @param ... The arguments to use to fill out fmt. - * @tip Use APLOG_MARK to fill out file and line + * @note Use APLOG_MARK to fill out file and line * @warning It is VERY IMPORTANT that you not include any raw data from * the network, such as the request-URI or request header fields, within * the format string. Doing so makes the server vulnerable to a * denial-of-service attack and other messy behavior. Instead, use a * simple format string like "%s", followed by the string containing the * untrusted data. - * @deffunc void ap_log_rerror(const char *file, int line, int level, apr_status_t status, const request_rec *r, const char *fmt, ...) */ AP_DECLARE(void) ap_log_rerror(const char *file, int line, int level, apr_status_t status, const request_rec *r, @@ -230,8 +232,8 @@ AP_DECLARE(void) ap_log_rerror(const char *file, int line, int level, * @param c The connection which we are logging for * @param fmt The format string * @param ... The arguments to use to fill out fmt. - * @tip Use APLOG_MARK to fill out file and line - * @tip If a request_rec is available, use that with ap_log_rerror() + * @note Use APLOG_MARK to fill out file and line + * @note If a request_rec is available, use that with ap_log_rerror() * in preference to calling this function. * @warning It is VERY IMPORTANT that you not include any raw data from * the network, such as the request-URI or request header fields, within @@ -239,7 +241,6 @@ AP_DECLARE(void) ap_log_rerror(const char *file, int line, int level, * denial-of-service attack and other messy behavior. Instead, use a * simple format string like "%s", followed by the string containing the * untrusted data. - * @deffunc void ap_log_cerror(const char *file, int line, int level, apr_status_t status, const conn_rec *c, const char *fmt, ...) */ AP_DECLARE(void) ap_log_cerror(const char *file, int line, int level, apr_status_t status, const conn_rec *c, @@ -249,7 +250,6 @@ AP_DECLARE(void) ap_log_cerror(const char *file, int line, int level, /** * Convert stderr to the error log * @param s The current server - * @deffunc void ap_error_log2stderr(server_rec *s) */ AP_DECLARE(void) ap_error_log2stderr(server_rec *s); @@ -268,11 +268,14 @@ AP_DECLARE(void) ap_log_pid(apr_pool_t *p, const char *fname); */ AP_DECLARE(apr_status_t) ap_read_pid(apr_pool_t *p, const char *filename, pid_t *mypid); +/** @see piped_log */ typedef struct piped_log piped_log; /** - * The piped logging structure. Piped logs are used to move functionality - * out of the main server. For example, log rotation is done with piped logs. + * @brief The piped logging structure. + * + * Piped logs are used to move functionality out of the main server. + * For example, log rotation is done with piped logs. */ struct piped_log { /** The pool to use for the piped log */ @@ -294,14 +297,12 @@ struct piped_log { * @param p The pool to allocate out of * @param program The program to run in the logging process * @return The piped log structure - * @deffunc piped_log *ap_open_piped_log(apr_pool_t *p, const char *program) */ AP_DECLARE(piped_log *) ap_open_piped_log(apr_pool_t *p, const char *program); /** * Close the piped log and kill the logging process * @param pl The piped log structure - * @deffunc void ap_close_piped_log(piped_log *pl) */ AP_DECLARE(void) ap_close_piped_log(piped_log *pl); @@ -309,7 +310,6 @@ AP_DECLARE(void) ap_close_piped_log(piped_log *pl); * A macro to access the read side of the piped log pipe * @param pl The piped log structure * @return The native file descriptor - * @deffunc ap_piped_log_read_fd(pl) */ #define ap_piped_log_read_fd(pl) ((pl)->fds[0]) @@ -317,10 +317,21 @@ AP_DECLARE(void) ap_close_piped_log(piped_log *pl); * A macro to access the write side of the piped log pipe * @param pl The piped log structure * @return The native file descriptor - * @deffunc ap_piped_log_read_fd(pl) */ #define ap_piped_log_write_fd(pl) ((pl)->fds[1]) +/** + * hook method to log error messages + * @ingroup hooks + * @param file The file in which this function is called + * @param line The line number on which this function is called + * @param level The level of this error message + * @param status The status code from the previous command + * @param s The server which we are logging for + * @param r The request which we are logging for + * @param pool Memory pool to allocate from + * @param errstr message to log + */ AP_DECLARE_HOOK(void, error_log, (const char *file, int line, int level, apr_status_t status, const server_rec *s, const request_rec *r, apr_pool_t *pool, @@ -331,3 +342,4 @@ AP_DECLARE_HOOK(void, error_log, (const char *file, int line, int level, #endif #endif /* !APACHE_HTTP_LOG_H */ +/** @} */ diff --git a/include/http_main.h b/include/http_main.h index fcd6236dcf..85550b40ff 100644 --- a/include/http_main.h +++ b/include/http_main.h @@ -14,12 +14,21 @@ * limitations under the License. */ +/** + * @file http_main.h + * @brief Command line options + * + * @defgroup APACHE_CORE_MAIN Command line options + * @ingroup APACHE_CORE + * @{ + */ + #ifndef APACHE_HTTP_MAIN_H #define APACHE_HTTP_MAIN_H #include "apr_optional.h" -/* AP_SERVER_BASEARGS is the command argument list parsed by http_main.c +/** AP_SERVER_BASEARGS is the command argument list parsed by http_main.c * in apr_getopt() format. Use this for default'ing args that the MPM * can safely ignore and pass on from its rewrite_args() handler. */ @@ -29,10 +38,6 @@ extern "C" { #endif -/** - * @package Command line options - */ - /** The name of the Apache executable */ AP_DECLARE_DATA extern const char *ap_server_argv0; /** The global server's ServerRoot */ @@ -49,6 +54,13 @@ AP_DECLARE_DATA extern apr_array_header_t *ap_server_post_read_config; * effect the server based on command line options */ AP_DECLARE_DATA extern apr_array_header_t *ap_server_config_defines; +/** + * An optional function to send signal to server on presence of '-k' + * command line argument. + * Called if MPM defines AP_MPM_WANT_SIGNAL_SERVER + * @param status The exit status after sending signal + * @param pool Memory pool to allocate from + */ APR_DECLARE_OPTIONAL_FN(int, ap_signal_server, (int *, apr_pool_t *)); #ifdef __cplusplus @@ -56,3 +68,4 @@ APR_DECLARE_OPTIONAL_FN(int, ap_signal_server, (int *, apr_pool_t *)); #endif #endif /* !APACHE_HTTP_MAIN_H */ +/** @} */ diff --git a/include/http_protocol.h b/include/http_protocol.h index 405ff2415a..c2c933e858 100644 --- a/include/http_protocol.h +++ b/include/http_protocol.h @@ -14,6 +14,15 @@ * limitations under the License. */ +/** + * @file http_protocol.h + * @brief HTTP protocol handling + * + * @defgroup APACHE_CORE_PROTO HTTP Protocol Handling + * @ingroup APACHE_CORE + * @{ + */ + #ifndef APACHE_HTTP_PROTOCOL_H #define APACHE_HTTP_PROTOCOL_H @@ -29,17 +38,13 @@ extern "C" { #endif /** - * @package HTTP protocol handling - */ - -/** * This hook allows modules to insert filters for the current error response * @param r the current request * @ingroup hooks */ AP_DECLARE_HOOK(void,insert_error_filter,(request_rec *r)) -/* This is an optimization. We keep a record of the filter_rec that +/** This is an optimization. We keep a record of the filter_rec that * stores the old_write filter, so that we can avoid strcmp's later. */ AP_DECLARE_DATA extern ap_filter_rec_t *ap_old_write_func; @@ -77,7 +82,6 @@ AP_DECLARE(void) ap_get_mime_headers_core(request_rec *r, * Called at completion of sending the response. It sends the terminating * protocol information. * @param r The current request - * @deffunc void ap_finalize_request_protocol(request_rec *r) */ AP_DECLARE(void) ap_finalize_request_protocol(request_rec *r); @@ -89,7 +93,6 @@ AP_DECLARE(void) ap_finalize_request_protocol(request_rec *r); * to handle some other error. In that case, we print the default * report for the first thing that went wrong, and more briefly report * on the problem with the ErrorDocument. - * @deffunc void ap_send_error_response(request_rec *r, int recursive_error) */ AP_DECLARE(void) ap_send_error_response(request_rec *r, int recursive_error); @@ -104,7 +107,6 @@ AP_DECLARE(void) ap_send_error_response(request_rec *r, int recursive_error); * Set the content length for this request * @param r The current request * @param length The new content length - * @deffunc void ap_set_content_length(request_rec *r, apr_off_t length) */ AP_DECLARE(void) ap_set_content_length(request_rec *r, apr_off_t length); @@ -112,7 +114,6 @@ AP_DECLARE(void) ap_set_content_length(request_rec *r, apr_off_t length); * Set the keepalive status for this request * @param r The current request * @return 1 if keepalive can be set, 0 otherwise - * @deffunc int ap_set_keepalive(request_rec *r) */ AP_DECLARE(int) ap_set_keepalive(request_rec *r); @@ -122,7 +123,6 @@ AP_DECLARE(int) ap_set_keepalive(request_rec *r); * @param r The current request * @param mtime The last modified time * @return the latest rational time. - * @deffunc apr_time_t ap_rationalize_mtime(request_rec *r, apr_time_t mtime) */ AP_DECLARE(apr_time_t) ap_rationalize_mtime(request_rec *r, apr_time_t mtime); @@ -134,8 +134,8 @@ AP_DECLARE(apr_time_t) ap_rationalize_mtime(request_rec *r, apr_time_t mtime); * - then, if there are no parameters on type, add the default charset * - return type * @param r The current request + * @param type The content type * @return The content-type - * @deffunc const char *ap_make_content_type(request_rec *r, const char *type); */ AP_DECLARE(const char *) ap_make_content_type(request_rec *r, const char *type); @@ -143,8 +143,7 @@ AP_DECLARE(const char *) ap_make_content_type(request_rec *r, #ifdef CORE_PRIVATE /** * Precompile metadata structures used by ap_make_content_type() - * @param r The pool to use for allocations - * @deffunc void ap_setup_make_content_type(apr_pool_t *pool) + * @param pool The pool to use for allocations */ AP_DECLARE(void) ap_setup_make_content_type(apr_pool_t *pool); #endif /* CORE_PRIVATE */ @@ -156,21 +155,18 @@ AP_DECLARE(void) ap_setup_make_content_type(apr_pool_t *pool); * @param force_weak Force the entity tag to be weak - it could be modified * again in as short an interval. * @return The entity tag - * @deffunc char *ap_make_etag(request_rec *r, int force_weak) */ AP_DECLARE(char *) ap_make_etag(request_rec *r, int force_weak); /** * Set the E-tag outgoing header - * @param The current request - * @deffunc void ap_set_etag(request_rec *r) + * @param r The current request */ AP_DECLARE(void) ap_set_etag(request_rec *r); /** * Set the last modified time for the file being sent * @param r The current request - * @deffunc void ap_set_last_modified(request_rec *r) */ AP_DECLARE(void) ap_set_last_modified(request_rec *r); @@ -181,7 +177,6 @@ AP_DECLARE(void) ap_set_last_modified(request_rec *r); * @param r The current request * @return OK if the response fulfills the condition GET rules, some * other status code otherwise - * @deffunc int ap_meets_conditions(request_rec *r) */ AP_DECLARE(int) ap_meets_conditions(request_rec *r); @@ -204,7 +199,6 @@ AP_DECLARE(int) ap_meets_conditions(request_rec *r); * @param offset Offset into the file to start sending. * @param length Amount of data to send * @param nbytes Amount of data actually sent - * @deffunc apr_status_t ap_send_fd(apr_file_t *fd, request_rec *r, apr_off_t offset, apr_size_t length, apr_size_t *nbytes); */ AP_DECLARE(apr_status_t) ap_send_fd(apr_file_t *fd, request_rec *r, apr_off_t offset, apr_size_t length, apr_size_t *nbytes); @@ -217,7 +211,6 @@ AP_DECLARE(apr_status_t) ap_send_fd(apr_file_t *fd, request_rec *r, apr_off_t of * @param offset The offset into the MMAP to start sending * @param length The amount of data to send * @return The number of bytes sent - * @deffunc size_t ap_send_mmap(apr_mmap_t *mm, request_rec *r, size_t offset, size_t length) */ AP_DECLARE(size_t) ap_send_mmap(apr_mmap_t *mm, request_rec *r, size_t offset, size_t length); @@ -241,7 +234,7 @@ AP_DECLARE(int) ap_method_register(apr_pool_t *p, const char *methname); */ AP_DECLARE(void) ap_method_registry_init(apr_pool_t *p); -/* +/** * This is a convenience macro to ease with checking a mask * against a method name. */ @@ -256,9 +249,16 @@ AP_DECLARE(void) ap_method_registry_init(apr_pool_t *p); * allocated. * @param nelts Number of preallocated extension slots * @return Pointer to the newly created structure. - * @deffunc ap_method_list_t ap_make_method_list(apr_pool_t *p, int nelts) */ AP_DECLARE(ap_method_list_t *) ap_make_method_list(apr_pool_t *p, int nelts); + + +/** + * Copy a method list + * + * @param dest List to copy to + * @param src List to copy from + */ AP_DECLARE(void) ap_copy_method_list(ap_method_list_t *dest, ap_method_list_t *src); @@ -269,7 +269,6 @@ AP_DECLARE(void) ap_copy_method_list(ap_method_list_t *dest, * @param method String containing the name of the method to check. * @param l Pointer to a method list, such as cmd->methods_limited. * @return 1 if method is in the list, otherwise 0 - * @deffunc int ap_method_in_list(const char *method, ap_method_list_t *l) */ AP_DECLARE(int) ap_method_in_list(ap_method_list_t *l, const char *method); @@ -280,7 +279,6 @@ AP_DECLARE(int) ap_method_in_list(ap_method_list_t *l, const char *method); * @param method String containing the name of the method to check. * @param l Pointer to a method list, such as cmd->methods_limited. * @return None. - * @deffunc void ap_method_in_list(ap_method_list_t *l, const char *method) */ AP_DECLARE(void) ap_method_list_add(ap_method_list_t *l, const char *method); @@ -290,7 +288,6 @@ AP_DECLARE(void) ap_method_list_add(ap_method_list_t *l, const char *method); * @param l Pointer to a method list, such as cmd->methods_limited. * @param method String containing the name of the method to remove. * @return None. - * @deffunc void ap_method_list_remove(ap_method_list_t *l, const char *method) */ AP_DECLARE(void) ap_method_list_remove(ap_method_list_t *l, const char *method); @@ -300,7 +297,6 @@ AP_DECLARE(void) ap_method_list_remove(ap_method_list_t *l, * * @param l Pointer to a method list, such as cmd->methods_limited. * @return None. - * @deffunc void ap_clear_method_list(ap_method_list_t *l) */ AP_DECLARE(void) ap_clear_method_list(ap_method_list_t *l); @@ -308,7 +304,6 @@ AP_DECLARE(void) ap_clear_method_list(ap_method_list_t *l); * Set the content type for this request (r->content_type). * @param r The current request * @param ct The new content type - * @deffunc void ap_set_content_type(request_rec *r, const char* ct) * @warning This function must be called to set r->content_type in order * for the AddOutputFilterByType directive to work correctly. */ @@ -323,7 +318,6 @@ AP_DECLARE(void) ap_set_content_type(request_rec *r, const char *ct); * @param c the character to output * @param r the current request * @return The number of bytes sent - * @deffunc int ap_rputc(int c, request_rec *r) */ AP_DECLARE(int) ap_rputc(int c, request_rec *r); @@ -332,7 +326,6 @@ AP_DECLARE(int) ap_rputc(int c, request_rec *r); * @param str The string to output * @param r The current request * @return The number of bytes sent - * @deffunc int ap_rputs(const char *str, request_rec *r) */ AP_DECLARE(int) ap_rputs(const char *str, request_rec *r); @@ -342,7 +335,6 @@ AP_DECLARE(int) ap_rputs(const char *str, request_rec *r); * @param nbyte The number of bytes to send from the buffer * @param r The current request * @return The number of bytes sent - * @deffunc int ap_rwrite(const void *buf, int nbyte, request_rec *r) */ AP_DECLARE(int) ap_rwrite(const void *buf, int nbyte, request_rec *r); @@ -351,7 +343,6 @@ AP_DECLARE(int) ap_rwrite(const void *buf, int nbyte, request_rec *r); * @param r The current request * @param ... The strings to write * @return The number of bytes sent - * @deffunc int ap_rvputs(request_rec *r, ...) */ AP_DECLARE_NONSTD(int) ap_rvputs(request_rec *r,...); @@ -361,7 +352,6 @@ AP_DECLARE_NONSTD(int) ap_rvputs(request_rec *r,...); * @param fmt The format string * @param vlist The arguments to use to fill out the format string * @return The number of bytes sent - * @deffunc int ap_vrprintf(request_rec *r, const char *fmt, va_list vlist) */ AP_DECLARE(int) ap_vrprintf(request_rec *r, const char *fmt, va_list vlist); @@ -371,15 +361,14 @@ AP_DECLARE(int) ap_vrprintf(request_rec *r, const char *fmt, va_list vlist); * @param fmt The format string * @param ... The arguments to use to fill out the format string * @return The number of bytes sent - * @deffunc int ap_rprintf(request_rec *r, const char *fmt, ...) */ AP_DECLARE_NONSTD(int) ap_rprintf(request_rec *r, const char *fmt,...) __attribute__((format(printf,2,3))); + /** * Flush all of the data for the current request to the client * @param r The current request * @return The number of bytes sent - * @deffunc int ap_rflush(request_rec *r) */ AP_DECLARE(int) ap_rflush(request_rec *r); @@ -388,7 +377,6 @@ AP_DECLARE(int) ap_rflush(request_rec *r); * (only use outside protocol.c is in getting them configured). * @param status HTTP status code * @return The index of the response - * @deffunc int ap_index_of_response(int status) */ AP_DECLARE(int) ap_index_of_response(int status); @@ -398,7 +386,6 @@ AP_DECLARE(int) ap_index_of_response(int status); * passed, "500 Internal Server Error" will be returned. * @param status The HTTP status code * @return The Status-Line - * @deffunc const char *ap_get_status_line(int status) */ AP_DECLARE(const char *) ap_get_status_line(int status); @@ -414,7 +401,6 @@ AP_DECLARE(const char *) ap_get_status_line(int status); * REQUEST_CHUNKED_DECHUNK If chunked, remove the chunks for me. * </pre> * @return either OK or an error code - * @deffunc int ap_setup_client_block(request_rec *r, int read_policy) */ AP_DECLARE(int) ap_setup_client_block(request_rec *r, int read_policy); @@ -425,7 +411,6 @@ AP_DECLARE(int) ap_setup_client_block(request_rec *r, int read_policy); * @warning Never call this function more than once. * @param r The current request * @return 0 if there is no message to read, 1 otherwise - * @deffunc int ap_should_client_block(request_rec *r) */ AP_DECLARE(int) ap_should_client_block(request_rec *r); @@ -437,7 +422,6 @@ AP_DECLARE(int) ap_should_client_block(request_rec *r); * @param bufsiz The size of the buffer * @return Number of bytes inserted into the buffer. When done reading, 0 * if EOF, or -1 if there was an error - * @deffunc long ap_get_client_block(request_rec *r, char *buffer, apr_size_t bufsiz) */ AP_DECLARE(long) ap_get_client_block(request_rec *r, char *buffer, apr_size_t bufsiz); @@ -450,17 +434,14 @@ AP_DECLARE(long) ap_get_client_block(request_rec *r, char *buffer, apr_size_t bu * as the next request on a persistent connection. * @param r The current request * @return error status if request is malformed, OK otherwise - * @deffunc int ap_discard_request_body(request_rec *r) */ AP_DECLARE(int) ap_discard_request_body(request_rec *r); - /** * Setup the output headers so that the client knows how to authenticate * itself the next time, if an authentication request failed. This function * works for both basic and digest authentication * @param r The current request - * @deffunc void ap_note_auth_failure(request_rec *r) */ AP_DECLARE(void) ap_note_auth_failure(request_rec *r); @@ -469,7 +450,6 @@ AP_DECLARE(void) ap_note_auth_failure(request_rec *r); * itself the next time, if an authentication request failed. This function * works only for basic authentication * @param r The current request - * @deffunc void ap_note_basic_auth_failure(request_rec *r) */ AP_DECLARE(void) ap_note_basic_auth_failure(request_rec *r); @@ -478,7 +458,6 @@ AP_DECLARE(void) ap_note_basic_auth_failure(request_rec *r); * itself the next time, if an authentication request failed. This function * works only for digest authentication * @param r The current request - * @deffunc void ap_note_digest_auth_failure(request_rec *r) */ AP_DECLARE(void) ap_note_digest_auth_failure(request_rec *r); @@ -493,20 +472,17 @@ AP_DECLARE(void) ap_note_digest_auth_failure(request_rec *r); * seemed to be in use, or DECLINED if there was authentication but * it wasn't Basic (in which case, the caller should presumably * decline as well). - * @deffunc int ap_get_basic_auth_pw(request_rec *r, const char **pw) */ AP_DECLARE(int) ap_get_basic_auth_pw(request_rec *r, const char **pw); /** * parse_uri: break apart the uri - * @warning Side Effects: <pre> - * - sets r->args to rest after '?' (or NULL if no '?') - * - sets r->uri to request uri (without r->args part) - * - sets r->hostname (if not set already) from request (scheme://host:port) - * </pre> + * @warning Side Effects: + * @li sets r->args to rest after '?' (or NULL if no '?') + * @li sets r->uri to request uri (without r->args part) + * @li sets r->hostname (if not set already) from request (scheme://host:port) * @param r The current request * @param uri The uri to break apart - * @deffunc void ap_parse_uri(request_rec *r, const char *uri) */ AP_CORE_DECLARE(void) ap_parse_uri(request_rec *r, const char *uri); @@ -519,7 +495,6 @@ AP_CORE_DECLARE(void) ap_parse_uri(request_rec *r, const char *uri); * @return The length of the line, if successful * n, if the line is too big to fit in the buffer * -1 for miscellaneous errors - * @deffunc int ap_method_number_of(const char *method) */ AP_DECLARE(int) ap_getline(char *s, int n, request_rec *r, int fold); @@ -554,6 +529,8 @@ AP_DECLARE(apr_status_t) ap_rgetline(char **s, apr_size_t n, #define ap_rgetline(s, n, read, r, fold, bb) \ ap_rgetline_core((s), (n), (read), (r), (fold), (bb)) #endif + +/** @see ap_rgetline */ AP_DECLARE(apr_status_t) ap_rgetline_core(char **s, apr_size_t n, apr_size_t *read, request_rec *r, int fold, @@ -588,7 +565,6 @@ AP_DECLARE(const char *) ap_method_name_of(apr_pool_t *p, int methnum); * modules to make decisions based upon the input header fields * @param r The current request * @return OK or DECLINED - * @deffunc ap_run_post_read_request(request_rec *r) */ AP_DECLARE_HOOK(int,post_read_request,(request_rec *r)) @@ -597,7 +573,6 @@ AP_DECLARE_HOOK(int,post_read_request,(request_rec *r)) * over and above the normal server things. * @param r The current request * @return OK, DECLINED, or HTTP_... - * @deffunc int ap_run_log_transaction(request_rec *r) */ AP_DECLARE_HOOK(int,log_transaction,(request_rec *r)) @@ -606,7 +581,6 @@ AP_DECLARE_HOOK(int,log_transaction,(request_rec *r)) * allows Apache modules to easily extend the schemes that Apache understands * @param r The current request * @return The http scheme from the request - * @deffunc const char *ap_run_http_scheme(const request_rec *r) */ AP_DECLARE_HOOK(const char *,http_scheme,(const request_rec *r)) @@ -614,14 +588,16 @@ AP_DECLARE_HOOK(const char *,http_scheme,(const request_rec *r)) * Return the default port from the current request * @param r The current request * @return The current port - * @deffunc apr_port_t ap_run_default_port(const request_rec *r) */ AP_DECLARE_HOOK(apr_port_t,default_port,(const request_rec *r)) +/** @see ap_bucket_type_error */ typedef struct ap_bucket_error ap_bucket_error; /** - * A bucket referring to an HTTP error + * @struct ap_bucket_error + * @brief A bucket referring to an HTTP error + * * This bucket can be passed down the filter stack to indicate that an * HTTP error occurred while running a filter. In order for this bucket * to be used successfully, it MUST be sent as the first bucket in the @@ -636,6 +612,7 @@ struct ap_bucket_error { const char *data; }; +/** @see ap_bucket_type_error */ AP_DECLARE_DATA extern const apr_bucket_type_t ap_bucket_type_error; /** @@ -652,7 +629,6 @@ AP_DECLARE_DATA extern const apr_bucket_type_t ap_bucket_type_error; * @param buf An optional error string to put in the bucket. * @param p A pool to allocate out of. * @return The new bucket, or NULL if allocation failed - * @deffunc apr_bucket *ap_bucket_error_make(apr_bucket *b, int error, const char *buf, apr_pool_t *p) */ AP_DECLARE(apr_bucket *) ap_bucket_error_make(apr_bucket *b, int error, const char *buf, apr_pool_t *p); @@ -664,7 +640,6 @@ AP_DECLARE(apr_bucket *) ap_bucket_error_make(apr_bucket *b, int error, * @param p A pool to allocate the error string out of. * @param list The bucket allocator from which to allocate the bucket * @return The new bucket, or NULL if allocation failed - * @deffunc apr_bucket *ap_bucket_error_create(int error, const char *buf, apr_pool_t *p, apr_bucket_alloc_t *list) */ AP_DECLARE(apr_bucket *) ap_bucket_error_create(int error, const char *buf, apr_pool_t *p, @@ -676,11 +651,18 @@ AP_DECLARE_NONSTD(apr_status_t) ap_content_length_filter(ap_filter_t *, apr_bucket_brigade *); AP_DECLARE_NONSTD(apr_status_t) ap_old_write_filter(ap_filter_t *f, apr_bucket_brigade *b); -/* - * Setting up the protocol fields for subsidiary requests... - * Also, a wrapup function to keep the internal accounting straight. +/** + * Sett up the protocol fields for subsidiary requests + * @param rnew New Sub Request + * @param r current request */ AP_DECLARE(void) ap_set_sub_req_protocol(request_rec *rnew, const request_rec *r); + +/** + * A wrapup function to keep the internal accounting straight. + * Indicates that there is no more content coming. + * @param sub_r Subrequest that is now compete + */ AP_DECLARE(void) ap_finalize_sub_req_protocol(request_rec *sub_r); #ifdef __cplusplus @@ -688,3 +670,4 @@ AP_DECLARE(void) ap_finalize_sub_req_protocol(request_rec *sub_r); #endif #endif /* !APACHE_HTTP_PROTOCOL_H */ +/** @} */ diff --git a/include/http_request.h b/include/http_request.h index f5651388e7..b158714a60 100644 --- a/include/http_request.h +++ b/include/http_request.h @@ -14,25 +14,11 @@ * limitations under the License. */ -#ifndef APACHE_HTTP_REQUEST_H -#define APACHE_HTTP_REQUEST_H - -#include "apr_hooks.h" -#include "util_filter.h" - -#ifdef __cplusplus -extern "C" { -#endif - -#define AP_SUBREQ_NO_ARGS 0 -#define AP_SUBREQ_MERGE_ARGS 1 - /** * @file http_request.h * @brief Apache Request library - */ - -/* http_request.c is the code which handles the main line of request + * + * request.c is the code which handles the main line of request * processing, once a request has been read in (finding the right per- * directory configuration, building it if necessary, and calling all * the module dispatch functions in the right order). @@ -52,6 +38,19 @@ extern "C" { * about which was allocated in its apr_pool_t elsewhere before doing this. */ +#ifndef APACHE_HTTP_REQUEST_H +#define APACHE_HTTP_REQUEST_H + +#include "apr_hooks.h" +#include "util_filter.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define AP_SUBREQ_NO_ARGS 0 +#define AP_SUBREQ_MERGE_ARGS 1 + /** * An internal handler used by the ap_process_request, all subrequest mechanisms * and the redirect mechanism. @@ -68,7 +67,6 @@ AP_DECLARE(int) ap_process_request_internal(request_rec *r); * @param next_filter The first filter the sub_request should use. If this is * NULL, it defaults to the first filter for the main request * @return The new request record - * @deffunc request_rec * ap_sub_req_lookup_uri(const char *new_uri, const request_rec *r) */ AP_DECLARE(request_rec *) ap_sub_req_lookup_uri(const char *new_uri, const request_rec *r, @@ -82,7 +80,6 @@ AP_DECLARE(request_rec *) ap_sub_req_lookup_uri(const char *new_uri, * @param next_filter The first filter the sub_request should use. If this is * NULL, it defaults to the first filter for the main request * @return The new request record - * @deffunc request_rec * ap_sub_req_lookup_file(const char *new_file, const request_rec *r) */ AP_DECLARE(request_rec *) ap_sub_req_lookup_file(const char *new_file, const request_rec *r, @@ -100,8 +97,7 @@ AP_DECLARE(request_rec *) ap_sub_req_lookup_file(const char *new_file, * @param next_filter The first filter the sub_request should use. If this is * NULL, it defaults to the first filter for the main request * @return The new request record - * @deffunc request_rec * ap_sub_req_lookup_dirent(apr_finfo_t *finfo, int subtype, const request_rec *r) - * @tip The apr_dir_read flags value APR_FINFO_MIN|APR_FINFO_NAME flag is the + * @note The apr_dir_read flags value APR_FINFO_MIN|APR_FINFO_NAME flag is the * minimum recommended query if the results will be passed to apr_dir_read. * The file info passed must include the name, and must have the same relative * directory as the current request. @@ -119,7 +115,6 @@ AP_DECLARE(request_rec *) ap_sub_req_lookup_dirent(const apr_finfo_t *finfo, * @param next_filter The first filter the sub_request should use. If this is * NULL, it defaults to the first filter for the main request * @return The new request record - * @deffunc request_rec * ap_sub_req_method_uri(const char *method, const char *new_uri, const request_rec *r) */ AP_DECLARE(request_rec *) ap_sub_req_method_uri(const char *method, const char *new_uri, @@ -130,7 +125,7 @@ AP_DECLARE(request_rec *) ap_sub_req_method_uri(const char *method, * has to be inserted at the end of a sub-requests filter stack. * @param f The current filter * @param bb The brigade to filter - * @deffunc apr_status_t ap_sub_req_output_filter(ap_filter_t *f, apr_bucket_brigade *bb) + * @return status code */ AP_CORE_DECLARE_NONSTD(apr_status_t) ap_sub_req_output_filter(ap_filter_t *f, apr_bucket_brigade *bb); @@ -139,14 +134,12 @@ AP_CORE_DECLARE_NONSTD(apr_status_t) ap_sub_req_output_filter(ap_filter_t *f, * Run the handler for the subrequest * @param r The subrequest to run * @return The return code for the subrequest - * @deffunc int ap_run_sub_req(request_rec *r) */ AP_DECLARE(int) ap_run_sub_req(request_rec *r); /** * Free the memory associated with a subrequest * @param r The subrequest to finish - * @deffunc void ap_destroy_sub_req(request_rec *r) */ AP_DECLARE(void) ap_destroy_sub_req(request_rec *r); @@ -160,7 +153,6 @@ AP_DECLARE(void) ap_destroy_sub_req(request_rec *r); * Redirect the current request to some other uri * @param new_uri The URI to replace the current request with * @param r The current request - * @deffunc void ap_internal_redirect(const char *new_uri, request_rec *r) */ AP_DECLARE(void) ap_internal_redirect(const char *new_uri, request_rec *r); @@ -170,7 +162,6 @@ AP_DECLARE(void) ap_internal_redirect(const char *new_uri, request_rec *r); * an internal redirect. * @param new_uri The URI to replace the current request with. * @param r The current request - * @deffunc void ap_internal_redirect_handler(const char *new_uri, request_rec *r) */ AP_DECLARE(void) ap_internal_redirect_handler(const char *new_uri, request_rec *r); @@ -178,8 +169,7 @@ AP_DECLARE(void) ap_internal_redirect_handler(const char *new_uri, request_rec * * Redirect the current request to a sub_req, merging the pools * @param sub_req A subrequest created from this request * @param r The current request - * @deffunc void ap_internal_fast_redirect(request_rec *sub_req, request_rec *r) - * @tip the sub_req's pool will be merged into r's pool, be very careful + * @note the sub_req's pool will be merged into r's pool, be very careful * not to destroy this subrequest, it will be destroyed with the main request! */ AP_DECLARE(void) ap_internal_fast_redirect(request_rec *sub_req, request_rec *r); @@ -189,7 +179,6 @@ AP_DECLARE(void) ap_internal_fast_redirect(request_rec *sub_req, request_rec *r) * is required for the current request * @param r The current request * @return 1 if authentication is required, 0 otherwise - * @deffunc int ap_some_auth_required(request_rec *r) */ AP_DECLARE(int) ap_some_auth_required(request_rec *r); @@ -197,7 +186,6 @@ AP_DECLARE(int) ap_some_auth_required(request_rec *r); * Determine if the current request is the main request or a subrequest * @param r The current request * @return 1 if this is the main request, 0 otherwise - * @deffunc int ap_is_initial_req(request_rec *r) */ AP_DECLARE(int) ap_is_initial_req(request_rec *r); @@ -205,8 +193,7 @@ AP_DECLARE(int) ap_is_initial_req(request_rec *r); * Function to set the r->mtime field to the specified value if it's later * than what's already there. * @param r The current request - * @param dependency_time Time to set the mtime to - * @deffunc void ap_update_mtime(request_rec *r, apr_time_t dependency_mtime) + * @param dependency_mtime Time to set the mtime to */ AP_DECLARE(void) ap_update_mtime(request_rec *r, apr_time_t dependency_mtime); @@ -224,7 +211,6 @@ AP_DECLARE(void) ap_update_mtime(request_rec *r, apr_time_t dependency_mtime); * @param ... A NULL-terminated list of strings, each identifying a * method name to add. * @return None. - * @deffunc void ap_allow_methods(request_rec *r, int reset, ...) */ AP_DECLARE(void) ap_allow_methods(request_rec *r, int reset, ...); @@ -243,7 +229,6 @@ AP_DECLARE(void) ap_allow_methods(request_rec *r, int reset, ...); * defined in httpd.h, terminated with a value of -1 * (e.g., "M_GET, M_POST, M_OPTIONS, -1") * @return None. - * @deffunc void ap_allow_standard_methods(request_rec *r, int reset, ...) */ AP_DECLARE(void) ap_allow_standard_methods(request_rec *r, int reset, ...); @@ -251,13 +236,16 @@ AP_DECLARE(void) ap_allow_standard_methods(request_rec *r, int reset, ...); #define REPLACE_ALLOW 1 #ifdef CORE_PRIVATE -/* Function called by main.c to handle first-level request */ +/** + * Function called by main.c to handle first-level request + * @param r The current request + */ void ap_process_request(request_rec *); + /** * Kill the current request * @param type Why the request is dieing * @param r The current request - * @deffunc void ap_die(int type, request_rec *r) */ AP_DECLARE(void) ap_die(int type, request_rec *r); #endif @@ -284,7 +272,7 @@ AP_DECLARE_HOOK(int,translate_name,(request_rec *r)) /** * This hook allow modules to set the per_dir_config based on their own - * context (such as <Proxy > sections) and responds to contextless requests + * context (such as "<Proxy>" sections) and responds to contextless requests * such as TRACE that need no security or filesystem mapping. * based on the filesystem. * @param r The current request diff --git a/include/http_vhost.h b/include/http_vhost.h index 1459441246..dc72a346a8 100644 --- a/include/http_vhost.h +++ b/include/http_vhost.h @@ -14,6 +14,15 @@ * limitations under the License. */ +/** + * @file http_vhost.h + * @brief Virtual Host package + * + * @defgroup APACHE_CORE_VHOST Virtual Host Package + * @ingroup APACHE_CORE + * @{ + */ + #ifndef APACHE_HTTP_VHOST_H #define APACHE_HTTP_VHOST_H @@ -22,10 +31,6 @@ extern "C" { #endif /** - * @package Virtual Host package - */ - -/** * called before any config is read * @param p Pool to allocate out of */ @@ -36,19 +41,23 @@ AP_DECLARE(void) ap_init_vhost_config(apr_pool_t *p); * the run-time vhost lookups * @param p The pool to allocate out of * @param main_server The start of the virtual host list - * @deffunc ap_fini_vhost_config(apr_pool_t *p, server_rec *main_server) */ AP_DECLARE(void) ap_fini_vhost_config(apr_pool_t *p, server_rec *main_server); /** - * handle addresses in <VirtualHost> statement + * handle addresses in "<VirtualHost>" statement * @param p The pool to allocate out of * @param hostname The hostname in the VirtualHost statement * @param s The list of Virtual Hosts. */ const char *ap_parse_vhost_addrs(apr_pool_t *p, const char *hostname, server_rec *s); -/* handle NameVirtualHost directive */ +/** + * handle NameVirtualHost directive + * @param cmd Command Parameters structure + * @param dummy NOT USED + * @param arg a host of the form "<address>[:port]" + */ const char *ap_set_name_virtual_host (cmd_parms *cmd, void *dummy, const char *arg); @@ -97,7 +106,6 @@ AP_DECLARE(void) ap_update_vhost_from_headers(request_rec *r); * @param port The port from the headers * @return return 1 if the host:port matches any of the aliases of r->server, * return 0 otherwise - * @deffunc int ap_matches_request_vhost(request_rec *r, const char *host, apr_port_t port) */ AP_DECLARE(int) ap_matches_request_vhost(request_rec *r, const char *host, apr_port_t port); @@ -107,3 +115,4 @@ AP_DECLARE(int) ap_matches_request_vhost(request_rec *r, const char *host, #endif #endif /* !APACHE_HTTP_VHOST_H */ +/** @} */ diff --git a/include/httpd.h b/include/httpd.h index 761a612b6a..7b02cd1509 100644 --- a/include/httpd.h +++ b/include/httpd.h @@ -14,14 +14,27 @@ * limitations under the License. */ -#ifndef APACHE_HTTPD_H -#define APACHE_HTTPD_H - /** * @file httpd.h * @brief HTTP Daemon routines + * + * @defgroup APACHE Apache + * + * Top level group of which all other groups are a member + * @{ + * + * @defgroup APACHE_MODS Apache Modules + * Top level group for Apache Modules + * @defgroup APACHE_OS Operating System Specific + * @defgroup APACHE_CORE Apache Core + * @{ + * @defgroup APACHE_CORE_DAEMON HTTP Daemon Routine + * @{ */ +#ifndef APACHE_HTTPD_H +#define APACHE_HTTPD_H + /* XXX - We need to push more stuff to other .h files, or even .c files, to * make this file smaller */ @@ -59,23 +72,24 @@ extern "C" { /* ----------------------------- config dir ------------------------------ */ -/* Define this to be the default server home dir. Most things later in this +/** Define this to be the default server home dir. Most things later in this * file with a relative pathname will have this added. */ #ifndef HTTPD_ROOT #ifdef OS2 -/* Set default for OS/2 file system */ +/** Set default for OS/2 file system */ #define HTTPD_ROOT "/os2httpd" #elif defined(WIN32) -/* Set default for Windows file system */ +/** Set default for Windows file system */ #define HTTPD_ROOT "/apache" #elif defined (BEOS) -/* Set the default for BeOS */ +/** Set the default for BeOS */ #define HTTPD_ROOT "/boot/home/apache" #elif defined (NETWARE) -/* Set the default for NetWare */ +/** Set the default for NetWare */ #define HTTPD_ROOT "/apache" #else +/** Set for all other OSs */ #define HTTPD_ROOT "/usr/local/apache" #endif #endif /* HTTPD_ROOT */ @@ -88,7 +102,8 @@ extern "C" { * */ -/* Default location of documents. Can be overridden by the DocumentRoot +/** + * Default location of documents. Can be overridden by the DocumentRoot * directive. */ #ifndef DOCUMENT_LOCATION @@ -96,19 +111,20 @@ extern "C" { /* Set default for OS/2 file system */ #define DOCUMENT_LOCATION HTTPD_ROOT "/docs" #else +/* Set default for non OS/2 file system */ #define DOCUMENT_LOCATION HTTPD_ROOT "/htdocs" #endif #endif /* DOCUMENT_LOCATION */ -/* Maximum number of dynamically loaded modules */ +/** Maximum number of dynamically loaded modules */ #ifndef DYNAMIC_MODULE_LIMIT #define DYNAMIC_MODULE_LIMIT 128 #endif -/* Default administrator's address */ +/** Default administrator's address */ #define DEFAULT_ADMIN "[no address given]" -/* The name of the log files */ +/** The name of the log files */ #ifndef DEFAULT_ERRORLOG #if defined(OS2) || defined(WIN32) #define DEFAULT_ERRORLOG "logs/error.log" @@ -117,7 +133,7 @@ extern "C" { #endif #endif /* DEFAULT_ERRORLOG */ -/* Define this to be what your per-directory security files are called */ +/** Define this to be what your per-directory security files are called */ #ifndef DEFAULT_ACCESS_FNAME #ifdef OS2 /* Set default for OS/2 file system */ @@ -127,37 +143,38 @@ extern "C" { #endif #endif /* DEFAULT_ACCESS_FNAME */ -/* The name of the server config file */ +/** The name of the server config file */ #ifndef SERVER_CONFIG_FILE #define SERVER_CONFIG_FILE "conf/httpd.conf" #endif -/* The default path for CGI scripts if none is currently set */ +/** The default path for CGI scripts if none is currently set */ #ifndef DEFAULT_PATH #define DEFAULT_PATH "/bin:/usr/bin:/usr/ucb:/usr/bsd:/usr/local/bin" #endif -/* The path to the suExec wrapper, can be overridden in Configuration */ +/** The path to the suExec wrapper, can be overridden in Configuration */ #ifndef SUEXEC_BIN #define SUEXEC_BIN HTTPD_ROOT "/bin/suexec" #endif -/* The timeout for waiting for messages */ +/** The timeout for waiting for messages */ #ifndef DEFAULT_TIMEOUT #define DEFAULT_TIMEOUT 300 #endif -/* The timeout for waiting for keepalive timeout until next request */ +/** The timeout for waiting for keepalive timeout until next request */ #ifndef DEFAULT_KEEPALIVE_TIMEOUT #define DEFAULT_KEEPALIVE_TIMEOUT 5 #endif -/* The number of requests to entertain per connection */ +/** The number of requests to entertain per connection */ #ifndef DEFAULT_KEEPALIVE #define DEFAULT_KEEPALIVE 100 #endif -/* Limits on the size of various request items. These limits primarily +/* + * Limits on the size of various request items. These limits primarily * exist to prevent simple denial-of-service attacks on a server based * on misuse of the protocol. The recommended values will depend on the * nature of the server resources -- CGI scripts and database backends @@ -173,16 +190,19 @@ extern "C" { * DEFAULT_LIMIT_REQUEST_FIELDS can be modified or disabled (set = 0) by * the server config directive LimitRequestFields. */ + +/** default limit on bytes in Request-Line (Method+URI+HTTP-version) */ #ifndef DEFAULT_LIMIT_REQUEST_LINE #define DEFAULT_LIMIT_REQUEST_LINE 8190 -#endif /* default limit on bytes in Request-Line (Method+URI+HTTP-version) */ +#endif +/** default limit on bytes in any one header field */ #ifndef DEFAULT_LIMIT_REQUEST_FIELDSIZE #define DEFAULT_LIMIT_REQUEST_FIELDSIZE 8190 -#endif /* default limit on bytes in any one header field */ +#endif +/** default limit on number of request header fields */ #ifndef DEFAULT_LIMIT_REQUEST_FIELDS #define DEFAULT_LIMIT_REQUEST_FIELDS 100 -#endif /* default limit on number of request header fields */ - +#endif /** * The default default character set name to add if AddDefaultCharset is @@ -256,7 +276,6 @@ extern "C" { "xhtml1-frameset.dtd\">" /** Internal representation for a HTTP protocol number, e.g., HTTP/1.1 */ - #define HTTP_VERSION(major,minor) (1000*(major)+(minor)) /** Major part of HTTP protocol */ #define HTTP_VERSION_MAJOR(number) ((number)/1000) @@ -287,8 +306,10 @@ extern "C" { */ #define ap_http_scheme(r) ap_run_http_scheme(r) -/** The default string lengths */ +/** The default string length */ #define MAX_STRING_LEN HUGE_STRING_LEN + +/** The length of a Huge string */ #define HUGE_STRING_LEN 8192 /** The size of the server's internal read-write buffers */ @@ -364,14 +385,15 @@ extern "C" { /** * @internal - * modules should not used functions marked AP_CORE_DECLARE + * modules should not use functions marked AP_CORE_DECLARE */ #ifndef AP_CORE_DECLARE # define AP_CORE_DECLARE AP_DECLARE #endif + /** * @internal - * modules should not used functions marked AP_CORE_DECLARE_NONSTD + * modules should not use functions marked AP_CORE_DECLARE_NONSTD */ #ifndef AP_CORE_DECLARE_NONSTD @@ -379,7 +401,7 @@ extern "C" { #endif /** - * The numeric version information is broken out into fields within this + * @brief The numeric version information is broken out into fields within this * structure. */ typedef struct { @@ -508,33 +530,37 @@ AP_DECLARE(const char *) ap_get_server_built(void); ((x) == HTTP_SERVICE_UNAVAILABLE) || \ ((x) == HTTP_NOT_IMPLEMENTED)) /** @} */ + /** * @defgroup Methods List of Methods recognized by the server + * @ingroup APACHE_CORE_DAEMON * @{ - */ -/** - * Methods recognized (but not necessarily handled) by the server. + * + * @brief Methods recognized (but not necessarily handled) by the server. + * * These constants are used in bit shifting masks of size int, so it is * unsafe to have more methods than bits in an int. HEAD == M_GET. * This list must be tracked by the list in http_protocol.c in routine * ap_method_name_of(). + * */ -#define M_GET 0 /* RFC 2616: HTTP */ + +#define M_GET 0 /** RFC 2616: HTTP */ #define M_PUT 1 /* : */ #define M_POST 2 #define M_DELETE 3 #define M_CONNECT 4 #define M_OPTIONS 5 -#define M_TRACE 6 /* RFC 2616: HTTP */ -#define M_PATCH 7 /* no rfc(!) ### remove this one? */ -#define M_PROPFIND 8 /* RFC 2518: WebDAV */ +#define M_TRACE 6 /** RFC 2616: HTTP */ +#define M_PATCH 7 /** no rfc(!) ### remove this one? */ +#define M_PROPFIND 8 /** RFC 2518: WebDAV */ #define M_PROPPATCH 9 /* : */ #define M_MKCOL 10 #define M_COPY 11 #define M_MOVE 12 #define M_LOCK 13 -#define M_UNLOCK 14 /* RFC 2518: WebDAV */ -#define M_VERSION_CONTROL 15 /* RFC 3253: WebDAV Versioning */ +#define M_UNLOCK 14 /** RFC 2518: WebDAV */ +#define M_VERSION_CONTROL 15 /** RFC 3253: WebDAV Versioning */ #define M_CHECKOUT 16 /* : */ #define M_UNCHECKOUT 17 #define M_CHECKIN 18 @@ -545,7 +571,7 @@ AP_DECLARE(const char *) ap_get_server_built(void); #define M_MKACTIVITY 23 #define M_BASELINE_CONTROL 24 #define M_MERGE 25 -#define M_INVALID 26 /* RFC 3253: WebDAV Versioning */ +#define M_INVALID 26 /** RFC 3253: WebDAV Versioning */ /** * METHODS needs to be equal to the number of bits @@ -560,18 +586,23 @@ AP_DECLARE(const char *) ap_get_server_built(void); /** @} */ +/** @see ap_method_list_t */ +typedef struct ap_method_list_t ap_method_list_t; + /** - * Structure for handling HTTP methods. Methods known to the server are - * accessed via a bitmask shortcut; extension methods are handled by - * an array. + * @struct ap_method_list_t + * @brief Structure for handling HTTP methods. + * + * Methods known to the server are accessed via a bitmask shortcut; + * extension methods are handled by an array. */ -typedef struct ap_method_list_t ap_method_list_t; struct ap_method_list_t { - /* The bitmask used for known methods */ + /** The bitmask used for known methods */ apr_int64_t method_mask; - /* the array used for extension methods */ + /** the array used for extension methods */ apr_array_header_t *method_list; }; + /** * @defgroup module_magic Module Magic mime types * @{ @@ -618,10 +649,11 @@ struct ap_method_list_t { #define REQUEST_CHUNKED_ERROR 1 /** If chunked, remove the chunks for me. */ #define REQUEST_CHUNKED_DECHUNK 2 -/** @} */ +/** @} // values_request_rec_body */ /** * @defgroup values_request_rec_used_path_info Possible values for request_rec.used_path_info + * @ingroup APACHE_CORE_DAEMON * @{ * Possible values for request_rec.used_path_info: */ @@ -632,7 +664,9 @@ struct ap_method_list_t { #define AP_REQ_REJECT_PATH_INFO 1 /** Module may chose to use the given path_info */ #define AP_REQ_DEFAULT_PATH_INFO 2 -/** @} */ + +/** @} // values_request_rec_used_path_info */ + /* * Things which may vary per file-lookup WITHIN a request --- @@ -649,7 +683,7 @@ struct ap_method_list_t { */ /** - * This represents the result of calling htaccess; these are cached for + * @brief This represents the result of calling htaccess; these are cached for * each request. */ struct htaccess_result { @@ -688,7 +722,9 @@ typedef struct conn_state_t conn_state_t; /* This comes after we have defined the request_rec type */ #include "apr_uri.h" -/** A structure that represents one process */ +/** + * @brief A structure that represents one process + */ struct process_rec { /** Global pool. Cleared upon normal exit */ apr_pool_t *pool; @@ -702,7 +738,9 @@ struct process_rec { const char *short_name; }; -/** A structure that represents the current request */ +/** + * @brief A structure that represents the current request + */ struct request_rec { /** The pool associated with the request */ apr_pool_t *pool; @@ -953,13 +991,18 @@ struct request_rec { /* @} */ +/** + * @brief Enumeration of connection keepalive options + */ typedef enum { AP_CONN_UNKNOWN, AP_CONN_CLOSE, AP_CONN_KEEPALIVE } ap_conn_keepalive_e; -/** Structure to store things which are per connection */ +/** + * @brief Structure to store things which are per connection + */ struct conn_rec { /** Pool associated with this connection */ apr_pool_t *pool; @@ -1025,19 +1068,32 @@ struct conn_rec { int data_in_input_filters; }; +/** + * Enumeration of connection states + */ typedef enum { CONN_STATE_CHECK_REQUEST_LINE_READABLE, CONN_STATE_READ_REQUEST_LINE, CONN_STATE_LINGER, } conn_state_e; +/** + * @brief A structure to contain connection state information + */ struct conn_state_t { - APR_RING_ENTRY(conn_state_t) timeout_list; - apr_time_t expiration_time; + /** APR_RING of expiration timeouts */ + APR_RING_ENTRY(conn_state_t) timeout_list; + /** the expiration time of the next keepalive timeout */ + apr_time_t expiration_time; + /** Current state of the connection */ conn_state_e state; + /** connection record this struct refers to */ conn_rec *c; + /** memory pool to allocate from */ apr_pool_t *p; + /** bucket allocator */ apr_bucket_alloc_t *bucket_alloc; + /** poll file decriptor information */ apr_pollfd_t pfd; }; @@ -1050,7 +1106,10 @@ struct conn_state_t { #define DEFAULT_VHOST_ADDR 0xfffffffful -/** A structure to be used for Per-vhost config */ +/** + * @struct server_addr_rec + * @brief A structure to be used for Per-vhost config + */ typedef struct server_addr_rec server_addr_rec; struct server_addr_rec { /** The next server in the list */ @@ -1059,11 +1118,13 @@ struct server_addr_rec { apr_sockaddr_t *host_addr; /** The bound port, for this server */ apr_port_t host_port; - /** The name given in <VirtualHost> */ + /** The name given in "<VirtualHost>" */ char *virthost; }; -/** A structure to store information for each virtual server */ +/** + * @brief A structure to store information for each virtual server + */ struct server_rec { /** The process this server is running in */ process_rec *process; @@ -1136,9 +1197,10 @@ struct server_rec { typedef struct core_output_filter_ctx { apr_bucket_brigade *b; - apr_pool_t *deferred_write_pool; /* subpool of c->pool used for resources - * which may outlive the request - */ + /** subpool of c->pool used for resources + * which may outlive the request + */ + apr_pool_t *deferred_write_pool; } core_output_filter_ctx_t; typedef struct core_filter_ctx { @@ -1188,6 +1250,7 @@ AP_DECLARE(char *) ap_ht_time(apr_pool_t *p, apr_time_t t, const char *fmt, int * @return A copy of the characters up to the first stop character */ AP_DECLARE(char *) ap_getword(apr_pool_t *p, const char **line, char stop); + /** * Get the characters until the first occurance of a specified character * @param p The pool to allocate memory from @@ -1206,18 +1269,19 @@ AP_DECLARE(char *) ap_getword_nc(apr_pool_t *p, char **line, char stop); * @return The first word in the line */ AP_DECLARE(char *) ap_getword_white(apr_pool_t *p, const char **line); + /** * Get the first word from a given string. A word is defined as all characters * up to the first whitespace. * @param p The pool to allocate memory from * @param line The string to traverse * @return The first word in the line - * @note The same as ap_getword_white(), except it doesn't use const char **. + * @note The same as ap_getword_white(), except it doesn't use const char** */ AP_DECLARE(char *) ap_getword_white_nc(apr_pool_t *p, char **line); /** - * Get all characters from the first occurance of @a stop to the first '\0' + * Get all characters from the first occurance of @a stop to the first "\0" * @param p The pool to allocate memory from * @param line The line to traverse * @param stop The character to start at @@ -1226,8 +1290,9 @@ AP_DECLARE(char *) ap_getword_white_nc(apr_pool_t *p, char **line); */ AP_DECLARE(char *) ap_getword_nulls(apr_pool_t *p, const char **line, char stop); + /** - * Get all characters from the first occurance of @a stop to the first '\0' + * Get all characters from the first occurance of @a stop to the first "\0" * @param p The pool to allocate memory from * @param line The line to traverse * @param stop The character to start at @@ -1244,6 +1309,7 @@ AP_DECLARE(char *) ap_getword_nulls_nc(apr_pool_t *p, char **line, char stop); * @return A copy of the string */ AP_DECLARE(char *) ap_getword_conf(apr_pool_t *p, const char **line); + /** * Get the second word in the string paying attention to quoting * @param p The pool to allocate from @@ -1340,12 +1406,14 @@ AP_DECLARE(int) ap_is_url(const char *u); * @return 0 on success, non-zero otherwise */ AP_DECLARE(int) ap_unescape_url(char *url); + /** * Unescape a URL, but leaving %2f (slashes) escaped * @param url The url to unescape * @return 0 on success, non-zero otherwise */ AP_DECLARE(int) ap_unescape_url_keep2f(char *url); + /** * Convert all double slashes to single slashes * @param name The string to convert @@ -1366,6 +1434,7 @@ AP_DECLARE(void) ap_getparents(char *name); * @return The converted URL */ AP_DECLARE(char *) ap_escape_path_segment(apr_pool_t *p, const char *s); + /** * convert an OS path to a URL in an OS dependant way. * @param p The pool to allocate from @@ -1375,6 +1444,7 @@ AP_DECLARE(char *) ap_escape_path_segment(apr_pool_t *p, const char *s); * @return The converted URL */ AP_DECLARE(char *) ap_os_escape_path(apr_pool_t *p, const char *path, int partial); + /** @see ap_os_escape_path */ #define ap_escape_uri(ppool,path) ap_os_escape_path(ppool,path,1) @@ -1398,7 +1468,7 @@ AP_DECLARE(char *) ap_escape_logitem(apr_pool_t *p, const char *str); * Escape a string for logging into the error log (without a pool) * @param dest The buffer to write to * @param source The string to escape - * @param buflen The buffer size for the escaped string (including \0) + * @param buflen The buffer size for the escaped string (including "\0") * @return The len of the escaped string (always < maxlen) */ AP_DECLARE(apr_size_t) ap_escape_errorlog_item(char *dest, const char *source, @@ -1414,6 +1484,7 @@ AP_DECLARE(apr_size_t) ap_escape_errorlog_item(char *dest, const char *source, */ AP_DECLARE(char *) ap_construct_server(apr_pool_t *p, const char *hostname, apr_port_t port, const request_rec *r); + /** * Escape a shell command * @param p The pool to allocate from @@ -1436,7 +1507,7 @@ AP_DECLARE(int) ap_count_dirs(const char *path); * @param d The location to copy to * @param s The location to copy from * @param n The number of directories to copy - * @return value is the ever useful pointer to the trailing \0 of d + * @return value is the ever useful pointer to the trailing "\0" of d * @note on platforms with drive letters, n = 0 returns the "/" root, * whereas n = 1 returns the "d:/" root. On all other platforms, n = 0 * returns the empty string. */ @@ -1459,7 +1530,7 @@ AP_DECLARE(char *) ap_make_dirstr_parent(apr_pool_t *p, const char *s); * @param dir The directory name * @param f The filename * @return A copy of the full path - * @tip Never consider using this function if you are dealing with filesystem + * @note Never consider using this function if you are dealing with filesystem * names that need to remain canonical, unless you are merging an apr_dir_read * path and returned filename. Otherwise, the result is not canonical. */ @@ -1469,7 +1540,7 @@ AP_DECLARE(char *) ap_make_full_path(apr_pool_t *a, const char *dir, const char * Test if the given path has an an absolute path. * @param p The pool to allocate from * @param dir The directory name - * @tip The converse is not necessarily true, some OS's (Win32/OS2/Netware) have + * @note The converse is not necessarily true, some OS's (Win32/OS2/Netware) have * multiple forms of absolute paths. This only reports if the path is absolute * in a canonical sense. */ @@ -1491,6 +1562,7 @@ AP_DECLARE(int) ap_is_matchexp(const char *str); * @return 1 if the two strings match, 0 otherwise */ AP_DECLARE(int) ap_strcmp_match(const char *str, const char *expected); + /** * Determine if a string matches a patterm containing the wildcards '?' or '*', * ignoring case @@ -1529,27 +1601,26 @@ AP_DECLARE(char *) ap_pbase64decode(apr_pool_t *p, const char *bufcoded); /** * Encode a string into memory allocated from a pool in base 64 format * @param p The pool to allocate from - * @param strin The plaintext string + * @param string The plaintext string * @return The encoded string */ AP_DECLARE(char *) ap_pbase64encode(apr_pool_t *p, char *string); - /** * Compile a regular expression to be used later * @param p The pool to allocate from * @param pattern the regular expression to compile * @param cflags The bitwise or of one or more of the following: - * @li #REG_EXTENDED - Use POSIX extended Regular Expressions - * @li #REG_ICASE - Ignore case - * @li #REG_NOSUB - Support for substring addressing of matches + * @li REG_EXTENDED - Use POSIX extended Regular Expressions + * @li REG_ICASE - Ignore case + * @li REG_NOSUB - Support for substring addressing of matches * not required - * @li #REG_NEWLINE - Match-any-character operators don't match new-line + * @li REG_NEWLINE - Match-any-character operators don't match new-line * @return The compiled regular expression */ AP_DECLARE(ap_regex_t *) ap_pregcomp(apr_pool_t *p, const char *pattern, int cflags); - + /** * Free the memory associated with a compiled regular expression * @param p The pool the regex was allocated from @@ -1647,7 +1718,9 @@ char *ap_get_local_host(apr_pool_t *p); AP_DECLARE(void) ap_log_assert(const char *szExp, const char *szFile, int nLine) __attribute__((noreturn)); -/** @internal */ +/** + * @internal Internal Assert function + */ #define ap_assert(exp) ((exp) ? (void)0 : ap_log_assert(#exp,__FILE__,__LINE__)) /** @@ -1657,7 +1730,6 @@ AP_DECLARE(void) ap_log_assert(const char *szExp, const char *szFile, int nLine) * Use AP_DEBUG_ASSERT() if the condition should only be checked when AP_DEBUG * is defined. */ - #ifdef AP_DEBUG #define AP_DEBUG_ASSERT(exp) ap_assert(exp) #else @@ -1665,7 +1737,7 @@ AP_DECLARE(void) ap_log_assert(const char *szExp, const char *szFile, int nLine) #endif /** - * @defgroup stopsignal flags which indicate places where the sever should stop for debugging. + * @defgroup stopsignal Flags which indicate places where the sever should stop for debugging. * @{ * A set of flags which indicate places where the server should raise(SIGSTOP). * This is useful for debugging, because you can then attach to that process @@ -1756,3 +1828,8 @@ AP_DECLARE(const char *) ap_strstr_c(const char *s, const char *c); #endif #endif /* !APACHE_HTTPD_H */ + +/** @} //APACHE Daemon */ +/** @} //APACHE Core */ +/** @} //APACHE super group */ + diff --git a/include/mpm_common.h b/include/mpm_common.h index 360ea4a37e..d81f6c8d4b 100644 --- a/include/mpm_common.h +++ b/include/mpm_common.h @@ -25,6 +25,15 @@ * does not belong in src/os/unix */ +/** + * @file mpm_common.h + * @brief Multi-Processing Modules functions + * + * @defgroup APACHE_MPM Multi-Processing Modules + * @ingroup APACHE + * @{ + */ + #ifndef APACHE_MPM_COMMON_H #define APACHE_MPM_COMMON_H @@ -40,10 +49,6 @@ extern "C" { #endif -/** - * @package Multi-Processing Modules functions - */ - /* The maximum length of the queue of pending connections, as defined * by listen(2). Under some systems, it should be increased if you * are experiencing a heavy TCP SYN flood attack. @@ -348,3 +353,4 @@ AP_DECLARE_HOOK(int,monitor,(apr_pool_t *p)) #endif #endif /* !APACHE_MPM_COMMON_H */ +/** @} */ diff --git a/include/scoreboard.h b/include/scoreboard.h index 726ee1ee19..a6108117e3 100644 --- a/include/scoreboard.h +++ b/include/scoreboard.h @@ -14,6 +14,11 @@ * limitations under the License. */ +/** + * @file scoreboard.h + * @brief Apache scoreboard library + */ + #ifndef APACHE_SCOREBOARD_H #define APACHE_SCOREBOARD_H diff --git a/include/util_cfgtree.h b/include/util_cfgtree.h index 4257e3605b..8b7ba04ce2 100644 --- a/include/util_cfgtree.h +++ b/include/util_cfgtree.h @@ -14,19 +14,26 @@ * limitations under the License. */ +/** + * @file util_cfgtree.h + * @brief Config Tree Package + * + * @defgroup APACHE_CORE_CONFIG_TREE Config Tree Package + * @ingroup APACHE_CORE_CONFIG + * @{ + */ + #ifndef AP_CONFTREE_H #define AP_CONFTREE_H #include "ap_config.h" -/** - * @package Config Tree Package - */ - typedef struct ap_directive_t ap_directive_t; /** - * Structure used to build the config tree. The config tree only stores + * @brief Structure used to build the config tree. + * + * The config tree only stores * the directives that will be active in the running server. Directives * that contain other directions, such as <Directory ...> cause a sub-level * to be created, where the included directives are stored. The closing @@ -77,3 +84,4 @@ ap_directive_t *ap_add_node(ap_directive_t **parent, ap_directive_t *current, ap_directive_t *toadd, int child); #endif +/** @} */ diff --git a/include/util_charset.h b/include/util_charset.h index bfc743b0c5..6ca172583b 100644 --- a/include/util_charset.h +++ b/include/util_charset.h @@ -14,6 +14,15 @@ * limitations under the License. */ +/** + * @file util_charset.h + * @brief charset conversion + * + * @defgroup APACHE_CORE_CHARSET Charset Conversion + * @ingroup APACHE_CORE + * @{ + */ + #ifndef APACHE_UTIL_CHARSET_H #define APACHE_UTIL_CHARSET_H @@ -21,9 +30,6 @@ extern "C" { #endif -/** - * @package charset conversion - */ #include "apr.h" #if APR_CHARSET_EBCDIC @@ -46,3 +52,4 @@ extern apr_xlate_t *ap_hdrs_from_ascii; #endif #endif /* !APACHE_UTIL_CHARSET_H */ +/** @} */ diff --git a/include/util_ebcdic.h b/include/util_ebcdic.h index 70dbd2ee00..5e24544a36 100644 --- a/include/util_ebcdic.h +++ b/include/util_ebcdic.h @@ -14,6 +14,15 @@ * limitations under the License. */ +/** + * @file util_ebcdic.h + * @brief Utilities for EBCDIC conversion + * + * @defgroup APACHE_CORE_EBCDIC Utilities for EBCDIC conversion + * @ingroup APACHE_CORE + * @{ + */ + #ifndef APACHE_UTIL_EBCDIC_H #define APACHE_UTIL_EBCDIC_H @@ -26,10 +35,6 @@ extern "C" { #include "httpd.h" #include "util_charset.h" -/** - * @package Utilities for EBCDIC conversion - */ - #if APR_CHARSET_EBCDIC /** @@ -76,3 +81,4 @@ int ap_rvputs_proto_in_ascii(request_rec *r, ...); #endif #endif /* !APACHE_UTIL_EBCDIC_H */ +/** @} */ diff --git a/include/util_filter.h b/include/util_filter.h index 81f86fe985..0f29aaa5dd 100644 --- a/include/util_filter.h +++ b/include/util_filter.h @@ -14,6 +14,11 @@ * limitations under the License. */ +/** + * @file util_filter.h + * @brief Apache filter library + */ + #ifndef AP_FILTER_H #define AP_FILTER_H @@ -30,11 +35,6 @@ extern "C" { #endif -/** - * @file util_filter.h - * @brief Apache filter library - */ - /** Returned by the bottom-most filter if no data was written. * @see ap_pass_brigade(). */ #define AP_NOBODY_WROTE -1 @@ -45,7 +45,7 @@ extern "C" { #define AP_FILTER_ERROR -3 /** - * input filtering modes + * @brief input filtering modes */ typedef enum { /** The filter should return at most readbytes data. */ @@ -72,7 +72,8 @@ typedef enum { } ap_input_mode_t; /** - * @defgroup filter FILTER CHAIN + * @defgroup APACHE_CORE_FILTER Filter Chain + * @ingroup APACHE_CORE * * Filters operate using a "chaining" mechanism. The filters are chained * together into a sequence. When output is generated, it is passed through @@ -201,7 +202,7 @@ typedef struct ap_filter_rec_t ap_filter_rec_t; typedef struct ap_filter_provider_t ap_filter_provider_t; /** - * This structure is used for recording information about the + * @brief This structure is used for recording information about the * registered filters. It associates a name with the filter's callback * and filter type. * @@ -248,7 +249,9 @@ struct ap_filter_rec_t { }; /** - * The representation of a filter chain. Each request has a list + * @brief The representation of a filter chain. + * + * Each request has a list * of these structures which are called in turn to filter the data. Sub * requests get an exact copy of the main requests filter chain. */ diff --git a/include/util_ldap.h b/include/util_ldap.h index ad8013adcd..10064cdd8d 100644 --- a/include/util_ldap.h +++ b/include/util_ldap.h @@ -14,6 +14,11 @@ * limitations under the License. */ +/** + * @file util_ldap.h + * @brief Apache LDAP library + */ + #ifndef UTIL_LDAP_H #define UTIL_LDAP_H diff --git a/include/util_md5.h b/include/util_md5.h index 16b0e0144c..63238eacfc 100644 --- a/include/util_md5.h +++ b/include/util_md5.h @@ -14,6 +14,15 @@ * limitations under the License. */ +/** + * @file util_md5.h + * @brief Apache MD5 library + * + * @defgroup APACHE_CORE_MD5 MD5 Package Library + * @ingroup APACHE_CORE + * @{ + */ + #ifndef APACHE_UTIL_MD5_H #define APACHE_UTIL_MD5_H @@ -21,10 +30,6 @@ extern "C" { #endif -/** - * @package Apache MD5 library - */ - #include "apr_md5.h" /** @@ -68,3 +73,4 @@ AP_DECLARE(char *) ap_md5digest(apr_pool_t *p, apr_file_t *infile); #endif #endif /* !APACHE_UTIL_MD5_H */ +/** @} */ diff --git a/include/util_script.h b/include/util_script.h index 8ee1ea6722..e23c1124a6 100644 --- a/include/util_script.h +++ b/include/util_script.h @@ -14,6 +14,15 @@ * limitations under the License. */ +/** + * @file util_script.h + * @brief Apache script tools + * + * @defgroup APACHE_CORE_SCRIPT Script Tools + * @ingroup APACHE_CORE + * @{ + */ + #ifndef APACHE_UTIL_SCRIPT_H #define APACHE_UTIL_SCRIPT_H @@ -23,10 +32,6 @@ extern "C" { #endif -/** - * @package Apache script tools - */ - #ifndef APACHE_ARG_MAX #ifdef _POSIX_ARG_MAX #define APACHE_ARG_MAX _POSIX_ARG_MAX @@ -140,3 +145,4 @@ AP_DECLARE(int) ap_scan_script_header_err_core(request_rec *r, char *buffer, #endif #endif /* !APACHE_UTIL_SCRIPT_H */ +/** @} */ diff --git a/include/util_time.h b/include/util_time.h index 2e34388d52..df1173c440 100644 --- a/include/util_time.h +++ b/include/util_time.h @@ -14,6 +14,15 @@ * limitations under the License. */ +/** + * @file util_time.h + * @brief Apache date-time handling functions + * + * @defgroup APACHE_CORE_TIME Date-time handling functions + * @ingroup APACHE_CORE + * @{ + */ + #ifndef APACHE_UTIL_TIME_H #define APACHE_UTIL_TIME_H @@ -25,10 +34,6 @@ extern "C" { #endif -/** - * @package Apache date-time handling functions - */ - /* Maximum delta from the current time, in seconds, for a past time * to qualify as "recent" for use in the ap_explode_recent_*() functions: * (Must be a power of two minus one!) @@ -83,3 +88,4 @@ AP_DECLARE(apr_status_t) ap_recent_rfc822_date(char *date_str, apr_time_t t); #endif #endif /* !APACHE_UTIL_TIME_H */ +/** @} */ diff --git a/include/util_xml.h b/include/util_xml.h index b97da2c1e0..861a775d2b 100644 --- a/include/util_xml.h +++ b/include/util_xml.h @@ -14,6 +14,15 @@ * limitations under the License. */ +/** + * @file util_xml.h + * @brief Apache XML library + * + * @defgroup APACHE_CORE_XML XML Library + * @ingroup APACHE_CORE + * @{ + */ + #ifndef UTIL_XML_H #define UTIL_XML_H @@ -26,10 +35,6 @@ extern "C" { #endif /** - * @package Apache XML library - */ - -/** * Get XML post data and parse it * @param r The current request * @param pdoc The XML post data @@ -44,3 +49,4 @@ AP_DECLARE(int) ap_xml_parse_input(request_rec *r, apr_xml_doc **pdoc); #endif #endif /* UTIL_XML_H */ +/** @} */ |