Tatsuhiro Tsujikawa
f945653ba9
integration: Add tests for the case where response ends before request
...
This commit also fixes the rare issue that connection is not made
properly because of race between nghttpx process and TCP client
connection.
2016-06-23 22:21:12 +09:00
Tatsuhiro Tsujikawa
fdc27c9f0e
Specify 1 for 2nd parameter of fwrite as a convention
2016-06-22 23:29:09 +09:00
Tatsuhiro Tsujikawa
3aa0ebbbd6
Revert "Robust handling for ssize_t on Win32 platform"
...
This reverts commit c42296acf1
.
2016-06-22 21:29:34 +09:00
Tatsuhiro Tsujikawa
aa16412850
nghttpx: Add --backend-max-backoff option
2016-06-22 00:13:43 +09:00
Tatsuhiro Tsujikawa
e2bdf1d734
nghttpx: Enforce the fact that api and healthmon are mutually exclusive
2016-06-21 22:44:26 +09:00
Tatsuhiro Tsujikawa
4aa79763be
Clarify code path when appending inflight_settings
2016-06-21 22:32:08 +09:00
Tatsuhiro Tsujikawa
057db65657
Rewrite session_append_inflight_settings
2016-06-21 22:30:21 +09:00
Tatsuhiro Tsujikawa
c42296acf1
Robust handling for ssize_t on Win32 platform
...
Now we define NGHTTP2_SSIZE_T which is typedef-ed to the appropriate
type depending on the platform (x86/x86_64).
See GH-616 for details
2016-06-21 22:06:20 +09:00
Tatsuhiro Tsujikawa
d6def22ad5
Update tutorials according to the updated tutorial client/server sources
2016-06-19 23:03:04 +09:00
Tatsuhiro Tsujikawa
cdd72bad77
examples: Add ALPN support to tutorial client/server
...
This commit adds ALPN support to tutorial client/server. It also adds
a code to check h2 was negotiated, if not, drop connection.
For tutorial server, now it sends connection preface just after TLS
handshake was made without waiting for the client connection preface.
2016-06-19 22:32:47 +09:00
Tatsuhiro Tsujikawa
123752a032
nghttpx: Handle error from push_upload_data and end_upload_data
...
We have to gracefully handle the case where response ends before
request body is fully received.
2016-06-17 22:32:15 +09:00
Tatsuhiro Tsujikawa
ec5e438a7c
nghttpx: Make backend fail with TLS handshake failure, including ALPN mismatch
2016-06-17 00:53:38 +09:00
Tatsuhiro Tsujikawa
c0b6b9a282
nghttpx: Use 16KiB buffer for reading to match TLS record size
2016-06-17 00:50:40 +09:00
Tatsuhiro Tsujikawa
1fb3d71f77
Update man pages
2016-06-17 00:26:29 +09:00
Tatsuhiro Tsujikawa
43d595b7f3
integration: Add tests for healthmon
2016-06-17 00:24:14 +09:00
Tatsuhiro Tsujikawa
fa8bccbae2
nghttpx: Move api enabled to APIConfig
2016-06-17 00:09:15 +09:00
Tatsuhiro Tsujikawa
56e7cd4be2
nghttpx: Add healthmon parameter to -f option to enable health monitor mode
2016-06-17 00:00:37 +09:00
Tatsuhiro Tsujikawa
af9662f971
nghttpx: Make API processing one of alternative mode
2016-06-16 23:30:35 +09:00
Tatsuhiro Tsujikawa
af4e262d47
nghttpx: Use AI_NUMERICSERV
2016-06-16 23:06:17 +09:00
Tatsuhiro Tsujikawa
96218a1078
nghttpx: Fast backend replacement on multi thread environment
2016-06-16 23:04:06 +09:00
Tatsuhiro Tsujikawa
50c9c3358a
nghttpx: Silence logging
2016-06-16 22:12:42 +09:00
Tatsuhiro Tsujikawa
6f025619de
nghttpx: Use dedicated worker for API processing
...
Some API processing is very slow (e.g., getaddrinfo). To avoid to
slow down regular request handling, if multi threaded configuration is
enabled, we allocate dedicated worker for API.
2016-06-16 21:22:36 +09:00
Tatsuhiro Tsujikawa
7e31340045
nghttpx: Receive reference of std::mt19937, not making a copy
2016-06-16 21:11:39 +09:00
Tatsuhiro Tsujikawa
cddb411495
nghttpx: Fix bug that backend never return to online
2016-06-16 00:57:26 +09:00
Tatsuhiro Tsujikawa
92572203e7
nghttpx: Fix stack buffer overflow with API call
2016-06-16 00:39:11 +09:00
Tatsuhiro Tsujikawa
57259481c8
Fix typo
2016-06-15 00:42:03 +09:00
Tatsuhiro Tsujikawa
c7b0e04498
Add nghttp2_option_set_max_send_header_block_length API function
...
This function sets the maximum length of header block (a set of header
fields per HEADERS frame) to send. The length of given set of header
fields is calculated using nghttp2_hd_deflate_bound(). Previously,
this is hard-coded, and is 64KiB.
2016-06-15 00:05:15 +09:00
Tatsuhiro Tsujikawa
47fa56fd0a
Update man pages
2016-06-14 00:26:36 +09:00
Tatsuhiro Tsujikawa
fd09d8b861
integration: Rename method names
2016-06-14 00:19:27 +09:00
Tatsuhiro Tsujikawa
d48d399fb3
nghttpx: Allow query in API endpoint
2016-06-13 22:11:26 +09:00
Tatsuhiro Tsujikawa
34468eccc4
Update doc
2016-06-13 21:19:01 +09:00
Tatsuhiro Tsujikawa
81bfb84b32
nghttpx: Rename backend/replace API as backendconfig
2016-06-13 21:17:53 +09:00
Tatsuhiro Tsujikawa
11bca9a98a
h2load: Document the behaviour when -d is used with HTTP/1.1 connection
2016-06-12 18:56:32 +09:00
Tatsuhiro Tsujikawa
2868370f9e
h2load: http1: Send header + body in one packet
2016-06-12 18:54:06 +09:00
Tatsuhiro Tsujikawa
9f6c947a87
h2load: Use memchunks
2016-06-12 18:50:52 +09:00
Tatsuhiro Tsujikawa
1a2dc1e822
h2load: Add content-length header field for HTTP/2 and SPDY as well
2016-06-12 17:52:47 +09:00
Tatsuhiro Tsujikawa
9bdf214f48
Merge branch 'h2load-http1-upload'
2016-06-12 17:45:42 +09:00
Tatsuhiro Tsujikawa
7469139dda
h2load: Implement HTTP/1 upload
...
h2load has supported uploading a file quite a while, but it turns out
that it worked with HTTP/2 and SPDY only. HTTP/1 with upload did not
work. This commit fixes this bug, and implement HTTP/1 upload. Due
to architectural limitation of h2load, when -d option is used, the
number of in-flight pipe-lined requests is set to 1.
2016-06-12 17:42:12 +09:00
Tatsuhiro Tsujikawa
51c7a13cee
Merge branch 'nghttpx-rev-wildcard-router'
2016-06-11 18:47:27 +09:00
Tatsuhiro Tsujikawa
c06e8c89ff
nghttpx: Use BlockAllocator in match_downstream_addr_group
2016-06-11 18:41:43 +09:00
Tatsuhiro Tsujikawa
a809da68a3
nghttpx: Aggregate router configuration into one struct
2016-06-11 18:25:38 +09:00
Tatsuhiro Tsujikawa
084206bace
nghttpx: Handle edge case wildcard pattern and add tests
...
Suppose the wildcard patterns follows:
- *.nghttp2.org/foo
- *.img.nghttp2.org/bar
Previously, s.img.nghttp2.org/foo does not match anything. Now it
matches first pattern.
2016-06-11 13:33:59 +09:00
Tatsuhiro Tsujikawa
288449b9bc
nghttpx: Rewrite wildcard router
2016-06-10 23:43:44 +09:00
Tatsuhiro Tsujikawa
11e66510e4
Update man pages
2016-06-09 23:36:30 +09:00
Tatsuhiro Tsujikawa
38f4f50e93
nghttpx: Erase wildcard patterns with http2 proxy enabled
2016-06-09 23:32:27 +09:00
Tatsuhiro Tsujikawa
d36afb7cdb
Merge branch 'nghttpx-session-affinity'
2016-06-09 23:23:56 +09:00
Tatsuhiro Tsujikawa
f9897f8ccd
nghttpx: Fix bugs and crash when affinity is enabled
2016-06-09 23:17:41 +09:00
Tatsuhiro Tsujikawa
143d0b69b7
nghttpx: Implement client IP based session affinity
2016-06-09 22:35:59 +09:00
Tatsuhiro Tsujikawa
ac97c122d4
nghttpx: Fix memory leak
2016-06-06 00:16:25 +09:00
Tatsuhiro Tsujikawa
7751f4fb3b
Add API integration tests with http/1.1 and SPDY
2016-06-05 23:36:04 +09:00