From: William A. Rowe Jr Date: Tue, 3 Oct 2000 13:11:25 +0000 (+0000) Subject: Definately need a canonical name, so comparison succeeds at run time. X-Git-Tag: APACHE_2_0_ALPHA_7~68 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ceedcbda2f237af62467a53ca2e12a5cb8af0069;p=apache Definately need a canonical name, so comparison succeeds at run time. PR: Obtained from: Submitted by: Reviewed by: git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86375 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/modules/cache/mod_file_cache.c b/modules/cache/mod_file_cache.c index 14e93af7c9..469d07f183 100644 --- a/modules/cache/mod_file_cache.c +++ b/modules/cache/mod_file_cache.c @@ -273,8 +273,10 @@ static const char *mmapfile(cmd_parms *cmd, void *dummy, const char *filename) a_file *new_file; a_file tmp; apr_file_t *fd = NULL; + char *fspec; - if (apr_stat(&tmp.finfo, filename, cmd->temp_pool) != APR_SUCCESS) { + fspec = ap_os_case_canonical_filename(cmd->pool, filename); + if (apr_stat(&tmp.finfo, fspec, cmd->temp_pool) != APR_SUCCESS) { ap_log_error(APLOG_MARK, APLOG_WARNING, errno, cmd->server, "mod_file_cache: unable to stat(%s), skipping", filename); return NULL; @@ -284,7 +286,7 @@ static const char *mmapfile(cmd_parms *cmd, void *dummy, const char *filename) "mod_file_cache: %s isn't a regular file, skipping", filename); return NULL; } - if (apr_open(&fd, filename, APR_READ, APR_OS_DEFAULT, cmd->temp_pool) + if (apr_open(&fd, fspec, APR_READ, APR_OS_DEFAULT, cmd->temp_pool) != APR_SUCCESS) { ap_log_error(APLOG_MARK, APLOG_WARNING, errno, cmd->server, "mod_file_cache: unable to open(%s, O_RDONLY), skipping", filename); @@ -299,7 +301,7 @@ static const char *mmapfile(cmd_parms *cmd, void *dummy, const char *filename) return NULL; } apr_close(fd); - tmp.filename = apr_pstrdup(cmd->pool, filename); + tmp.filename = fspec; sconf = ap_get_module_config(cmd->server->module_config, &file_cache_module); new_file = apr_push_array(sconf->files); *new_file = tmp;