home *** CD-ROM | disk | FTP | other *** search
/ Cricao de Sites - 650 Layouts Prontos / WebMasters.iso / Servidores / apache_2.2.8-win32-x86-no_ssl.msi / Data1.cab / _A0C23C4FC0BA49813418051D0ED80A62 < prev    next >
Text File  |  2006-07-11  |  3KB  |  75 lines

  1. /* Licensed to the Apache Software Foundation (ASF) under one or more
  2.  * contributor license agreements.  See the NOTICE file distributed with
  3.  * this work for additional information regarding copyright ownership.
  4.  * The ASF licenses this file to You under the Apache License, Version 2.0
  5.  * (the "License"); you may not use this file except in compliance with
  6.  * the License.  You may obtain a copy of the License at
  7.  *
  8.  *     http://www.apache.org/licenses/LICENSE-2.0
  9.  *
  10.  * Unless required by applicable law or agreed to in writing, software
  11.  * distributed under the License is distributed on an "AS IS" BASIS,
  12.  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13.  * See the License for the specific language governing permissions and
  14.  * limitations under the License.
  15.  */
  16.  
  17. /**
  18.  * @file mod_log_config.h
  19.  * @brief Logging Configuration Extension Module for Apache
  20.  * 
  21.  * @defgroup MOD_LOG_CONFIG mod_log_config
  22.  * @ingroup APACHE_MODS
  23.  * @{
  24.  */
  25.  
  26. #include "apr_optional.h"
  27. #include "httpd.h"
  28. #include "scoreboard.h"
  29.  
  30. #ifndef _MOD_LOG_CONFIG_H
  31. #define _MOD_LOG_CONFIG_H 1
  32.  
  33. /** 
  34.  * callback function prototype for a external log handler
  35.  */
  36. typedef const char *ap_log_handler_fn_t(request_rec *r, char *a);
  37.  
  38. /**
  39.  * callback function prototype for external writer initialization.
  40.  */
  41. typedef void *ap_log_writer_init(apr_pool_t *p, server_rec *s, 
  42.                                  const char *name);
  43. /**
  44.  * callback which gets called where there is a log line to write.
  45.  */
  46. typedef apr_status_t ap_log_writer(
  47.                             request_rec *r,
  48.                             void *handle, 
  49.                             const char **portions,
  50.                             int *lengths,
  51.                             int nelts,
  52.                             apr_size_t len);
  53.  
  54. typedef struct ap_log_handler {
  55.     ap_log_handler_fn_t *func;
  56.     int want_orig_default;
  57. } ap_log_handler;
  58.  
  59. APR_DECLARE_OPTIONAL_FN(void, ap_register_log_handler, 
  60.                         (apr_pool_t *p, char *tag, ap_log_handler_fn_t *func,
  61.                          int def));
  62. /**
  63.  * you will need to set your init handler *BEFORE* the open_logs 
  64.  * in mod_log_config gets executed
  65.  */
  66. APR_DECLARE_OPTIONAL_FN(ap_log_writer_init*, ap_log_set_writer_init,(ap_log_writer_init *func));
  67. /** 
  68.  * you should probably set the writer at the same time (ie..before open_logs)
  69.  */
  70. APR_DECLARE_OPTIONAL_FN(ap_log_writer*, ap_log_set_writer, (ap_log_writer* func));
  71.  
  72. #endif /* MOD_LOG_CONFIG */
  73. /** @} */
  74.  
  75.