Page MenuHomePhabricator

Move request decoding/streaming to AphrontRequestStream
ClosedPublic

Authored by epriestley on Mar 16 2016, 5:51 PM.
Tags
None
Referenced Files
F13081228: D15483.id37329.diff
Wed, Apr 24, 4:23 PM
Unknown Object (File)
Mon, Apr 22, 10:50 PM
Unknown Object (File)
Fri, Apr 19, 4:19 PM
Unknown Object (File)
Sun, Mar 31, 7:13 AM
Unknown Object (File)
Mar 20 2024, 10:31 PM
Unknown Object (File)
Mar 5 2024, 7:06 PM
Unknown Object (File)
Mar 5 2024, 7:06 PM
Unknown Object (File)
Mar 5 2024, 7:06 PM
Subscribers
None

Details

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

Diff Detail

Repository
rPHU libphutil
Branch
lfs9
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 11176
Build 13862: Run Core Tests
Build 13861: arc lint + arc unit