Tatsuhiro Tsujikawa
5c6ef84b97
Use COMPRESSION_ERROR if the cause of error comes from compressor
2013-08-28 23:32:37 +09:00
Tatsuhiro Tsujikawa
83b0c89e3c
Handle indexing entry greater than header table limit without error
2013-08-28 23:16:23 +09:00
Tatsuhiro Tsujikawa
4fe056d208
nghttp2_hd.c: Use rv != 0 instead of rv < 0
2013-08-28 21:35:18 +09:00
Tatsuhiro Tsujikawa
f0ef6e980f
Refactor nghttp2_hd_inflate_hd
2013-08-28 21:33:57 +09:00
Tatsuhiro Tsujikawa
400615ca35
nghttpd: Check disallowed headers
2013-08-28 03:14:19 +09:00
Tatsuhiro Tsujikawa
3544bfdbef
src: Move pure HTTP code from shrpx_http.cc to http2.cc
2013-08-28 02:47:22 +09:00
Tatsuhiro Tsujikawa
b37f99ca03
Connection error if payload size is strictly greater than (1 << 14) - 1
...
It would be desired to add option to make this limit configurable.
Fix scripted_recv_callback in tests.
2013-08-28 02:13:57 +09:00
Tatsuhiro Tsujikawa
1f3b96e233
nghttpx: Rewrite header handling
2013-08-28 00:09:46 +09:00
Tatsuhiro Tsujikawa
89cd2ff479
nghttpx: Stream error if disallowed header field in HTTP2 is received
2013-08-26 01:25:31 +09:00
Tatsuhiro Tsujikawa
33743ab832
nghttpx: Remove banned header fields in HTTP2 request and response
2013-08-26 01:09:15 +09:00
Tatsuhiro Tsujikawa
4744e90054
nghttpd: Include status code only in :status header field
2013-08-26 00:58:06 +09:00
Tatsuhiro Tsujikawa
4fb1811d18
nghttpx: Include status code only in :status header field in HTTP2 response
2013-08-25 23:28:34 +09:00
Tatsuhiro Tsujikawa
5d7b7a1691
nghttpx: Stream error if mandatory HTTP/2 request header field is missing
2013-08-25 23:21:07 +09:00
Tatsuhiro Tsujikawa
39611f6f7f
Update README.rst
2013-08-25 22:04:54 +09:00
Tatsuhiro Tsujikawa
82b9f78fc7
Check incoming header field name strictly
...
The validation rule is described in
http://tools.ietf.org/html/draft-ietf-httpbis-header-compression-02#section-4.1.2
2013-08-25 17:39:29 +09:00
Tatsuhiro Tsujikawa
556212a602
nghttpx: Replace \r\n in the header field to SPC in http downstream
2013-08-24 23:27:45 +09:00
Tatsuhiro Tsujikawa
091f38a99d
Revise common header processing
...
Instead of emitting common headers on decoder side, encoder
now keeps track of removed common headers and encode it
as necessary.
2013-08-24 22:58:26 +09:00
Tatsuhiro Tsujikawa
2d41c99289
Connection error if header continuation is employed by peer for now
2013-08-24 19:28:57 +09:00
Tatsuhiro Tsujikawa
e55abcd634
nghttpx: Fix stream hang when http2 downstream CONNECT failed
2013-08-24 01:43:05 +09:00
Tatsuhiro Tsujikawa
005e60a5ed
Rework header compression
2013-08-23 23:38:28 +09:00
Tatsuhiro Tsujikawa
c4f6e069ac
Update README.rst
2013-08-23 03:45:55 +09:00
Tatsuhiro Tsujikawa
93e5b9e562
Fix bug common header disappear if it is evicted
2013-08-23 03:45:26 +09:00
Tatsuhiro Tsujikawa
346fafde3f
Implement draft-ietf-httpbis-header-compression-02
2013-08-23 03:33:05 +09:00
Tatsuhiro Tsujikawa
0b005e3f22
Change the value of END_PUSH_PROMISE flag as per the spec
2013-08-23 03:33:05 +09:00
Tatsuhiro Tsujikawa
d154faa9ab
Set protocol version draft-06
2013-08-23 03:33:05 +09:00
Tatsuhiro Tsujikawa
2764c55678
src: Code cleanup
2013-08-23 03:33:05 +09:00
Tatsuhiro Tsujikawa
30d3ea7c93
Use old C style comment
2013-08-23 03:33:05 +09:00
Tatsuhiro Tsujikawa
35229b250f
Treat reception of DATA in reserved stream as connection error
2013-08-23 03:33:05 +09:00
Tatsuhiro Tsujikawa
5ae8605883
src: Use std::thread
2013-08-23 03:33:05 +09:00
Tatsuhiro Tsujikawa
da384988cd
Add test for WINDOW_UPDATE against reserved
2013-08-23 03:33:05 +09:00
Tatsuhiro Tsujikawa
618a1e0782
Update doc
2013-08-23 03:33:05 +09:00
Tatsuhiro Tsujikawa
e278efdf38
Strict handling of connection error
...
Following cases are now treated as connection error of type
PROTOCOL_ERROR.
* Receiving HEADERS from client in reserved (local)
* Receiving PUSH_PROMISE against peer-initiated stream
* Receiving WINDOW_UPDATE against in reserved (local, remote)
2013-08-23 03:33:05 +09:00
Tatsuhiro Tsujikawa
47ee8e3c79
src: Code cleanup
2013-08-23 03:33:05 +09:00
Tatsuhiro Tsujikawa
0c9703fa2c
Remove NGHTTP2_FLAG_END_FLOW_CONTROL
2013-08-23 03:33:05 +09:00
Tatsuhiro Tsujikawa
f222403970
Update doc
2013-08-23 03:33:05 +09:00
Tatsuhiro Tsujikawa
b1ae1c30d8
Allow duplicate settings ID in SETTINGS
...
If multiple same ID are found, use the last one.
2013-08-23 03:33:05 +09:00
Tatsuhiro Tsujikawa
c38c6cdd09
nghttpx: Fix bug writecb is nullptr for HTTP/1 connection
2013-08-23 03:32:26 +09:00
Tatsuhiro Tsujikawa
b2a34c2e5b
nghttpx: Fix bug content-length is removed
2013-08-23 02:49:21 +09:00
Tatsuhiro Tsujikawa
358d12a842
nghttpx: Fix bug CONNECT does not work
2013-08-22 21:28:27 +09:00
Tatsuhiro Tsujikawa
b8a01f5212
nghttpx: Require content-length in HTTP2 upstream if END_STREAM flag is not set
2013-08-21 01:19:16 +09:00
Tatsuhiro Tsujikawa
823bb6c35e
nghttpx: Require content-length in SPDY upstream if FIN flag is not set
2013-08-21 01:05:06 +09:00
Tatsuhiro Tsujikawa
591f73e043
Return error if nghttp2_gzip_inflate is invoked after Z_STREAM_END
2013-08-21 01:03:24 +09:00
Tatsuhiro Tsujikawa
4d51def65f
nghttpx: Limit read rate on upstream-end
2013-08-21 01:00:55 +09:00
Tatsuhiro Tsujikawa
aa9688b459
nghttpx: Fix possible multiple replies on HTTP2 and SPDY upstreams
2013-08-21 00:56:08 +09:00
Tatsuhiro Tsujikawa
407027452c
Update doc
2013-08-17 22:34:57 +09:00
Tatsuhiro Tsujikawa
ef6ccc0d74
Update .gitignore
2013-08-15 10:41:22 +09:00
Tatsuhiro Tsujikawa
6e314955e5
Use network-path reference when importing font
2013-08-15 10:39:25 +09:00
Tatsuhiro Tsujikawa
ca9b4d45de
Update README.rst
2013-08-12 22:35:44 +09:00
Tatsuhiro Tsujikawa
3e1aad60b7
nghttp: Remove --no-tls option and detect TLS requirement using URI scheme
2013-08-12 22:33:51 +09:00
Tatsuhiro Tsujikawa
4fac4eb92d
nghttpx: HttpUpstream: Check required request headers strictly
...
If multiple required headers (e.g., :path) found, return HTTP 400
error.
Fix util::strieq(a,b,n) where boundary of b is not checked in the
loop.
2013-08-11 00:08:44 +09:00