Tatsuhiro Tsujikawa
b182179aca
Check frame length strictly for GOAWAY, RST_STREAM and PING.
2012-02-18 21:51:57 +09:00
Tatsuhiro Tsujikawa
122c619260
Fixed spdylay_frame_count_nv_space() bug. Check all data is processed in spdylay_frame_count_unpack_nv_space()
2012-02-18 17:25:13 +09:00
Tatsuhiro Tsujikawa
ac1629e61b
Reuse buffers when unpacking frames.
2012-02-16 22:01:34 +09:00
Tatsuhiro Tsujikawa
050f33e8f9
Reuse buffers when packing frames.
...
Temporal name/value buffer will be shared by unpacking frame.
2012-02-16 20:54:30 +09:00
Tatsuhiro Tsujikawa
85ec883d11
Lower-case names in name/value pairs in spdylay_submit_{request, response}
2012-02-15 23:54:42 +09:00
Tatsuhiro Tsujikawa
c1aefb3ba5
Added flags argument to spdylay_submit_data() and spdylay_frame_data_init().
...
The intention is make spdylay_submit_data() more generic, allowing trailing
DATA and/or HEADERS frames.
2012-02-15 23:02:51 +09:00
Tatsuhiro Tsujikawa
d4c5f39cf9
Don't check multiple in-sequence NULL in spdylay_frame_count_unpack_nv_space
...
If we return negative error code in that function, it means frame will not
unpacked and ends up to lose any information the frame contains.
The spec says it should send RST_STREAM with PROTOCOL_ERROR, so we need
at least stream ID.
Therefore, the check should be performed in
spdylay_session_on_syn_stream_received().
2012-02-05 21:57:55 +09:00
Tatsuhiro Tsujikawa
8b20e83652
Rewritten spdylay_frame_unpack_nv().
...
We use just single buffer to store name/value headers fields, instead of
allocating memory for each name/value strings.
It is now more than 2 times faster than old one.
2012-02-04 23:09:03 +09:00
Tatsuhiro Tsujikawa
24eb3a3b36
SETTINGS ID is little endian in wire format despite the fact that spec/2 says it is network byte order.
2012-02-01 01:13:17 +09:00
Tatsuhiro Tsujikawa
0b75800c23
Added SETTINGS frame and its pack/unpack functions.
2012-02-01 00:26:26 +09:00
Tatsuhiro Tsujikawa
aed626bfa5
Added GOAWAY handling
2012-01-28 19:22:38 +09:00
Tatsuhiro Tsujikawa
b35f019811
Added callback functions for DATA frames. Fixed unpacking length field.
2012-01-28 03:54:53 +09:00
Tatsuhiro Tsujikawa
de57b6efea
Sort nv in spdylay_submit_request and spdylay_submit_response
2012-01-28 00:09:01 +09:00
Tatsuhiro Tsujikawa
9461147968
Added pack/unpack of PING
2012-01-27 19:35:05 +09:00
Tatsuhiro Tsujikawa
74673013ae
Define constant for nv pair offset. Defined SPDYLAY_PROTO_VERSION.
2012-01-27 18:28:29 +09:00
Tatsuhiro Tsujikawa
1c0ec66a2b
Added HEADERS frame. Added SPDYLAY_FRAME_HEAD_LENGTH.
2012-01-27 18:21:14 +09:00
Tatsuhiro Tsujikawa
83b4e245d9
Removed debug output
2012-01-27 17:47:39 +09:00
Tatsuhiro Tsujikawa
21e165f1f8
Added spdylay_reply_submit() and DATA frame handling after SYN_REPLY.
2012-01-27 01:17:40 +09:00
Tatsuhiro Tsujikawa
6629f35a94
Define mask for fields
2012-01-25 21:35:48 +09:00
Tatsuhiro Tsujikawa
3bfe48972c
Queue RST_STREAM if invalid stream ID is received in SYN_STREAM or SYN_REPLY.
...
Fixed bug that Z_DATA_ERROR is not handled.
Fixed bug that spdylay_frame_alloc_pack_nv does not use nv_offset correctly.
2012-01-25 21:31:28 +09:00
Tatsuhiro Tsujikawa
9c8270436f
Added header deflate/inflate using zlib. Added send/recv frame.
2012-01-24 22:02:24 +09:00