Author: glen Date: Mon Feb 16 17:55:17 2009 GMT Module: SOURCES Tag: HEAD ---- Log message: - fix outrun of buffer when Host: header contained :port in ipv4 requests src/main/http_vhos...@fix_hostname(), bug introduced in r1.6 (4 years, 9 months ago) thx patrys for helping debugging this. as a result time to time 400 responses were given with "Client sent malformed Host header" in error log, depending what was in memory left from previous request.
---- Files affected: SOURCES: apache1-ipv6-PLD.patch (1.14 -> 1.15) ---- Diffs: ================================================================ Index: SOURCES/apache1-ipv6-PLD.patch diff -u SOURCES/apache1-ipv6-PLD.patch:1.14 SOURCES/apache1-ipv6-PLD.patch:1.15 --- SOURCES/apache1-ipv6-PLD.patch:1.14 Mon Feb 16 18:32:36 2009 +++ SOURCES/apache1-ipv6-PLD.patch Mon Feb 16 18:55:11 2009 @@ -2210,7 +2210,7 @@ s->server_hostname = ap_pstrdup(p, "bogus_host_without_reverse_dns"); } -@@ -664,45 +829,80 @@ +@@ -664,45 +829,81 @@ const char *src; char *dst; const char *port_str; @@ -2308,6 +2308,7 @@ + } + r->parsed_uri.port_str = ap_pstrdup(r->pool, port_str); + r->parsed_uri.port = iport; ++ break; } - r->parsed_uri.port_str = ap_pstrdup(r->pool, port_str); - r->parsed_uri.port = iport; @@ -2319,7 +2320,7 @@ } /* strip trailing gubbins */ if (dst > host && dst[-1] == '.') { -@@ -717,7 +917,7 @@ +@@ -717,7 +918,7 @@ bad: r->status = HTTP_BAD_REQUEST; ap_log_rerror(APLOG_MARK, APLOG_NOERRNO|APLOG_ERR, r, @@ -2328,7 +2329,7 @@ return; } -@@ -820,11 +1020,25 @@ +@@ -820,11 +1021,25 @@ * names we'll match have ports associated with them */ const char *host = r->hostname; @@ -2355,7 +2356,7 @@ last_s = NULL; /* Recall that the name_chain is a list of server_addr_recs, some of -@@ -879,7 +1093,22 @@ +@@ -879,7 +1094,22 @@ server_rec *s; server_rec *last_s; name_chain *src; @@ -2379,7 +2380,7 @@ /* * This is in conjunction with the ServerPath code in http_core, so we -@@ -939,10 +1168,22 @@ +@@ -939,10 +1169,22 @@ API_EXPORT(void) ap_update_vhost_given_ip(conn_rec *conn) { ipaddr_chain *trav; @@ -2404,7 +2405,7 @@ if (trav) { /* save the name_chain for later in case this is a name-vhost */ conn->vhost_lookup_data = trav->names; -@@ -960,6 +1201,7 @@ +@@ -960,6 +1202,7 @@ return; } ================================================================ ---- CVS-web: http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/apache1-ipv6-PLD.patch?r1=1.14&r2=1.15&f=u _______________________________________________ pld-cvs-commit mailing list pld-cvs-commit@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit