httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "William A. Rowe, Jr." <>
Subject Re: [PATCH] don't crash with per-dir (location) rewrite config and NULL r->filename
Date Fri, 10 Sep 2004 14:01:48 GMT
At 05:24 AM 9/10/2004, Jeff Trawick wrote:
>On Fri, 10 Sep 2004 09:34:14 +0200, jean-frederic clere
><> wrote:
>> Jeff Trawick wrote:
>> > See attached patch.  Given a module with map-to-storage hook which
>> > leaves r->filename NULL, and config like the following, you get
>> > segfault on platforms that don't like strlen(NULL).
>> >
>> > <Location /silly/foo>
>> > RewriteEngine On
>> > RewriteCond %{SERVER_PORT} ^8080$
>> > RewriteRule (.*) https://%{SERVER_NAME}%{REQUEST_URI}
>> > </Location>
>> >
>> > /silly is handled by a module which implements a map-to-storage hook
>> > and leaves r->filename NULL

That's fine - why aren't we detecting that this is a proxy request,
and dropping out at proxy's map-to-storage hook???

>> Why not returning DECLINED when r->filename is NULL?

+1, this would be much kinder behavior than a segfault.

>The Location container takes effect even though r->filename is NULL
>(there is no file representing the request), so I want the rewriterule
>to be able to perform the redirection.

But that means the module must implement map_to_storage quicker than
AP_HOOK_LAST, so this flavor of request is caught.

I have one alternative interpretation for httpd-2.1-dev.  The other
possibility is to return OK from dir_walk.  However, mark the request
record as not-servable by the core handler.  If the core handler gets 
this request, it dies.

The problem I see is, how to determine it won't be served prior to
the run request hook (in the request setup phases)?



View raw message