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/12/02 15:38:41 UTC
cvs commit: httpd-2.0/modules/proxy proxy_http.c
jorton 2003/12/02 06:38:41
Modified: . Tag: APACHE_2_0_BRANCH CHANGES STATUS
modules/proxy Tag: APACHE_2_0_BRANCH proxy_http.c
Log:
Backport from HEAD:
* proxy_http.c (ap_proxy_http_process_response): Send a valid
status-line even if the parsed status-line had no trailing spaces.
Remove the warning for this case as triggers for valid status-lines
too.
PR: 23998
Reviewed by: Jeff Trawick, Bill Stoddard
Revision Changes Path
No revision
No revision
1.988.2.187 +3 -0 httpd-2.0/CHANGES
Index: CHANGES
===================================================================
RCS file: /home/cvs/httpd-2.0/CHANGES,v
retrieving revision 1.988.2.186
retrieving revision 1.988.2.187
diff -u -u -r1.988.2.186 -r1.988.2.187
--- CHANGES 2 Dec 2003 14:23:22 -0000 1.988.2.186
+++ CHANGES 2 Dec 2003 14:38:40 -0000 1.988.2.187
@@ -1,5 +1,8 @@
Changes with Apache 2.0.49
+ *) mod_proxy: Fix cases where an invalid status-line could be sent
+ to the client. PR 23998. [Joe Orton]
+
*) mod_ssl: Fix segfaults at startup if other modules which use OpenSSL
are also loaded. [Joe Orton]
1.751.2.570 +1 -10 httpd-2.0/STATUS
Index: STATUS
===================================================================
RCS file: /home/cvs/httpd-2.0/STATUS,v
retrieving revision 1.751.2.569
retrieving revision 1.751.2.570
diff -u -u -r1.751.2.569 -r1.751.2.570
--- STATUS 2 Dec 2003 14:23:23 -0000 1.751.2.569
+++ STATUS 2 Dec 2003 14:38:40 -0000 1.751.2.570
@@ -80,15 +80,6 @@
+1: stoddard
+1 (concept): trawick (looks reasonable when compared with worker)
- * Prevent mod_proxy from sending an invalid status-line to clients
- in some cases.
- modules/proxy/proxy_http.c: r1.172
- +1: jorton, trawick, stoddard
- trawick: whoever merges this please create CHANGES entry in both
- "trees" and reference PR 18573; oops, Joe thought he
- was solving 23998 :) So close the extra one as a dup
- of whichever one gets listed in CHANGES
-
* Fix timezone handling in mod_log_config. PR 23642
modules/loggers/mod_log_config.c: r1.107
+1: jorton, stoddard, trawick
No revision
No revision
1.164.2.4 +9 -7 httpd-2.0/modules/proxy/proxy_http.c
Index: proxy_http.c
===================================================================
RCS file: /home/cvs/httpd-2.0/modules/proxy/proxy_http.c,v
retrieving revision 1.164.2.3
retrieving revision 1.164.2.4
diff -u -u -r1.164.2.3 -r1.164.2.4
--- proxy_http.c 15 Apr 2003 16:36:16 -0000 1.164.2.3
+++ proxy_http.c 2 Dec 2003 14:38:41 -0000 1.164.2.4
@@ -756,16 +756,18 @@
backasswards = 0;
keepchar = buffer[12];
- if (keepchar == '\0') {
- ap_log_error(APLOG_MARK, APLOG_WARNING, 0,
- r->server, "proxy: bad HTTP/%d.%d status line "
- "returned by %s (%s)", major, minor, r->uri,
- r->method);
- }
buffer[12] = '\0';
r->status = atoi(&buffer[9]);
- buffer[12] = keepchar;
+ if (keepchar != '\0') {
+ buffer[12] = keepchar;
+ } else {
+ /* 2616 requires the space in Status-Line; the origin
+ * server may have sent one but ap_rgetline_core will
+ * have stripped it. */
+ buffer[12] = ' ';
+ buffer[13] = '\0';
+ }
r->status_line = apr_pstrdup(p, &buffer[9]);