>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. ]



Reply via email to