httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stefan Fritsch ...@sfritsch.de>
Subject Re: trunk/2.4 core output filter is broken
Date Tue, 24 Jan 2012 21:08:09 GMT
On Tue, 24 Jan 2012, Joe Orton wrote:

> On Mon, Jan 23, 2012 at 09:39:38PM +0100, Stefan Fritsch wrote:
>> This patch allows us to later add members to core_ctx_t without
>> breaking binary compatibility to mod_ftp. Without such a patch, the
>> size of core_ctx_t is part of the ABI, which is bad.
>>
>> Opinions?
>
> After thinking about it more: the WinNT MPM use of this facility still
> seems unnecessary.  The same effect could be achieved using an input
> filter which returns the extra data from AcceptEx.
>
> Here's a proof of concept for prefork, which prepends "GET" to data
> received from the socket - no core hacks required.  (This is dumb and
> should be more sophisticated, it would need to handle
> AP_MODE_GETBYTES/AP_MODE_GETLINE if possible from the "extra" data
> alone, without always fetching a brigade from the socket)
>
> For mod_ftp the need to replace the socket bucket looks more convincing,
> but still surely a hook calling *out* from the core is better?

I agree that the it is not strictly necessary that WinNT MPM modifies the 
core input filter's brigade. But I don't think that yet another 
implementation of AP_MODE_GETBYTES/AP_MODE_GETLINE would be a superior 
design. I think we should defer this change to after Paul (or someone 
else) has implemented his input filter API redesign proposal from last 
November, which would make input filters more lightweight.

BTW, the reason I didn't make this a hook is trying to be more efficient. 
But the difference may be negligible, it's only called once per 
connection. If you prefer to change it to a hook, please go ahead. I 
won't have time in the next few days.

Mime
View raw message