]> granicus.if.org Git - apache/blobdiff - include/http_config.h
Add the missing minor bump of r550519.
[apache] / include / http_config.h
index 23b2179957c3430e4804885539f84d2fd6905574..820a9facafc6c1378f2361177b3be87a070b91d3 100644 (file)
@@ -1,8 +1,9 @@
-/* Copyright 1999-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
+/* Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
  *
  *     http://www.apache.org/licenses/LICENSE-2.0
  *
  * 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
 
 extern "C" {
 #endif
 
-/**
- * @file http_config.h
- * @brief Apache Configuration
- */
-
 /*
  * The central data structures around here...
  */
@@ -56,7 +61,8 @@ enum cmd_how {
     TAKE3,                     /**< three arguments only */
     TAKE23,                    /**< two or three arguments */
     TAKE123,                   /**< one, two or three arguments */
-    TAKE13                     /**< one or three arguments */
+    TAKE13,                    /**< one or three arguments */
+    TAKE_ARGV                  /**< an argc and argv are passed */
 };
 /**
  * This structure is passed to a command which is being invoked,
@@ -77,6 +83,9 @@ typedef union {
     /** function to call for a raw-args */
     const char *(*raw_args) (cmd_parms *parms, void *mconfig,
                             const char *args);
+    /** function to call for a argv/argc */
+    const char *(*take_argv) (cmd_parms *parms, void *mconfig,
+                            int argc, char *const argv[]);
     /** function to call for a take1 */
     const char *(*take1) (cmd_parms *parms, void *mconfig, const char *w);
     /** function to call for a take2 */
@@ -93,6 +102,8 @@ typedef union {
 # define AP_NO_ARGS    func.no_args
 /** This configuration directive will handle it's own parsing of arguments*/
 # define AP_RAW_ARGS   func.raw_args
+/** This configuration directive will handle it's own parsing of arguments*/
+# define AP_TAKE_ARGV  func.take_argv
 /** This configuration directive takes 1 argument*/
 # define AP_TAKE1      func.take1
 /** This configuration directive takes 2 arguments */
@@ -108,6 +119,9 @@ typedef union {
 /** method of declaring a directive with raw argument parsing */
 # define AP_INIT_RAW_ARGS(directive, func, mconfig, where, help) \
     { directive, { .raw_args=func }, mconfig, where, RAW_ARGS, help }
+/** method of declaring a directive with raw argument parsing */
+# define AP_INIT_TAKE_ARGV(directive, func, mconfig, where, help) \
+    { directive, { .take_argv=func }, mconfig, where, TAKE_ARGV, help }
 /** method of declaring a directive which takes 1 argument */
 # define AP_INIT_TAKE1(directive, func, mconfig, where, help) \
     { directive, { .take1=func }, mconfig, where, TAKE1, help }
@@ -145,6 +159,7 @@ typedef const char *(*cmd_func) ();
 
 # define AP_NO_ARGS  func
 # define AP_RAW_ARGS func
+# define AP_TAKE_ARGV func
 # define AP_TAKE1    func
 # define AP_TAKE2    func
 # define AP_TAKE3    func
@@ -154,6 +169,8 @@ typedef const char *(*cmd_func) ();
     { directive, func, mconfig, where, RAW_ARGS, help }
 # define AP_INIT_RAW_ARGS(directive, func, mconfig, where, help) \
     { directive, func, mconfig, where, RAW_ARGS, help }
+# define AP_INIT_TAKE_ARGV(directive, func, mconfig, where, help) \
+    { directive, func, mconfig, where, TAKE_ARGV, help }
 # define AP_INIT_TAKE1(directive, func, mconfig, where, help) \
     { directive, func, mconfig, where, TAKE1, help }
 # define AP_INIT_ITERATE(directive, func, mconfig, where, help) \
@@ -681,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
  * @{
  */
 /**
@@ -708,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;
@@ -967,6 +984,16 @@ AP_DECLARE_HOOK(int,header_parser,(request_rec *r))
 AP_DECLARE_HOOK(int,pre_config,(apr_pool_t *pconf,apr_pool_t *plog,
                                 apr_pool_t *ptemp))
 
+/**
+ * Run the check_config function for each module
+ * @param pconf The config pool
+ * @param plog The logging streams pool
+ * @param ptemp The temporary pool
+ * @return OK or DECLINED on success anything else is a error
+ */
+AP_DECLARE_HOOK(int,check_config,(apr_pool_t *pconf, apr_pool_t *plog,
+                                  apr_pool_t *ptemp, server_rec *s))
+
 /**
  * Run the test_config function for each module; this hook is run
  * only if the server was invoked to test the configuration syntax.
@@ -1036,3 +1063,4 @@ AP_DECLARE_HOOK(void,optional_fn_retrieve,(void))
 #endif
 
 #endif /* !APACHE_HTTP_CONFIG_H */
+/** @} */