You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by jo...@apache.org on 2003/07/21 16:48:03 UTC
cvs commit: httpd-2.0/modules/generators mod_status.h mod_status.c
jorton 2003/07/21 07:48:02
Modified: . configure.in Makefile.in
modules/generators mod_status.c
Added: modules/generators mod_status.h
Log:
Add optional hook to extend mod_status output.
* configure.in: Add modules/generators to include path.
* Makefile.in: Install mod_status.h.
* modules/generators/mod_status.h: New file.
* modules/generators/mod_status.c: Implement ap_run_status_hook.
(status_handler): Run status hooks.
Revision Changes Path
1.254 +1 -1 httpd-2.0/configure.in
Index: configure.in
===================================================================
RCS file: /home/cvs/httpd-2.0/configure.in,v
retrieving revision 1.253
retrieving revision 1.254
diff -u -u -r1.253 -r1.254
--- configure.in 10 Jul 2003 19:29:24 -0000 1.253
+++ configure.in 21 Jul 2003 14:48:01 -0000 1.254
@@ -135,7 +135,7 @@
APR_ADDTO(INCLUDES, [-I\$(srcdir) -I\$(top_builddir)/server/mpm/\$(MPM_SUBDIR_NAME) -I\$(top_builddir)/include])
fi
-APR_ADDTO(INCLUDES, [-I\$(top_srcdir)/os/\$(OS_DIR) -I\$(top_srcdir)/server/mpm/\$(MPM_SUBDIR_NAME) -I\$(top_srcdir)/modules/http -I\$(top_srcdir)/modules/filters -I\$(top_srcdir)/modules/proxy -I\$(top_srcdir)/include])
+APR_ADDTO(INCLUDES, [-I\$(top_srcdir)/os/\$(OS_DIR) -I\$(top_srcdir)/server/mpm/\$(MPM_SUBDIR_NAME) -I\$(top_srcdir)/modules/http -I\$(top_srcdir)/modules/filters -I\$(top_srcdir)/modules/proxy -I\$(top_srcdir)/include -I\$(top_srcdir)/modules/generators])
echo $ac_n "${nl}Applying OS-specific hints for httpd ...${nl}"
1.134 +1 -0 httpd-2.0/Makefile.in
Index: Makefile.in
===================================================================
RCS file: /home/cvs/httpd-2.0/Makefile.in,v
retrieving revision 1.133
retrieving revision 1.134
diff -u -u -r1.133 -r1.134
--- Makefile.in 9 Jul 2003 14:56:28 -0000 1.133
+++ Makefile.in 21 Jul 2003 14:48:01 -0000 1.134
@@ -175,6 +175,7 @@
@cp -p $(srcdir)/modules/dav/main/mod_dav.h $(DESTDIR)$(includedir)
@cp -p $(srcdir)/modules/filters/mod_include.h $(DESTDIR)$(includedir)
@cp -p $(srcdir)/modules/generators/mod_cgi.h $(DESTDIR)$(includedir)
+ @cp -p $(srcdir)/modules/generators/mod_status.h $(DESTDIR)$(includedir)
@cp -p $(srcdir)/modules/loggers/mod_log_config.h $(DESTDIR)$(includedir)
@cp -p $(srcdir)/modules/http/mod_core.h $(DESTDIR)$(includedir)
@cp -p $(srcdir)/modules/proxy/mod_proxy.h $(DESTDIR)$(includedir)
1.73 +17 -0 httpd-2.0/modules/generators/mod_status.c
Index: mod_status.c
===================================================================
RCS file: /home/cvs/httpd-2.0/modules/generators/mod_status.c,v
retrieving revision 1.72
retrieving revision 1.73
diff -u -u -r1.72 -r1.73
--- mod_status.c 3 Feb 2003 17:53:03 -0000 1.72
+++ mod_status.c 21 Jul 2003 14:48:02 -0000 1.73
@@ -107,6 +107,7 @@
#include <time.h>
#include "scoreboard.h"
#include "http_log.h"
+#include "mod_status.h"
#if APR_HAVE_UNISTD_H
#include <unistd.h>
#endif
@@ -141,6 +142,12 @@
int server_limit, thread_limit;
+/* Implement 'ap_run_status_hook'. */
+AP_IMPLEMENT_OPTIONAL_HOOK_RUN_ALL(int,status_hook,
+ (request_rec *r, int flags),
+ (r, flags),
+ OK, DECLINED)
+
/*
* command-related code. This is here to prevent use of ExtendedStatus
* without status_module included.
@@ -784,6 +791,16 @@
"information you need to use the "
"<code>ExtendedStatus On</code> directive.\n", r);
}
+ }
+
+ {
+ /* Run extension hooks to insert extra content. */
+ int flags =
+ (short_report ? AP_STATUS_SHORT : 0) |
+ (no_table_report ? AP_STATUS_NOTABLE : 0) |
+ (ap_extended_status ? AP_STATUS_EXTENDED : 0);
+
+ ap_run_status_hook(r, flags);
}
if (!short_report) {
1.1 httpd-2.0/modules/generators/mod_status.h
Index: mod_status.h
===================================================================
/* ====================================================================
* The Apache Software License, Version 1.1
*
* Copyright (c) 2003 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* 3. The end-user documentation included with the redistribution,
* if any, must include the following acknowledgment:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself,
* if and wherever such third-party acknowledgments normally appear.
*
* 4. The names "Apache" and "Apache Software Foundation" must
* not be used to endorse or promote products derived from this
* software without prior written permission. For written
* permission, please contact apache@apache.org.
*
* 5. Products derived from this software may not be called "Apache",
* nor may "Apache" appear in their name, without prior written
* permission of the Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*/
#ifndef MOD_STATUS_H
#define MOD_STATUS_H
#include "ap_config.h"
#include "httpd.h"
#define AP_STATUS_SHORT (0x1) /* short, non-HTML report requested */
#define AP_STATUS_NOTABLE (0x2) /* HTML report without tables */
#define AP_STATUS_EXTENDED (0x4) /* detailed report */
/* Optional hooks which can insert extra content into the mod_status
* output. FLAGS will be set to the bitwise OR of any of the
* AP_STATUS_* flags.
*
* Implementations of this hook should generate content using
* functions in the ap_rputs/ap_rprintf family; each hook should
* return OK or DECLINED. */
AP_DECLARE_HOOK(int, status_hook, (request_rec *r, int flags))
#endif