Page MenuHomePhabricator

Move request decoding/streaming to AphrontRequestStream
ClosedPublic

Authored by epriestley on Mar 16 2016, 5:51 PM.
Tags
None
Referenced Files
F14079253: D15483.diff
Fri, Nov 22, 7:24 AM
Unknown Object (File)
Tue, Nov 19, 12:55 AM
Unknown Object (File)
Fri, Nov 15, 4:05 AM
Unknown Object (File)
Wed, Nov 13, 12:17 AM
Unknown Object (File)
Tue, Nov 12, 5:38 PM
Unknown Object (File)
Mon, Nov 11, 5:42 AM
Unknown Object (File)
Thu, Nov 7, 2:47 AM
Unknown Object (File)
Oct 20 2024, 5:31 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