tag 363964 patch thanks Hi, this bug is now fixed upstream with the attached patch from https://issues.apache.org/bugzilla/show_bug.cgi?id=39369#c17 which Ubuntu currently has against its apache2 packages. Thanks, Andrew
#! /bin/sh /usr/share/dpatch/dpatch-run
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: the actual patch to make suexec-custom read a config file
@DPATCH@
diff -urNad apache2-2.2.11~/modules/filters/mod_include.c apache2-2.2.11/modules/filters/mod_include.c
--- apache2-2.2.11~/modules/filters/mod_include.c 2008-03-18 03:32:47.000000000 +1300
+++ apache2-2.2.11/modules/filters/mod_include.c 2009-06-03 14:36:38.000000000 +1200
@@ -580,7 +580,7 @@
*p = '\0';
}
-static void add_include_vars(request_rec *r, const char *timefmt)
+static void add_include_vars(request_rec *r)
{
apr_table_t *e = r->subprocess_env;
char *t;
@@ -608,26 +608,17 @@
}
}
-static const char *add_include_vars_lazy(request_rec *r, const char *var)
+static const char *add_include_vars_lazy(request_rec *r, const char *var, const char *timefmt)
{
char *val;
if (!strcasecmp(var, "DATE_LOCAL")) {
- include_dir_config *conf =
- (include_dir_config *)ap_get_module_config(r->per_dir_config,
- &include_module);
- val = ap_ht_time(r->pool, r->request_time, conf->default_time_fmt, 0);
+ val = ap_ht_time(r->pool, r->request_time, timefmt, 0);
}
else if (!strcasecmp(var, "DATE_GMT")) {
- include_dir_config *conf =
- (include_dir_config *)ap_get_module_config(r->per_dir_config,
- &include_module);
- val = ap_ht_time(r->pool, r->request_time, conf->default_time_fmt, 1);
+ val = ap_ht_time(r->pool, r->request_time, timefmt, 1);
}
else if (!strcasecmp(var, "LAST_MODIFIED")) {
- include_dir_config *conf =
- (include_dir_config *)ap_get_module_config(r->per_dir_config,
- &include_module);
- val = ap_ht_time(r->pool, r->finfo.mtime, conf->default_time_fmt, 0);
+ val = ap_ht_time(r->pool, r->finfo.mtime, timefmt, 0);
}
else if (!strcasecmp(var, "USER_NAME")) {
if (apr_uid_name_get(&val, r->finfo.user, r->pool) != APR_SUCCESS) {
@@ -684,7 +675,7 @@
val = apr_table_get(r->subprocess_env, var);
if (val == LAZY_VALUE) {
- val = add_include_vars_lazy(r, var);
+ val = add_include_vars_lazy(r, var, ctx->time_str);
}
}
@@ -2423,7 +2414,7 @@
/* get value */
val_text = elts[i].val;
if (val_text == LAZY_VALUE) {
- val_text = add_include_vars_lazy(r, elts[i].key);
+ val_text = add_include_vars_lazy(r, elts[i].key, ctx->time_str);
}
val_text = ap_escape_html(ctx->dpool, elts[i].val);
v_len = strlen(val_text);
@@ -3608,7 +3599,7 @@
* environment */
ap_add_common_vars(r);
ap_add_cgi_vars(r);
- add_include_vars(r, conf->default_time_fmt);
+ add_include_vars(r);
}
/* Always unset the content-length. There is no way to know if
* the content will be modified at some point by send_parsed_content.
Attachment:
signature.asc
Description: Digital signature