>Number: 1889 >Category: mod_proxy >Synopsis: Incorrect parsing of full URI causes proxy requests to fail >Confidential: no >Severity: serious >Priority: medium >Responsible: apache >State: open >Class: sw-bug >Submitter-Id: apache >Arrival-Date: Sat Feb 28 14:50:01 PST 1998 >Last-Modified: >Originator: [EMAIL PROTECTED] >Organization: apache >Release: 1.3b5 >Environment: Windows 95, 4.00.950B Microsoft Visual C++ 4.0 >Description: I have compiled the proxy module into apachecore.dll, because Windows 95 is still unable to load the proxy module dll at runtime.
Whenever a proxy request is made, the server responds "BAD REQUEST - Your browser sent a request that this server could not understand." >How-To-Repeat: Any URL will do, eg. http://www.apache.org/ Start apache as a caching proxy server, then set a browser to use it as a proxy. (I have tried Opera 3 and Netscape 4.04) You should get a "BAD REQUEST" error page. >Fix: The problem appears to have been caused by a change in http_protocol.c, between 1.3b3 and 1.3b5. The function concerned is 'check_fulluri'. When the function attempts to find the hostname in the URI, it copies the leading '://' into 'name', as well as the hostname. The function then thinks that the hostname is ':'. TO FIX: replace the line name = pstrdup(r->pool, uri + plen); with this line name = pstrdup(r->pool, uri + plen + 3); %0 >Audit-Trail: >Unformatted: [In order for any reply to be added to the PR database, ] [you need to include <[EMAIL PROTECTED]> in the Cc line ] [and leave the subject line UNCHANGED. This is not done] [automatically because of the potential for mail loops. ]
