- 14 Sep, 2014 1 commit
-
-
Tatsuhiro Tsujikawa authored
Android does not have _Exit. We detect this and use _exit instead. clang-3.4 has an issue around undefined reference to __atomic_fetch_add_4, so we stick to gcc-4.8 for now.
-
- 13 Sep, 2014 2 commits
-
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
By default, nghttp2 library only handles HTTP/2 frames and does not recognize first 24 bytes of client connection preface. This design choice is done due to the fact that server may want to detect the application protocol based on first few bytes on clear text communication. But for simple servers which only speak HTTP/2, it is easier for developers if nghttp2 library takes care of client connection preface. If this option is used with nonzero val, nghttp2 library checks first 24 bytes client connection preface. If it is not a valid one, nghttp2_session_recv() and nghttp2_session_mem_recv() will return error NGHTTP2_ERR_BAD_PREFACE, which is fatal error.
-
- 10 Sep, 2014 3 commits
-
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
-
- 01 Sep, 2014 1 commit
-
-
Tatsuhiro Tsujikawa authored
-
- 29 Aug, 2014 4 commits
-
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
-
- 28 Aug, 2014 3 commits
-
-
Tatsuhiro Tsujikawa authored
SETTINGS_MAX_FRAME_SIZE and SETTINGS_MAX_HEADER_LIST_SIZE are 2 missing SETTINGS IDs and now they are shown correctly.
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
Currently reserved bit is always set to 0. The addition of reserved bit is for future extension.
-
- 27 Aug, 2014 7 commits
-
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
Contributed by G. Vanem
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
Previously we empties request headers after they are sent to downstream in order to free memory. But it turns out that we use request headers when rewriting location header response field. Also user reported that request headers are useful to add new features. This commits defers the deletion of request headers to the point when response headers are deleted (which is after response headers are sent to upstream client).
-
- 26 Aug, 2014 2 commits
-
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
Even after on_stream_close_callback, Http2DownstreamConnection is still alive and upstream keeps sending response to the client. The consumed bytes are processed normally (data_source_read_callback) and also we have a code to consume all allocated bytes for Http2DownstreamConnection object when it is deleted. This means that we don't need to and should not consume response data in downstream on_stream_close_callback. If we do, we may get assertion error in Http2DownstreamConnection::resume_read().
-
- 25 Aug, 2014 17 commits
-
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
This commit adds test to submit DATA frame twice and fixes the bug that 2nd DATA is not sent.
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
Added test for this crash.
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
This commit moves frame_type parameter of nghttp2_data_soruce_read_length_callback in front of stream_id parameter. The motivation is that other callback is generally put frame related parameters first. To make it consistent, we move frame_type, which is frame ralted parameter, to the left.
-
Tatsuhiro Tsujikawa authored
Previously we always call on_frame_send_callback before calling nghttp2_stream_detach_data() after sending DATA frame. As a result, even if DATA frame has END_STREAM, application cannot call nghttp2_submit_data() in on_frame_send_callback because previous data is still attached. This commit makes a change so that nghttp2_stream_detach_data() is called before on_frame_send_callback so that application can issue nghttp2_submit_data() in the callback.
-
Tatsuhiro Tsujikawa authored
Now it returns only stream's available remote window size, without considering connection level window size. For connection-level window size, nghttp2_session_get_remote_window_size() is added by this commit. To get old behavior of nghttp2_session_get_stream_remote_window_size() is use min(nghttp2_session_get_stream_remote_window_size(), nghttp2_session_get_remote_window_size()). The reason of this change is that it is desirable to know just stream level window size without taking into connection level window size. This is useful for debugging purpose.
-
Tatsuhiro Tsujikawa authored
Also edited its documentation to make hyperlink works.
-
Tatsuhiro Tsujikawa authored
nghttp2_on_begin_frame_callback will be invoked when a frame header is received.
-
Tatsuhiro Tsujikawa authored
-
Tatsuhiro Tsujikawa authored
It is not used by library for a while. It could be used to pass unsupported extension frames to application, but its interface requires library to buffer entire frame, which we'd like to avoid. For unsupported extension frames, we will add new callbacks which does not require buffering if they are required.
-
Tatsuhiro Tsujikawa authored
h2-14 now allows extensions to define new error codes. To allow application callback to access such error codes, we uses uint32_t as error_code type for structs and function parameters. Previously we treated unknown error code as INTERNAL_ERROR, but this change removes this and unknown error code is passed to application callback as is.
-
Tatsuhiro Tsujikawa authored
To make it possible to add new callbacks without bumping so name, we decided to hide details of nghttp2_session_callbacks. We provide setter like functions to set individual callback function.
-
Tatsuhiro Tsujikawa authored
-
https://github.com/akamai/nghttp2Tatsuhiro Tsujikawa authored
Merge branch 'window_size_control' of https://github.com/akamai/nghttp2 into akamai-window_size_control
-