nghttp2/tests
Tatsuhiro Tsujikawa eec8870ac1 Fix bug that client may send PROTOCOL_ERROR upon canceled push stream
Previously we treat stream in NGHTTP2_STREAM_RESERVED state specially,
that is we don't increment or decrement streams counts if stream is in
that state.  Because of this, we don't change the stream state to
NGHTTP2_STREAM_CLOSING if stream is in NGHTTP2_STREAM_RESERVED.  But
it turns out that it causes a problem.  If client canceled pushed
stream before push response HEADERS, stream is still in
NGHTTP2_STREAM_RESERVED state.  If push response HEADERS arrived in
this state, library happily accepts it and passed to application.

With this commit, this bug was corrected.  We now change stream state
to NGHTTP2_STREAM_CLOSING even if it was in NGHTTP2_STREAM_RESERVED
state.  We now use NGHTTP2_STREAM_FLAG_PUSH to determine whether we
have to increase/decrase stream count.
2015-02-09 22:23:20 +09:00
..
testdata Replace HTTP/2.0 with HTTP/2 2014-03-30 19:26:37 +09:00
.gitignore Update .gitignore 2013-11-04 18:39:48 +09:00
Makefile.am Use _LDADD to specify libraries instead of _LDFLAGS 2015-01-25 00:58:30 +09:00
end_to_end.py Move spdycat, spdyd and shrpx from examples to src 2012-09-10 21:39:51 +09:00
failmalloc.c failmalloc: Use nghttp2_mem instead of using dlsym 2014-12-20 23:56:33 +09:00
failmalloc_test.c failmalloc: Use nghttp2_mem instead of using dlsym 2014-12-20 23:56:33 +09:00
failmalloc_test.h tests: Add failmalloc HPACK test 2014-05-10 21:14:25 +09:00
main.c Fix bug that client may send PROTOCOL_ERROR upon canceled push stream 2015-02-09 22:23:20 +09:00
malloc_wrapper.c failmalloc: Use nghttp2_mem instead of using dlsym 2014-12-20 23:56:33 +09:00
malloc_wrapper.h failmalloc: Use nghttp2_mem instead of using dlsym 2014-12-20 23:56:33 +09:00
nghttp2_buf_test.c Support custom memory allocator 2014-12-08 00:55:55 +09:00
nghttp2_buf_test.h Remove unused functions 2014-10-30 23:31:36 +09:00
nghttp2_frame_test.c Support custom memory allocator 2014-12-08 00:55:55 +09:00
nghttp2_frame_test.h Remove altsvc 2014-12-07 23:11:54 +09:00
nghttp2_hd_test.c Make huffman encoding faster 2014-12-19 23:22:55 +09:00
nghttp2_hd_test.h Make huffman encoding faster 2014-12-19 23:22:55 +09:00
nghttp2_helper_test.c Reformat lines with clang-format-3.5 2014-11-27 23:56:30 +09:00
nghttp2_helper_test.h Replace HTTP/2.0 with HTTP/2 2014-03-30 19:26:37 +09:00
nghttp2_map_test.c Support custom memory allocator 2014-12-08 00:55:55 +09:00
nghttp2_map_test.h Replace HTTP/2.0 with HTTP/2 2014-03-30 19:26:37 +09:00
nghttp2_npn_test.c Reformat lines with clang-format-3.5 2014-11-27 23:56:30 +09:00
nghttp2_npn_test.h Replace HTTP/2.0 with HTTP/2 2014-03-30 19:26:37 +09:00
nghttp2_pq_test.c Support custom memory allocator 2014-12-08 00:55:55 +09:00
nghttp2_pq_test.h Replace HTTP/2.0 with HTTP/2 2014-03-30 19:26:37 +09:00
nghttp2_queue_test.c Reformat lines with clang-format-3.5 2014-11-27 23:56:30 +09:00
nghttp2_queue_test.h Replace HTTP/2.0 with HTTP/2 2014-03-30 19:26:37 +09:00
nghttp2_session_test.c Fix bug that client may send PROTOCOL_ERROR upon canceled push stream 2015-02-09 22:23:20 +09:00
nghttp2_session_test.h Fix bug that client may send PROTOCOL_ERROR upon canceled push stream 2015-02-09 22:23:20 +09:00
nghttp2_stream_test.c Replace HTTP/2.0 with HTTP/2 2014-03-30 19:26:37 +09:00
nghttp2_stream_test.h Replace HTTP/2.0 with HTTP/2 2014-03-30 19:26:37 +09:00
nghttp2_test_helper.c Support custom memory allocator 2014-12-08 00:55:55 +09:00
nghttp2_test_helper.h Reformat lines with clang-format-3.5 2014-11-27 23:56:30 +09:00