Homec4science

Move request decoding/streaming to AphrontRequestStream

Authored by epriestley <git@epriestley.com> on Mar 16 2016, 18:43.

Description

Move request decoding/streaming to AphrontRequestStream

Summary:
Ref T10604. This moves the php://input / gzip handling code to a separate class. More input handling responsibility can likely live here in the future.

Ref T10264 for gzip window stuff.

Test Plan:
See next change. Cloned a repository, broswed around, submitted POST data.

The window parameter is still a little magic, but this interpretation appears to work (?) and is supported by the zlib documentation:

windowBits can also be greater than 15 for optional gzip decoding. Add 32 to windowBits to enable zlib and gzip decoding with automatic header detection, or add 16 to decode only the gzip format (the zlib format will return a Z_DATA_ERROR). If a gzip stream is being decoded, strm->adler is a crc32 instead of an adler32.
http://www.zlib.net/manual.html

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T10264, T10604

Differential Revision: https://secure.phabricator.com/D15483

Details

Committed
epriestley <git@epriestley.com>Mar 17 2016, 16:07
Pushed
aubortMar 17 2017, 12:03
Parents
rPHU5f573d2b7f27: Correctly support try..catch..finally in xhpast
Branches
Unknown
Tags
Unknown

Event Timeline

epriestley <git@epriestley.com> committed rPHUa4ca530644be: Move request decoding/streaming to AphrontRequestStream (authored by epriestley <git@epriestley.com>).Mar 17 2016, 16:07