From 37d741a9abef42e6802232a9f10b6360266f09c7 Mon Sep 17 00:00:00 2001 From: Jeff Trawick Date: Sat, 4 Aug 2012 21:40:08 +0000 Subject: [PATCH] core: Respect DefaultRuntimeDir/DEFAULT_REL_RUNTIMEDIR for the scoreboard (ScoreBoardFile). git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1369477 13f79535-47bb-0310-9956-ffa450edef68 --- CHANGES | 6 ++++-- docs/manual/mod/mpm_common.xml | 6 +++++- include/scoreboard.h | 2 +- server/core.c | 2 +- server/scoreboard.c | 4 ++-- 5 files changed, 13 insertions(+), 7 deletions(-) diff --git a/CHANGES b/CHANGES index c2dcf95148..7b60afc4de 100644 --- a/CHANGES +++ b/CHANGES @@ -14,8 +14,10 @@ Changes with Apache 2.5.0 *) mod_lua: Move LUA_COMPAT_ALL into the right place, so it will activate compatibility mode for Lua 5.2. [Daniel Gruno] - *) mod_lbmethod_heartbeat, mod_heartmonitor: Respect DefaultRuntimeDir/ - DEFAULT_REL_RUNTIMEDIR for the heartbeat storage file. [Jeff Trawick] + *) core: Respect DefaultRuntimeDir/DEFAULT_REL_RUNTIMEDIR for the + scoreboard (ScoreBoardFile). mod_lbmethod_heartbeat, mod_heartmonitor: + Respect DefaultRuntimeDir/DEFAULT_REL_RUNTIMEDIR for the heartbeat + storage file. [Jeff Trawick] *) mod_ssl: Add RFC 5878 support. [Ben Laurie] diff --git a/docs/manual/mod/mpm_common.xml b/docs/manual/mod/mpm_common.xml index 2ddbc8ebbd..197754ee6c 100644 --- a/docs/manual/mod/mpm_common.xml +++ b/docs/manual/mod/mpm_common.xml @@ -456,7 +456,7 @@ spikes Location of the file used to store coordination data for the child processes ScoreBoardFile file-path -ScoreBoardFile logs/apache_runtime_status +ScoreBoardFile apache_runtime_status server config eventmpm_winnt preforkworker @@ -470,6 +470,10 @@ the child processes disk (using file-based shared memory). Specifying this directive causes Apache httpd to always create the file on the disk.

+

If file-path is not an absolute path, the location specified + will be relative to the value of + DefaultRuntimeDir.

+ Example ScoreBoardFile /var/run/apache_runtime_status diff --git a/include/scoreboard.h b/include/scoreboard.h index 2fd2960e49..393cbe9f29 100644 --- a/include/scoreboard.h +++ b/include/scoreboard.h @@ -40,7 +40,7 @@ extern "C" { /* Scoreboard file, if there is one */ #ifndef DEFAULT_SCOREBOARD -#define DEFAULT_SCOREBOARD "logs/apache_runtime_status" +#define DEFAULT_SCOREBOARD "apache_runtime_status" /* within DEFAULT_REL_RUNTIMEDIR */ #endif /* Scoreboard info on a process is, for now, kept very brief --- diff --git a/server/core.c b/server/core.c index 03137577de..5d0e12d668 100644 --- a/server/core.c +++ b/server/core.c @@ -4799,7 +4799,7 @@ static void core_dump_config(apr_pool_t *p, server_rec *s) tmp = s->error_fname; apr_file_printf(out, "Main ErrorLog: \"%s\"\n", tmp); if (ap_scoreboard_fname) { - tmp = ap_server_root_relative(p, ap_scoreboard_fname); + tmp = ap_runtime_dir_relative(p, ap_scoreboard_fname); apr_file_printf(out, "ScoreBoardFile: \"%s\"\n", tmp); } ap_dump_mutexes(p, s, out); diff --git a/server/scoreboard.c b/server/scoreboard.c index bef2b90908..67b0386c4b 100644 --- a/server/scoreboard.c +++ b/server/scoreboard.c @@ -217,7 +217,7 @@ static apr_status_t open_scoreboard(apr_pool_t *pconf) /* The config says to create a name-based shmem */ if (ap_scoreboard_fname) { /* make sure it's an absolute pathname */ - fname = ap_server_root_relative(pconf, ap_scoreboard_fname); + fname = ap_runtime_dir_relative(pconf, ap_scoreboard_fname); if (!fname) { ap_log_error(APLOG_MARK, APLOG_CRIT, APR_EBADPATH, ap_server_conf, APLOGNO(00003) "Fatal error: Invalid Scoreboard path %s", @@ -239,7 +239,7 @@ static apr_status_t open_scoreboard(apr_pool_t *pconf) else if (rv == APR_ENOTIMPL) { /* Make sure it's an absolute pathname */ ap_scoreboard_fname = DEFAULT_SCOREBOARD; - fname = ap_server_root_relative(pconf, ap_scoreboard_fname); + fname = ap_runtime_dir_relative(pconf, ap_scoreboard_fname); return create_namebased_scoreboard(global_pool, fname); } -- 2.50.0