Loading CHANGES +3 −0 Changes for CHANGES: 3 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -2,6 +2,9 @@ Changes with Apache 2.3.0 [Remove entries to the current 2.0 and 2.2 section below, when backported] *) core: Do not replace a Date header set by a proxied backend server. PR 40232. [Ruediger Pluem] *) mod_proxy: Ensure that at least scheme://hostname[:port] matches between worker and URL when searching for the best fitting worker for a given URL. PR 40910. [Ruediger Pluem] Loading modules/http/http_filters.c +21 −6 Changes for modules/http/http_filters.c: 21 added lines, 6 removed lines. Original line number Diff line number Diff line Loading @@ -741,16 +741,28 @@ static void basic_http_header(request_rec *r, apr_bucket_brigade *bb, apr_brigade_writev(bb, NULL, NULL, vec, 4); #endif date = apr_palloc(r->pool, APR_RFC822_DATE_LEN); ap_recent_rfc822_date(date, r->request_time); h.pool = r->pool; h.bb = bb; form_header_field(&h, "Date", date); /* keep the set-by-proxy server header, otherwise * generate a new server header */ /* * keep the set-by-proxy server and date headers, otherwise * generate a new server header / date header */ if (r->proxyreq != PROXYREQ_NONE) { const char *proxy_date; proxy_date = apr_table_get(r->headers_out, "Date"); if (!proxy_date) { /* * proxy_date needs to be const. So use date for the creation of * our own Date header and pass it over to proxy_date later to * avoid a compiler warning. */ date = apr_palloc(r->pool, APR_RFC822_DATE_LEN); ap_recent_rfc822_date(date, r->request_time); proxy_date = date; } form_header_field(&h, "Date", proxy_date); server = apr_table_get(r->headers_out, "Server"); if (server) { form_header_field(&h, "Server", server); Loading @@ -759,6 +771,9 @@ static void basic_http_header(request_rec *r, apr_bucket_brigade *bb, } } else { date = apr_palloc(r->pool, APR_RFC822_DATE_LEN); ap_recent_rfc822_date(date, r->request_time); form_header_field(&h, "Date", date); form_header_field(&h, "Server", ap_get_server_banner()); } Loading Loading
CHANGES +3 −0 Changes for CHANGES: 3 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -2,6 +2,9 @@ Changes with Apache 2.3.0 [Remove entries to the current 2.0 and 2.2 section below, when backported] *) core: Do not replace a Date header set by a proxied backend server. PR 40232. [Ruediger Pluem] *) mod_proxy: Ensure that at least scheme://hostname[:port] matches between worker and URL when searching for the best fitting worker for a given URL. PR 40910. [Ruediger Pluem] Loading
modules/http/http_filters.c +21 −6 Changes for modules/http/http_filters.c: 21 added lines, 6 removed lines. Original line number Diff line number Diff line Loading @@ -741,16 +741,28 @@ static void basic_http_header(request_rec *r, apr_bucket_brigade *bb, apr_brigade_writev(bb, NULL, NULL, vec, 4); #endif date = apr_palloc(r->pool, APR_RFC822_DATE_LEN); ap_recent_rfc822_date(date, r->request_time); h.pool = r->pool; h.bb = bb; form_header_field(&h, "Date", date); /* keep the set-by-proxy server header, otherwise * generate a new server header */ /* * keep the set-by-proxy server and date headers, otherwise * generate a new server header / date header */ if (r->proxyreq != PROXYREQ_NONE) { const char *proxy_date; proxy_date = apr_table_get(r->headers_out, "Date"); if (!proxy_date) { /* * proxy_date needs to be const. So use date for the creation of * our own Date header and pass it over to proxy_date later to * avoid a compiler warning. */ date = apr_palloc(r->pool, APR_RFC822_DATE_LEN); ap_recent_rfc822_date(date, r->request_time); proxy_date = date; } form_header_field(&h, "Date", proxy_date); server = apr_table_get(r->headers_out, "Server"); if (server) { form_header_field(&h, "Server", server); Loading @@ -759,6 +771,9 @@ static void basic_http_header(request_rec *r, apr_bucket_brigade *bb, } } else { date = apr_palloc(r->pool, APR_RFC822_DATE_LEN); ap_recent_rfc822_date(date, r->request_time); form_header_field(&h, "Date", date); form_header_field(&h, "Server", ap_get_server_banner()); } Loading