Tatsuhiro Tsujikawa
a3082b7c1e
Remove nghttp2_on_data_recv_callback and nghttp2_on_data_send_callback
...
nghttp2_data is added to nghttp2_frame union. When DATA is
received, nghttp2_on_frame_recv_callback is called. When DATA is
sent, nghttp2_on_frame_send_callback is called.
2014-01-27 22:16:05 +09:00
Tatsuhiro Tsujikawa
545f24bc1b
Remove nghttp2_on_frame_recv_parse_error_callback
2014-01-26 23:23:07 +09:00
Tatsuhiro Tsujikawa
1f4577adb9
nghttp: Use getaddrnfo directly instead of using evdns_base
...
evdns_base uses /etc/resolve.conf for *nix like systems,
but all platforms don't have the file (e.g., android device).
For such platforms, address resolution fails.
To fix this problem we use getaddrinfo() directly.
2014-01-23 00:29:09 +09:00
Tatsuhiro Tsujikawa
9cd90bcff2
nghttp: Fix host to connect when SSL/TLS is used
2014-01-22 21:55:30 +09:00
Tatsuhiro Tsujikawa
be71e1f11c
nghttp: Update doc
2014-01-21 23:24:13 +09:00
Tatsuhiro Tsujikawa
72aef67cca
nghttp: Replace build-in headers completely with -H option
2014-01-20 21:54:03 +09:00
Tatsuhiro Tsujikawa
dfbea797bd
src: Use static_cast instead of reinterpret_cast if possible
2014-01-19 21:18:37 +09:00
Tatsuhiro Tsujikawa
68b5204f29
src: Set errno = 0 before calling strtol
2014-01-18 15:32:50 +09:00
Tatsuhiro Tsujikawa
0e4b3d435e
Emit header name/value pair using callback functions
...
Now, in nghttp2_on_frame_recv_callback, nva and nvlen in
HEADERS and PUSH_PROMISE frames are always NULL and 0 respectively.
The header name/value pairs are emitted successive
nghttp2_on_header_callback functions. The end of header fields are
signaled with nghttp2_on_end_headers_callback function.
Since NGHTTP2_ERR_PAUSE for nghttp2_on_frame_recv_callback is
introduced to handle header block, it is now deprecated.
Instead, nghttp2_on_header_callback can be paused using
NGHTTP2_ERR_PAUSE.
2014-01-17 01:49:43 +09:00
Tatsuhiro Tsujikawa
8721631287
nghttp: Fix port checking to share connection
2014-01-10 00:59:14 +09:00
Tatsuhiro Tsujikawa
90ea7ba92a
src: Add command-line option guess
2014-01-09 01:27:56 +09:00
Tatsuhiro Tsujikawa
c36ce28f69
src: Call SSL_set_shutdown(ssl, SSL_RECEIVED_SHUTDOWN)
2014-01-08 23:32:47 +09:00
Tatsuhiro Tsujikawa
ecc4290d3d
nghttp: Fix crash on plain HTTP
2014-01-08 02:15:46 +09:00
Tatsuhiro Tsujikawa
78e5149495
src: Support ALPN
...
Requires unreleased OpenSSL >= 1.0.2
2014-01-02 00:15:08 +09:00
Tatsuhiro Tsujikawa
73866124f3
nghttp: Untabify
2013-12-31 11:15:58 +09:00
David Weekly
19e187cd92
More useful warning on NPN negotiation failure due to draft version mismatch
2013-12-31 00:12:21 +00:00
Tatsuhiro Tsujikawa
9cb8754d09
Rename nghttp2_session_fail_session as nghttp2_session_terminate_session
2013-12-26 00:23:07 +09:00
Tatsuhiro Tsujikawa
f8356dd037
nghttp: Use nghttp2_session_fail_session instead of nghttp2_submit_goaway
2013-12-25 00:28:58 +09:00
Tatsuhiro Tsujikawa
53271e1e52
nghttp: Close fd on disconnect
2013-12-22 19:23:01 +09:00
Tatsuhiro Tsujikawa
bb70cdf6ad
src: Rename verbose callback functions
2013-12-20 23:48:56 +09:00
Tatsuhiro Tsujikawa
f4ae707bf2
Revert 0b7b95923e
2013-12-13 21:46:41 +09:00
Tatsuhiro Tsujikawa
0b7b95923e
nghttp: Adjust relative priority with -a
2013-12-11 23:26:55 +09:00
Tatsuhiro Tsujikawa
09ba2e8c78
nghttp: Ensure that all settings can be encoded in settings_payload
2013-12-09 21:12:09 +09:00
Tatsuhiro Tsujikawa
6c77cec270
Remove nghttp2_submit_* API functions which has char **nv parameter
...
The nghttp2_submit_{request,response}2 functions are renamed as
nghttp2_submit_{request, response}.
2013-12-08 21:39:43 +09:00
Tatsuhiro Tsujikawa
baa2272b0a
src: Concatenate header fields with same name by NULL as delimiter
...
cookie and set-cookie are treated specially and won't be concatenated.
2013-12-07 00:32:14 +09:00
Tatsuhiro Tsujikawa
6ea91e57e0
Adjust struct/class alignment
2013-12-06 23:17:38 +09:00
Tatsuhiro Tsujikawa
e596385fc0
src: Split NULL-separated values
2013-12-05 21:54:36 +09:00
Tatsuhiro Tsujikawa
0c669898a4
nghttp: Allow multiple same headers in -H
2013-11-16 21:13:09 +09:00
Tatsuhiro Tsujikawa
2ae788eddd
Replace nghttp2_set_option with nghttp2_session_{client,server}_new2
...
nghttp2_session_client_new2 and nghttp2_session_server_new2 take
additional parameters which specifies session options.
nghttp2_set_option is somewhat crumsy because of type checking.
Now we use nghttp2_opt_set, which specifies individual options with
types. We changed the value of nghttp2_opt, so this change will
require re-compile.
2013-11-08 00:12:39 +09:00
Tatsuhiro Tsujikawa
1835bda02e
nghttp, nghttpd: Add --color option to force colored log output
2013-11-01 23:06:53 +09:00
Tatsuhiro Tsujikawa
535329779c
nghttp: Add --header-table-size option
2013-10-29 21:34:22 +09:00
Tatsuhiro Tsujikawa
dc61f705df
nghttp, nghttpd: Add SETTINGS timeout handling
...
SETTINGS timeout is 10 seconds for now.
2013-10-27 23:02:39 +09:00
Tatsuhiro Tsujikawa
c4ae19e2a0
nghttp, nghttpd: Use :authority and host instead of :host
2013-10-27 16:25:50 +09:00
Tatsuhiro Tsujikawa
896db5b24f
API change: Add flags parameter to all submit_* functions
...
The nghttp2_submit_{request,response} family do not get this change.
2013-10-25 22:50:24 +09:00
Tatsuhiro Tsujikawa
e85418f045
Fix local window size adjustments
...
Now shrinking local window size properly limits the amount of
WINDOW_UPDATE value so that shrinked window is honored.
2013-10-12 17:02:37 +09:00
Tatsuhiro Tsujikawa
2e7edf88bc
nghttp: Add -W option to specify connection level window size bits
2013-10-10 22:04:37 +09:00
Tatsuhiro Tsujikawa
154a0014ef
nghttp: Fix typo in help message
2013-10-10 21:25:53 +09:00
Tatsuhiro Tsujikawa
8e9f08f81d
nghttp: Assign different priority according to the resource type
2013-09-29 18:58:46 +09:00
Tatsuhiro Tsujikawa
0a649e2499
src: Use std::chrono instead of gettimeofday and clock_gettime
2013-09-16 17:36:24 +09:00
Tatsuhiro Tsujikawa
04457aae62
nghttp: Code cleanup
2013-09-16 16:54:11 +09:00
Tatsuhiro Tsujikawa
e2ff41c44c
nghttp: Use -M as short option for --peer-max-concurrent-streams
2013-09-16 16:44:13 +09:00
Tatsuhiro Tsujikawa
99ba622fed
Add NGHTTP2_OPT_PEER_MAX_CONCURRENT_STREAMS option
...
And utilize it in nghttp to limit initial max concurrent streams.
2013-09-14 19:41:49 +09:00
Tatsuhiro Tsujikawa
b7e1701f06
nghttp: Fix nghttp2_pack_settings_payload use
2013-09-09 21:25:46 +09:00
Tatsuhiro Tsujikawa
1a05caf847
src: Use util::utos instead of std::to_string
...
Some platform (e.g., freebsd) does not define _GLIBCXX_USE_C99
and it hides std::to_string functions.
2013-09-08 14:29:18 +09:00
Tatsuhiro Tsujikawa
c751a6e935
Fix cosmetic errors
2013-09-07 16:38:21 +09:00
Tatsuhiro Tsujikawa
92a6549f78
nghttp: Initialize flag to 0
2013-09-07 01:46:20 +09:00
Tatsuhiro Tsujikawa
bb7361cd9b
nghttp: Code cleanup
2013-09-06 00:18:43 +09:00
Tatsuhiro Tsujikawa
dd4151330e
nghttp: Use before_frame_send_callback to check stream_id
2013-09-03 21:27:33 +09:00
Tatsuhiro Tsujikawa
d960cf8953
Add const to read-only nghttp2_frame* parameter in callbacks
2013-09-03 21:24:14 +09:00
Tatsuhiro Tsujikawa
e818d098ec
nghttp: Fix off-by-one error when allocating space for request headers
2013-08-30 21:30:04 +09:00
Tatsuhiro Tsujikawa
81653c1d1b
Add int return value to nghttp2_on_stream_close_callback
2013-08-29 22:58:05 +09:00
Tatsuhiro Tsujikawa
d4852b0f11
Add int return value to on_frame_send_callback
2013-08-29 21:48:34 +09:00
Tatsuhiro Tsujikawa
972b47d6af
Add int return value to nghttp2_on_data_chunk_recv_callback
2013-08-29 21:39:32 +09:00
Tatsuhiro Tsujikawa
a59cd3be82
Add int return value to nghttp2_on_frame_recv_callback
2013-08-29 21:33:52 +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
3e1aad60b7
nghttp: Remove --no-tls option and detect TLS requirement using URI scheme
2013-08-12 22:33:51 +09:00
Tatsuhiro Tsujikawa
fadbdbae0b
nghttp: Add -p option to specify stream priority
2013-08-04 18:55:26 +09:00
Tatsuhiro Tsujikawa
690349009d
nghttp: Call on_read() to process all data in buffer after upgrade succeeded
2013-08-04 18:43:10 +09:00
Tatsuhiro Tsujikawa
f613f68a13
src: Make window size - 1
...
To match the -w16 to 65535, which is HTTP/2.0 default initial window
size, decrement 1 from (1 << window_bits).
2013-08-03 19:53:07 +09:00
Tatsuhiro Tsujikawa
079f867d68
nghttp: Ignore -u if --no-tls is not given
2013-08-03 19:08:52 +09:00
Tatsuhiro Tsujikawa
f620655d08
nghttp, nghttpx: Add HTTP Upgrade from HTTP/1.1 to HTTP/2.0
...
nghttpx does not perform upgrade if the request has request body.
2013-08-03 18:51:01 +09:00
Tatsuhiro Tsujikawa
fec566aa23
src: Send out data in output buffer before HTTP2/SPDY session tear down
2013-08-01 20:31:29 +09:00
Tatsuhiro Tsujikawa
56db10cb5e
nghttp: Add -F and -f option to disable connection/stream level flow controls
2013-07-28 19:29:11 +09:00
Tatsuhiro Tsujikawa
3cc71a707e
Rename nghttp2_headers_category members
...
Add NGHTTP2_HCAT_PUSH_RESPONSE
2013-07-25 20:57:50 +09:00
Tatsuhiro Tsujikawa
42ff5b5c04
Rename nghttp2_ssl as app_helper
2013-07-22 22:12:54 +09:00
Tatsuhiro Tsujikawa
ec79d70bd0
Code cleanup
2013-07-22 22:08:52 +09:00
Tatsuhiro Tsujikawa
9e9a7fb160
Add nghttpd and 24 bytes client connection header support
2013-07-22 21:56:19 +09:00
Tatsuhiro Tsujikawa
6bc7e7bd0b
Add nghttp client backed by libevent
2013-07-22 00:01:33 +09:00