httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ruediger Pluem <>
Subject Re:
Date Wed, 15 Nov 2006 20:33:07 GMT

On 11/15/2006 03:24 PM, Nick Kew wrote:
> I've been trying to review the mod_deflate updates.

Thanks for doing so. I really appreciate this.

> The deflate filter stuff looks good.  But I'm confused by the
> validation buffer usage in the input filter.  You only allocate
> a validation buffer at line 1177 (STREAM_END), yet you test
> it at line 1134: presumably that'll only ever test positive
> on a subsequent call.  Shouldn't the block around 1134 be
> brought to the top of the function, so it catches the case
> of a last brigade containing only an EOS?

No. If the last brigade does only contain an EOS bucket and the validation buffer
is still incomplete it does mean that the validation data for the whole stream
is incomplete.
If we hit an EOS bucket all validation data must be available.
Keep in mind that we process validation data for ourselves. We
do not have to push this data through the inflate function and
have it inflate to the ctx->buffer. We read it directly from the bucket.
I hope this make things more clear. If not, please do not hesitate to ask me
until I see an error or explained it clearly :-).

Because of your question I had to rewalk the code path and I think
I found two other bugs with my code. I fixed them on trunk:

It would be nice if you could give me a short feedback on them.
If you agree with them I would incorporate them in the backport



View raw message