Tatsuhiro Tsujikawa
d76b8331d1
Update bash_completion
2024-04-04 17:16:56 +09:00
Tatsuhiro Tsujikawa
0655cb3be4
Update manual pages
2024-04-04 17:16:42 +09:00
Tatsuhiro Tsujikawa
7a88a0d019
Bump package and library versions
2024-04-04 17:12:12 +09:00
Tatsuhiro Tsujikawa
086103193a
Update AUTHORS
2024-04-04 17:10:22 +09:00
Tatsuhiro Tsujikawa
d71a4668c6
Add nghttp2_option_set_max_continuations
2024-04-04 17:08:46 +09:00
Tatsuhiro Tsujikawa
00201ecd8f
Limit CONTINUATION frames following an incoming HEADER frame
2024-04-04 17:08:46 +09:00
Tatsuhiro Tsujikawa
605d9fdd68
Merge pull request #2134 from nghttp2/nghttpd-fix-stall
...
nghttpd: Fix read stall
2024-04-04 17:08:17 +09:00
Tatsuhiro Tsujikawa
749e1d8bd2
nghttpd: Fix read stall
2024-04-04 16:52:29 +09:00
Tatsuhiro Tsujikawa
c68456cc68
Merge pull request #2133 from nghttp2/nghttpx-fix-error-message
...
nghttpx: Fix error message
2024-04-03 20:00:44 +09:00
Tatsuhiro Tsujikawa
fe06364011
Merge pull request #2131 from nghttp2/bump-munit
...
Bump munit
2024-04-03 19:53:06 +09:00
Tatsuhiro Tsujikawa
68f71ad5fb
nghttpx: Fix error message
2024-04-03 19:45:07 +09:00
Tatsuhiro Tsujikawa
f15e3713ad
Bump munit
2024-04-03 19:36:36 +09:00
Tatsuhiro Tsujikawa
b0b14bf5b6
Merge pull request #2132 from nghttp2/nghttpx-ares-getaddrinfo
...
nghttpx: Migrate to ares_getaddrinfo
2024-04-03 19:36:06 +09:00
Tatsuhiro Tsujikawa
d32324658a
nghttpx: Migrate to ares_getaddrinfo
2024-04-03 19:21:16 +09:00
Tatsuhiro Tsujikawa
c9c4f0bb18
Merge pull request #2129 from nghttp2/nghttpx-quic-lb
...
nghttpx: Allocate 3 bits for QUIC configuration in Connection ID
2024-03-31 22:34:35 +09:00
Tatsuhiro Tsujikawa
4c74be62e3
Merge pull request #2128 from jimmy-park/fix-cmake-warning
...
cmake: check `SSL_provide_quic_data` when `ENABLE_HTTP3` is `ON`
2024-03-31 22:26:30 +09:00
Tatsuhiro Tsujikawa
fbcb9154fc
nghttpx: Allocate 3 bits for QUIC configuration in Connection ID
...
Allocate 3 bits for QUIC configuration in Connection ID that matches
the current QUIC LB draft.
2024-03-31 21:44:01 +09:00
Jiwoo Park
7a507f9a61
Check SSL_provide_quic_data when ENABLE_HTTP3 is ON
2024-03-31 20:54:07 +09:00
Tatsuhiro Tsujikawa
241b1973cb
Merge pull request #2127 from nghttp2/bpf-drop-bad-quic-packet
...
bpf: Drop bad QUIC packet
2024-03-31 19:24:31 +09:00
Tatsuhiro Tsujikawa
e8c45f4bfd
bpf: Drop bad QUIC packet
...
Drop QUIC packet if it is less than valid QUIC packet or it is coming
from one of remote ports that are known to be a UDP service that can
be used as a UDP reflection attack.
2024-03-31 19:00:15 +09:00
Tatsuhiro Tsujikawa
5483edded8
Merge pull request #2126 from nghttp2/nghttpx-worker-process-thread
...
nghttpx: Split thread into worker_process and thread
2024-03-31 18:55:53 +09:00
Tatsuhiro Tsujikawa
edd2070a11
nghttpx: Split thread into worker_process and thread
...
Split thread into worker_process and thread. Use thread to O(1)
lookup for Worker. This new machinery is not compatible to the
previous version. The old instance of nghttpx must not be upgraded
with USR2 signal. It should be restarted instead.
2024-03-31 18:07:56 +09:00
Tatsuhiro Tsujikawa
cd7d5166f1
Merge pull request #2125 from nghttp2/nghttpx-faster-worker-lookup
...
Nghttpx faster worker lookup
2024-03-30 18:36:49 +09:00
Tatsuhiro Tsujikawa
6e57c13727
Faster worker lookup
2024-03-30 17:31:18 +09:00
Tatsuhiro Tsujikawa
a2f8f75145
Rename iwps to lwps
2024-03-30 16:29:23 +09:00
Tatsuhiro Tsujikawa
4dea77ce39
Merge pull request #2124 from nghttp2/nghttpx-cid
...
nghttpx: Rework Connection ID construction
2024-03-30 11:31:28 +09:00
Tatsuhiro Tsujikawa
ab4b37afab
nghttpx: Rework Connection ID construction
2024-03-30 11:09:03 +09:00
Tatsuhiro Tsujikawa
c97376d456
Merge pull request #2122 from nghttp2/nghttpx-stateless-reset
...
Further reduce Stateless reset emission
2024-03-28 17:35:32 +09:00
Tatsuhiro Tsujikawa
b3bb189cb8
Further reduce Stateless reset emission
2024-03-28 17:07:44 +09:00
Tatsuhiro Tsujikawa
408149ce5e
Merge pull request #2120 from nghttp2/no-rfc7540-priority-fix
...
No rfc7540 priority fix
2024-03-25 23:39:05 +09:00
Tatsuhiro Tsujikawa
f35defd57a
Remove stream from queue on deletion
...
Remove stream from queue on deletion. Run on_stream_close_callback
before deallocating item in case that a frame is submitted in the
callback which is highly unusual in practice.
2024-03-25 23:15:16 +09:00
Tatsuhiro Tsujikawa
97c4b72b6a
Decrement num_idle_streams when opening idle stream
2024-03-25 23:14:04 +09:00
Tatsuhiro Tsujikawa
9277c1ab40
Detach item from stream on memory allocation failure
2024-03-25 23:13:07 +09:00
Tatsuhiro Tsujikawa
cd993a9648
Merge pull request #2119 from nghttp2/nghttp-keylog
...
nghttp: Support SSLKEYLOGFILE
2024-03-25 17:55:51 +09:00
Tatsuhiro Tsujikawa
d5cf5621d7
nghttp: Support SSLKEYLOGFILE
2024-03-25 17:32:33 +09:00
Tatsuhiro Tsujikawa
f08e3393cb
Merge pull request #2117 from nghttp2/nghttpx-discard-short-quic-pkt
...
nghttpx: Discard UDP datagram that is too short to be a valid QUIC packet
2024-03-23 18:50:22 +09:00
Tatsuhiro Tsujikawa
8c885ca0f4
nghttpx: Discard UDP datagram that is too short to be a valid QUIC packet
2024-03-23 18:29:03 +09:00
Tatsuhiro Tsujikawa
eecff14cf2
Merge pull request #2116 from nghttp2/stale
...
Add actions/stale
2024-03-23 16:43:47 +09:00
Tatsuhiro Tsujikawa
2a52b95773
Add actions/stale
2024-03-23 16:22:12 +09:00
Tatsuhiro Tsujikawa
e98df05432
Merge pull request #2115 from nghttp2/nghttpx-quic-more-prohibited-ports
...
nghttpx: More QUIC prohibited ports
2024-03-22 18:59:09 +09:00
Tatsuhiro Tsujikawa
d242dc8bd5
nghttpx: More QUIC prohibited ports
2024-03-22 18:44:56 +09:00
Tatsuhiro Tsujikawa
58ba3b178b
Merge pull request #2114 from nghttp2/nghttpx-quic-stateless-reset-size
...
nghttpx: Rework QUIC stateless reset packet size
2024-03-22 18:29:09 +09:00
Tatsuhiro Tsujikawa
4c24629854
nghttpx: Rework QUIC stateless reset packet size
2024-03-22 18:16:07 +09:00
Tatsuhiro Tsujikawa
bf06b48368
Merge pull request #2113 from nghttp2/h2load-host-override
...
h2load: Allow host header to be overridden
2024-03-21 19:46:00 +09:00
Tatsuhiro Tsujikawa
c4d150dec6
h2load: Allow host header to be overridden
...
Remove :host header override which is deprecated SPDY header.
Instead, add host header to the override header list.
2024-03-21 19:26:00 +09:00
Tatsuhiro Tsujikawa
fc2ee9f41e
Merge pull request #2112 from nghttp2/nghttpx-fix-port
...
nghttpx: Fix port byte order
2024-03-21 18:59:04 +09:00
Tatsuhiro Tsujikawa
bbddd550c6
nghttpx: Fix port byte order
2024-03-21 18:20:14 +09:00
Tatsuhiro Tsujikawa
78ab8b1330
Merge pull request #2111 from nghttp2/nghttpx-quic-port
...
nghttpx: Drop a UDP datagram from well-known port
2024-03-21 17:53:12 +09:00
Tatsuhiro Tsujikawa
5acd3c75f7
nghttpx: Drop a UDP datagram from well-known port
2024-03-21 17:22:26 +09:00
Tatsuhiro Tsujikawa
29b87d5434
Merge pull request #2110 from nghttp2/tar-pax
...
autotools: Switch to tar-pax
2024-03-20 17:25:08 +09:00
Tatsuhiro Tsujikawa
39cc6fd8b2
autotools: Switch to tar-pax
2024-03-20 17:01:56 +09:00
Tatsuhiro Tsujikawa
ab30dbaf00
Merge pull request #2109 from nghttp2/automate-release
...
Automate release process
2024-03-20 16:50:30 +09:00
Tatsuhiro Tsujikawa
a50f408acf
Merge pull request #2108 from nghttp2/tar-ustar
...
autotools: Use tar-ustar automake option
2024-03-20 16:27:23 +09:00
Tatsuhiro Tsujikawa
bb0f2e822d
autotools: Use tar-ustar automake option
2024-03-20 15:53:26 +09:00
Tatsuhiro Tsujikawa
c3fe715be2
Automate release process
2024-03-20 15:12:41 +09:00
Tatsuhiro Tsujikawa
747e9e676d
Merge pull request #2107 from nghttp2/dependabot/go_modules/github.com/quic-go/quic-go-0.42.0
...
build(deps): bump github.com/quic-go/quic-go from 0.41.0 to 0.42.0
2024-03-20 14:41:05 +09:00
dependabot[bot]
d1025ea7e6
build(deps): bump github.com/quic-go/quic-go from 0.41.0 to 0.42.0
...
Bumps [github.com/quic-go/quic-go](https://github.com/quic-go/quic-go ) from 0.41.0 to 0.42.0.
- [Release notes](https://github.com/quic-go/quic-go/releases )
- [Changelog](https://github.com/quic-go/quic-go/blob/master/Changelog.md )
- [Commits](https://github.com/quic-go/quic-go/compare/v0.41.0...v0.42.0 )
---
updated-dependencies:
- dependency-name: github.com/quic-go/quic-go
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-03-18 14:30:24 +00:00
Tatsuhiro Tsujikawa
4bda611ee4
Merge pull request #2106 from nghttp2/nghttpx-simplify-cc-handling
...
nghttpx: Simplify quic connection close handling
2024-03-18 21:42:31 +09:00
Tatsuhiro Tsujikawa
ffea7c8793
nghttpx: Simplify quic connection close handling
...
Simplify quic connection close handling with new ngtcp2 API.
2024-03-18 21:09:22 +09:00
Tatsuhiro Tsujikawa
7d516c23c2
Merge pull request #2105 from nghttp2/bump-ngtcp2
...
Bump ngtcp2
2024-03-18 21:07:45 +09:00
Tatsuhiro Tsujikawa
fe9a989a39
boringssl requires C++ runtime
2024-03-18 19:31:39 +09:00
Tatsuhiro Tsujikawa
9c30ba7f35
Bump ngtcp2
2024-03-18 18:33:24 +09:00
Tatsuhiro Tsujikawa
a46950e972
Merge pull request #2103 from nghttp2/base-nossl
...
Switch to distroless/base-nossl
2024-03-17 19:05:41 +09:00
Tatsuhiro Tsujikawa
7c644e4982
Merge pull request #2102 from nghttp2/rewrite-hexdump
...
Rewrite hexdump
2024-03-17 18:58:25 +09:00
Tatsuhiro Tsujikawa
945940e131
Switch to distroless/base-nossl
2024-03-17 18:44:18 +09:00
Tatsuhiro Tsujikawa
be512f8298
Rewrite hexdump
2024-03-17 18:38:08 +09:00
Tatsuhiro Tsujikawa
061998e6cf
Merge pull request #2101 from nghttp2/nghttpx-fix-header-timeout-in-conf
...
nghttpx: Fix frontend-header-timeout does not work in config file
2024-03-16 18:31:54 +09:00
Tatsuhiro Tsujikawa
ceccba0997
nghttpx: Fix frontend-header-timeout does not work in config file
2024-03-16 18:13:46 +09:00
Tatsuhiro Tsujikawa
a7379389f1
Merge pull request #2100 from nghttp2/nghttpx-header-idle-timeout
...
Nghttpx header idle timeout
2024-03-16 17:36:38 +09:00
Tatsuhiro Tsujikawa
9fbde38571
Rename frontend-*-read-timeout to frontend-*-idle-timeout
...
Rename frontend-*-read-timeout to frontend-*-idle-timeout so that the
name of the option suggests what it does.
2024-03-16 16:58:32 +09:00
Tatsuhiro Tsujikawa
c8e149994e
nghttpx: Add frontend-header-timeout option
...
Add frontend-header-timeout option. frontend-read-timeout is
deprecated and has no effect. Use frontend-header-timeout as a
replacement. This also fixes the bug that HTTP/3 header timeout is
not set per stream.
2024-03-16 16:58:32 +09:00
Tatsuhiro Tsujikawa
566737ccc8
Merge pull request #2099 from nghttp2/docker-copy-link
...
docker: Use copy --link
2024-03-15 18:13:40 +09:00
Tatsuhiro Tsujikawa
f28d385e78
docker: Use copy --link
2024-03-15 17:27:23 +09:00
Tatsuhiro Tsujikawa
208b3caa0f
Merge pull request #2098 from nghttp2/llvm-workaround
...
Workaround llvm issue on github ubuntu runner
2024-03-15 17:26:41 +09:00
Tatsuhiro Tsujikawa
7ebd0a84ec
Workaround llvm issue on github ubuntu runner
2024-03-15 17:07:35 +09:00
Tatsuhiro Tsujikawa
b922740e56
Merge pull request #2097 from nghttp2/dependabot/go_modules/golang.org/x/net-0.22.0
...
build(deps): bump golang.org/x/net from 0.21.0 to 0.22.0
2024-03-15 09:02:16 +09:00
dependabot[bot]
d8bb6d2afe
build(deps): bump golang.org/x/net from 0.21.0 to 0.22.0
...
Bumps [golang.org/x/net](https://github.com/golang/net ) from 0.21.0 to 0.22.0.
- [Commits](https://github.com/golang/net/compare/v0.21.0...v0.22.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/net
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-03-11 14:45:29 +00:00
Tatsuhiro Tsujikawa
a35f3d16db
Merge pull request #2092 from jonaski/cmake_static
...
Respect BUILD_STATIC_LIBS and add option for tests
2024-03-06 00:28:25 +09:00
Jonas Kvinge
be76c13da8
build: Add BUILD_STATIC_LIBS and BUILD_TESTING
2024-03-04 21:47:48 +01:00
Jonas Kvinge
b8a307ec63
CMake: Respect BUILD_STATIC_LIBS
...
Respect BUILD_STATIC_LIBS and add option for tests.
This also fixes the library conflict with MSVC by setting STATIC_LIB_SUFFIX so it's using "nghttp2_static" when both static and shared library is built, since the lib name currently conflicts with the shared when STATIC_LIB_SUFFIX was not set.
Fixes #2088
2024-03-04 21:43:48 +01:00
Tatsuhiro Tsujikawa
ebb92d2ff7
Merge pull request #2093 from jonaski/ci
...
Checkout with submodules
2024-03-04 18:40:15 +09:00
Jonas Kvinge
ce39c2ade0
docker: Checkout with submodules
2024-03-03 15:51:30 +01:00
Jonas Kvinge
3cf262f231
build: Checkout with submodules
2024-03-03 15:51:30 +01:00
Tatsuhiro Tsujikawa
ac2e671d80
Merge pull request #2087 from nghttp2/nghttpx-h3-trailer-shutdown-read
...
nghttpx: Shutdown h3 stream read with trailer as well
2024-03-02 11:57:46 +09:00
Tatsuhiro Tsujikawa
86049b7af2
nghttpx: Shutdown h3 stream read with trailer as well
2024-03-02 11:24:14 +09:00
Tatsuhiro Tsujikawa
99e7413938
Bump package version
2024-03-01 17:28:02 +09:00
Tatsuhiro Tsujikawa
c5e087b103
Update bash_completion
2024-03-01 17:04:52 +09:00
Tatsuhiro Tsujikawa
fb65839653
Update manual pages
2024-03-01 17:04:23 +09:00
Tatsuhiro Tsujikawa
1da27af832
Bump package and library versions
2024-03-01 16:59:34 +09:00
Tatsuhiro Tsujikawa
c29ac85281
Update AUTHORS
2024-03-01 16:57:31 +09:00
Tatsuhiro Tsujikawa
1b5fe4a477
clang-format
2024-02-29 17:59:42 +09:00
Tatsuhiro Tsujikawa
cdf01d1af8
Merge pull request #2086 from barracuda156/darwin
...
Fix build when `AI_NUMERICSERV` is undefined
2024-02-29 17:58:38 +09:00
Sergey Fedorov
2e54284906
shrpx_tls_test.cc: use AI_NUMERICSERV when defined
2024-02-29 02:29:36 +07:00
Sergey Fedorov
b13c97f04f
shrpx_config.cc: if undefined, define AI_NUMERICSERV to 0
2024-02-29 02:26:33 +07:00
Tatsuhiro Tsujikawa
c817b2a3e0
Merge pull request #2085 from nghttp2/nghttpx-remove-default-udp-payload-size
...
nghttpx: Remove SHRPX_QUIC_MAX_UDP_PAYLOAD_SIZE
2024-02-26 18:04:06 +09:00
Tatsuhiro Tsujikawa
a354577eff
nghttpx: Remove SHRPX_QUIC_MAX_UDP_PAYLOAD_SIZE
...
Remove SHRPX_QUIC_MAX_UDP_PAYLOAD_SIZE and just rely on the ngtcp2
default.
2024-02-26 17:41:54 +09:00
Tatsuhiro Tsujikawa
09a95983b9
Merge pull request #2084 from nghttp2/max-pktcnt-fix
...
src: Deal with the case that send_quantum < max_udp_payload_size
2024-02-26 17:40:29 +09:00
Tatsuhiro Tsujikawa
25d6df290e
src: Deal with the case that send_quantum < max_udp_payload_size
2024-02-26 17:15:29 +09:00
Tatsuhiro Tsujikawa
bd9edc8e76
Merge pull request #2083 from nghttp2/apt-get-update
...
Run apt-get update before install
2024-02-26 17:12:16 +09:00
Tatsuhiro Tsujikawa
b28998694b
Run apt-get update before install
2024-02-26 16:50:09 +09:00
Tatsuhiro Tsujikawa
0b5008eee3
Merge pull request #2082 from nghttp2/reuse-evp-cipher-ctx
...
nghttpx: Reuse EVP_CIPHER_CTX for QUIC connection ID encryption
2024-02-23 19:46:30 +09:00
Tatsuhiro Tsujikawa
a6d128836d
nghttpx: Reuse EVP_CIPHER_CTX for QUIC connection ID encryption
2024-02-23 19:24:42 +09:00
Tatsuhiro Tsujikawa
ea4e5cec19
Merge pull request #2081 from nghttp2/fix-mruby-crash
...
mruby: Exclude mrdb gem which causes nghttpx to crash
2024-02-22 21:51:08 +09:00
Tatsuhiro Tsujikawa
bfeb1ee182
mruby: Exclude mrdb gem which causes nghttpx to crash
2024-02-22 21:35:25 +09:00
Tatsuhiro Tsujikawa
2b28011c86
Merge pull request #2080 from nghttp2/bpf-pre-expand-aes-key
...
bpf: Pre-expand aes key
2024-02-22 19:21:20 +09:00
Tatsuhiro Tsujikawa
66c5ea2216
bpf: Pre-expand aes key
2024-02-22 18:56:07 +09:00
Tatsuhiro Tsujikawa
66abd8cbd3
Merge pull request #2079 from nghttp2/neverbleed-gnu-source
...
neverbleed: Define _GNU_SOURCE for pthread_setaffinity_np
2024-02-18 20:04:28 +09:00
Tatsuhiro Tsujikawa
a142e81994
neverbleed: Define _GNU_SOURCE for pthread_setaffinity_np
2024-02-18 19:30:22 +09:00
Tatsuhiro Tsujikawa
97b7012ccd
Merge pull request #2078 from nghttp2/mruby-mrbc-rename
...
mruby: Adopt deprecation of mrbc_ prefix
2024-02-18 19:16:59 +09:00
Tatsuhiro Tsujikawa
39d293551a
mruby: Adopt deprecation of mrbc_ prefix
2024-02-18 18:53:39 +09:00
Tatsuhiro Tsujikawa
fe56b875b4
Merge pull request #2077 from nghttp2/bump-ngtcp2
...
Bump ngtcp2 dependencies
2024-02-18 18:37:39 +09:00
Tatsuhiro Tsujikawa
d1035d439a
Bump ngtcp2 dependencies
2024-02-18 18:17:37 +09:00
Tatsuhiro Tsujikawa
532791209e
Merge pull request #2076 from nghttp2/h2load-add-sni
...
h2load: Add --sni option
2024-02-18 17:47:07 +09:00
Tatsuhiro Tsujikawa
ed0b7864d7
h2load: Add --sni option
2024-02-18 17:26:18 +09:00
Tatsuhiro Tsujikawa
d2ca281ca1
Merge pull request #2075 from nghttp2/bump-llhttp
...
Bump llhttp to 48588093ca4219b5f689acfc9ebea9e4c8c37663
2024-02-16 18:50:10 +09:00
Tatsuhiro Tsujikawa
3792c573cd
Bump llhttp to 48588093ca4219b5f689acfc9ebea9e4c8c37663
2024-02-16 17:58:08 +09:00
Tatsuhiro Tsujikawa
ab8ee3fbce
Merge pull request #2074 from nghttp2/bump-mruby
...
Bump mruby to 3.3.0
2024-02-16 17:57:34 +09:00
Tatsuhiro Tsujikawa
c2cfab6d9c
Bump mruby to 3.3.0
2024-02-16 17:30:53 +09:00
Tatsuhiro Tsujikawa
a99667350e
Merge pull request #2073 from nghttp2/security-policy
...
Move security policy to GitHub standard location
2024-02-15 22:39:15 +09:00
Tatsuhiro Tsujikawa
053703eeab
Move security policy to GitHub standard location
2024-02-15 22:23:10 +09:00
Tatsuhiro Tsujikawa
3a4e26247b
Merge pull request #2072 from nghttp2/security
...
Use GitHub private vulnerability reporting
2024-02-15 21:52:11 +09:00
Tatsuhiro Tsujikawa
a25f19560c
Use GitHub private vulnerability reporting
2024-02-15 21:37:55 +09:00
Tatsuhiro Tsujikawa
2af27bb921
Merge pull request #2071 from nghttp2/reconsider-ssize_t-usage-in-src
...
Reconsider ssize t usage in src
2024-02-15 21:18:19 +09:00
Tatsuhiro Tsujikawa
731c7c0f92
nghttpx: Reconsider ssize_t usage
2024-02-15 20:59:39 +09:00
Tatsuhiro Tsujikawa
b487cf1d19
nghttp: Use size_t where a negative value is not expected
2024-02-15 20:59:38 +09:00
Tatsuhiro Tsujikawa
41a2f6de00
h2load: Use size_t where a negative value is not expected
2024-02-15 20:59:38 +09:00
Tatsuhiro Tsujikawa
075254e5a0
Merge pull request #2070 from nghttp2/src-remove-unused
...
src: Remove unused functions
2024-02-15 20:03:32 +09:00
Tatsuhiro Tsujikawa
3daa0de1e6
src: Remove unused functions
2024-02-15 19:44:32 +09:00
Tatsuhiro Tsujikawa
972e372402
Merge pull request #2069 from nghttp2/apps-migrate-nghttp2_ssize
...
Apps migrate nghttp2 ssize
2024-02-15 19:43:16 +09:00
Tatsuhiro Tsujikawa
65c91ba729
h2load: Migrate to nghttp2_ssize API
2024-02-15 19:29:42 +09:00
Tatsuhiro Tsujikawa
3ffade5f8a
nghttpx: Migrate to nghttp2_ssize API
2024-02-15 19:29:42 +09:00
Tatsuhiro Tsujikawa
33ad4cc2b8
deflatehd, inflatehd: Migrate to nghttp2_ssize API
2024-02-15 19:29:42 +09:00
Tatsuhiro Tsujikawa
f029a09cef
nghttpd: Migrate to nghttp2_ssize API
2024-02-15 19:29:42 +09:00
Tatsuhiro Tsujikawa
9468b16f1e
nghttp: Migrate to nghttp2_ssize API
2024-02-15 19:29:42 +09:00
Tatsuhiro Tsujikawa
d4b19d7a5a
Merge pull request #2068 from nghttp2/rfc7540-priorities-api-deprecation-plan
...
Describe RFC 7540 priorities deprecation plan
2024-02-15 19:08:36 +09:00
Tatsuhiro Tsujikawa
632292731f
Describe RFC 7540 priorities deprecation plan
2024-02-15 18:50:32 +09:00
Tatsuhiro Tsujikawa
89500e2ab3
Merge pull request #2067 from nghttp2/deprecated-warning-upfront
...
Move deprecated warning upfront
2024-02-15 18:50:06 +09:00
Tatsuhiro Tsujikawa
bc1c6c07b3
Move deprecated warning upfront
2024-02-15 18:34:19 +09:00
Tatsuhiro Tsujikawa
2fdb959ea1
Merge pull request #2066 from nghttp2/nghttp2_ssize
...
Introduce nghttp2_ssize API
2024-02-15 18:32:31 +09:00
Tatsuhiro Tsujikawa
93c4d8bc34
Introduce nghttp2_ssize API
...
This commit deprecates all APIs, including structs and callback
functions, that use ssize_t. New APIs that use nghttp2_ssize are
added as a replacement. The usage of ssize_t is problematic for
several reasons. Some platforms do not define ssize_t. The minimum
value of ssize_t that POSIX requires is -1 which makes nghttp2 error
code out of range. nghttp2_ssize is an alias of ptrdiff_t that is in
C standard and covers our error code range.
New code should use new nghttp2_ssize APIs. The existing applications
should consider migrating to new APIs.
The deprecated ssize_t APIs continue to work for backward
compatibility.
Here is the summary of the deprecated APIs and their replacements:
Callback functions:
- nghttp2_data_source_read_callback => nghttp2_data_source_read_callback2
- nghttp2_data_source_read_length_callback => nghttp2_data_source_read_length_callback2
- nghttp2_pack_extension_callback => nghttp2_pack_extension_callback2
- nghttp2_recv_callback => nghttp2_recv_callback2
- nghttp2_select_padding_callback => nghttp2_select_padding_callback2
- nghttp2_send_callback => nghttp2_send_callback2
Structs:
- nghttp2_data_provider => nghttp2_data_provider2
Functions:
- nghttp2_hd_deflate_hd => nghttp2_hd_deflate_hd2
- nghttp2_hd_deflate_hd_vec => nghttp2_hd_deflate_hd_vec2
- nghttp2_hd_inflate_hd2 => nghttp2_hd_inflate_hd3
- nghttp2_pack_settings_payload => nghttp2_pack_settings_payload2
- nghttp2_session_callbacks_set_data_source_read_length_callback =>
nghttp2_session_callbacks_set_data_source_read_length_callback2
- nghttp2_session_callbacks_set_pack_extension_callback =>
nghttp2_session_callbacks_set_pack_extension_callback2
- nghttp2_session_callbacks_set_recv_callback =>
nghttp2_session_callbacks_set_recv_callback2
- nghttp2_session_callbacks_set_select_padding_callback =>
nghttp2_session_callbacks_set_select_padding_callback2
- nghttp2_session_callbacks_set_send_callback =>
nghttp2_session_callbacks_set_send_callback2
- nghttp2_session_mem_recv => nghttp2_session_mem_recv2
- nghttp2_session_mem_send => nghttp2_session_mem_send2
- nghttp2_submit_data => nghttp2_submit_data2
- nghttp2_submit_request => nghttp2_submit_request2
- nghttp2_submit_response => nghttp2_submit_response2
For those applications that do not want to see ssize_t in nghttp2.h
header file, define NGHTTP2_NO_SSIZE_T macro before including
nghttp2.h. It hides all ssize_t APIs.
2024-02-15 18:19:11 +09:00
Tatsuhiro Tsujikawa
504633eadd
Merge pull request #2064 from nghttp2/munit
...
Munit
2024-02-14 17:53:19 +09:00
Tatsuhiro Tsujikawa
3884aa166e
Remove munit dependency from nghttp2_test_helper.h
2024-02-14 17:39:10 +09:00
Tatsuhiro Tsujikawa
ec7abfeabb
Merge pull request #2065 from nghttp2/integration-go-omit-unused-params
...
integration-tests: Omit unused parameters
2024-02-12 16:04:29 +09:00
Tatsuhiro Tsujikawa
de79d05ad9
integration-tests: Omit unused parameters
2024-02-12 14:02:01 +09:00
Tatsuhiro Tsujikawa
8b4fd9bd13
cmake: Disable -Wunused-macros
...
Disable -Wunused-macros which makes compiling external code quite
hard.
2024-02-12 14:01:35 +09:00
Tatsuhiro Tsujikawa
be8a327258
Migrate to munit from cunit
2024-02-12 14:01:35 +09:00
Tatsuhiro Tsujikawa
58c1e2bb55
Merge pull request #2062 from nghttp2/dependabot/go_modules/golang.org/x/net-0.21.0
...
build(deps): bump golang.org/x/net from 0.20.0 to 0.21.0
2024-02-09 21:28:39 +09:00
dependabot[bot]
5d0a2f5fdb
build(deps): bump golang.org/x/net from 0.20.0 to 0.21.0
...
Bumps [golang.org/x/net](https://github.com/golang/net ) from 0.20.0 to 0.21.0.
- [Commits](https://github.com/golang/net/compare/v0.20.0...v0.21.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/net
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-02-09 12:06:05 +00:00
Tatsuhiro Tsujikawa
4f5a769d01
Merge pull request #2061 from nghttp2/dependabot-gomod
...
Let dependabot manage go modules
2024-02-09 21:05:37 +09:00
Tatsuhiro Tsujikawa
8df2c0090d
Merge pull request #2060 from nghttp2/deprecate-rfc7540-priorities
...
Deprecate RFC 7540 priorities (aka stream dependencies)
2024-02-09 19:43:19 +09:00
Tatsuhiro Tsujikawa
c92aabb6e6
Let dependabot manage go modules
2024-02-09 18:48:24 +09:00
Tatsuhiro Tsujikawa
c00c44abbe
Deprecate RFC 7540 priorities (aka stream dependencies)
...
This commit just adds a warning to the related API documents. The
actual functionality works just like before.
2024-02-09 18:31:57 +09:00
Tatsuhiro Tsujikawa
92582ce519
Merge pull request #2059 from nghttp2/libbrotli-fixup
...
Libbrotli fixup
2024-02-08 23:03:56 +09:00
Tatsuhiro Tsujikawa
1291b76986
Use auto
2024-02-08 21:24:20 +09:00
Tatsuhiro Tsujikawa
6d291e98e0
Fix bug that libbrotlienc is not enabled
2024-02-08 21:24:20 +09:00
Tatsuhiro Tsujikawa
68498a307c
Fix missing '`'
2024-02-08 21:24:20 +09:00
Tatsuhiro Tsujikawa
a7d73d90db
cmake: Add missing definitions
2024-02-08 21:24:20 +09:00
Tatsuhiro Tsujikawa
69fd5b557d
Add missing :
2024-02-08 18:04:27 +09:00
Tatsuhiro Tsujikawa
3792abd447
Disable libbrotli by default
2024-02-08 18:04:27 +09:00
Tatsuhiro Tsujikawa
d55323e575
Merge pull request #2058 from nghttp2/switch-to-aws-lc
...
Switch to aws lc
2024-02-08 18:03:14 +09:00
Tatsuhiro Tsujikawa
96104d0895
README.rst: Switch to aws-lc
2024-02-08 17:49:52 +09:00
Tatsuhiro Tsujikawa
2f7dd5ec65
docker: Switch to aws-lc
2024-02-08 17:49:52 +09:00
Tatsuhiro Tsujikawa
8c0fe8f93f
Merge pull request #2057 from nghttp2/fix-missing-newline
...
Fix missing newline
2024-02-07 19:42:55 +09:00
Tatsuhiro Tsujikawa
85ccbd4f95
Fix missing newline
2024-02-07 19:02:12 +09:00
Tatsuhiro Tsujikawa
f3b142293c
Merge pull request #2056 from nghttp2/bssl-cert-compression
...
src: Certificate Compression with boringssl
2024-02-07 19:00:41 +09:00
Tatsuhiro Tsujikawa
4b34dd1965
src: Certificate Compression with boringssl
2024-02-07 18:41:01 +09:00
Tatsuhiro Tsujikawa
4ae7fe91d6
Merge pull request #2054 from nghttp2/fetch-ocsp-response-python3
...
Run with python3
2024-02-06 23:35:39 +09:00
Tatsuhiro Tsujikawa
41ac5f7e4e
Merge pull request #2055 from nghttp2/bssl-ocsp
...
nghttpx: Set ocsp response to SSL in case of boringssl
2024-02-06 22:56:24 +09:00
Tatsuhiro Tsujikawa
343dbafe7d
nghttpx: Set ocsp response to SSL in case of boringssl
2024-02-06 21:27:43 +09:00
Tatsuhiro Tsujikawa
5003886591
Run with python3
2024-02-06 19:42:03 +09:00
Tatsuhiro Tsujikawa
f7de260969
Merge pull request #2052 from nghttp2/dependabot/github_actions/microsoft/setup-msbuild-2
...
build(deps): bump microsoft/setup-msbuild from 1 to 2
2024-02-06 00:19:13 +09:00
dependabot[bot]
69daeb040c
build(deps): bump microsoft/setup-msbuild from 1 to 2
...
Bumps [microsoft/setup-msbuild](https://github.com/microsoft/setup-msbuild ) from 1 to 2.
- [Release notes](https://github.com/microsoft/setup-msbuild/releases )
- [Changelog](https://github.com/microsoft/setup-msbuild/blob/main/building-release.md )
- [Commits](https://github.com/microsoft/setup-msbuild/compare/v1...v2 )
---
updated-dependencies:
- dependency-name: microsoft/setup-msbuild
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-02-05 14:08:27 +00:00
Tatsuhiro Tsujikawa
fdc53b1a76
Merge pull request #2051 from anthonyalayo/feat/fixingBuildInstallTrees
...
Fixing the build and install trees
2024-02-05 17:12:51 +09:00
Anthony Alayo
b6247f5391
Setting variables for static and shared libs
2024-02-02 18:45:32 -08:00
Anthony Alayo
40983f461e
Update CMakeLists.txt
2024-02-02 18:39:04 -08:00
Anthony Alayo
80ba5ad341
Tweaking export
2024-02-02 13:19:29 -08:00
Anthony Alayo
0f3a369e12
Adding export set
2024-02-02 13:04:12 -08:00
Anthony Alayo
d9edee47aa
Fixing the build and install trees
2024-02-02 12:21:13 -08:00
Tatsuhiro Tsujikawa
a65b0acd9e
Merge pull request #2046 from nghttp2/dependabot/github_actions/actions/cache-4
...
build(deps): bump actions/cache from 3 to 4
2024-01-23 00:43:32 +09:00
dependabot[bot]
67c2c481ea
build(deps): bump actions/cache from 3 to 4
...
Bumps [actions/cache](https://github.com/actions/cache ) from 3 to 4.
- [Release notes](https://github.com/actions/cache/releases )
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md )
- [Commits](https://github.com/actions/cache/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: actions/cache
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-01-22 14:15:13 +00:00
Tatsuhiro Tsujikawa
57c1db3db4
Merge pull request #2044 from nghttp2/speed-up-git-clone
...
Speed up git clone
2024-01-22 17:43:45 +09:00
Tatsuhiro Tsujikawa
cc963b4862
Speed up git clone
2024-01-22 17:15:32 +09:00
Tatsuhiro Tsujikawa
2bccc5cf70
Merge pull request #2043 from nghttp2/release-speed-up-git-submodule
...
makerelease.sh: Speed up git submodule
2024-01-21 21:15:29 +09:00
Tatsuhiro Tsujikawa
93404696ac
makerelease.sh: Speed up git submodule
2024-01-21 19:50:01 +09:00
Tatsuhiro Tsujikawa
a0fc33ecd5
Bump package version
2024-01-21 19:45:50 +09:00
Tatsuhiro Tsujikawa
4c250df318
Update bash_completion
2024-01-21 18:07:18 +09:00
Tatsuhiro Tsujikawa
53fa55655d
Update manual pages
2024-01-21 18:06:56 +09:00
Tatsuhiro Tsujikawa
a3e943138a
Bump package and library versions
2024-01-21 18:03:45 +09:00
Tatsuhiro Tsujikawa
f2fd137715
Update AUTHORS
2024-01-21 17:59:57 +09:00
Tatsuhiro Tsujikawa
830b3b10b0
Merge pull request #2042 from nghttp2/src-avoid-copy
...
src: Avoid copies
2024-01-21 17:58:18 +09:00
Tatsuhiro Tsujikawa
c5ac2f221d
src: Avoid copies
2024-01-21 17:38:55 +09:00
Tatsuhiro Tsujikawa
caaa3fa293
Merge pull request #2041 from nghttp2/bump-ngtcp2
...
Bump ngtcp2 to v1.2.0
2024-01-21 17:01:51 +09:00
Tatsuhiro Tsujikawa
1a8456e8ff
Bump ngtcp2 to v1.2.0
2024-01-21 16:31:02 +09:00
Tatsuhiro Tsujikawa
dd2b3c3f26
Merge pull request #2040 from nghttp2/bump-go-nghttp2
...
Bump go-nghttp2 and go mod tidy
2024-01-21 16:22:39 +09:00
Tatsuhiro Tsujikawa
4af5fc041a
Bump go-nghttp2 and go mod tidy
2024-01-21 15:53:52 +09:00
Tatsuhiro Tsujikawa
0509a14c0f
Merge pull request #2039 from nghttp2/bump-neverbleed
...
Bump neverbleed
2024-01-21 15:42:12 +09:00
Tatsuhiro Tsujikawa
c9c188ceca
Bump neverbleed
2024-01-21 13:59:19 +09:00
Tatsuhiro Tsujikawa
3982bde360
Merge pull request #2038 from nghttp2/bump-gomod
...
Bump go modules
2024-01-21 13:58:42 +09:00
Tatsuhiro Tsujikawa
aca43d8726
Bump go modules
2024-01-21 13:32:01 +09:00
Tatsuhiro Tsujikawa
d4f07f2096
Merge pull request #2037 from nghttp2/ci-add-aws-lc-build
...
ci: Add aws-lc builds
2024-01-21 13:30:25 +09:00
Tatsuhiro Tsujikawa
a193fb96b8
ci: Add aws-lc builds
2024-01-21 12:48:21 +09:00
Tatsuhiro Tsujikawa
6d94f9ee16
Merge pull request #2036 from nghttp2/revert-nghttpx-h3-reset-stream
...
Revert "nghttpx: Shutdown h3 stream write if reset by a remote endpoint"
2024-01-18 18:26:55 +09:00
Tatsuhiro Tsujikawa
da35daab51
Revert "nghttpx: Shutdown h3 stream write if reset by a remote endpoint"
...
This reverts commit e103726f4d .
2024-01-18 18:00:18 +09:00
Tatsuhiro Tsujikawa
48168eacdb
Merge pull request #2034 from nghttp2/add-debian-frontend
...
Specify DEBIAN_FRONTEND=noninteractive
2024-01-15 18:26:03 +09:00
Tatsuhiro Tsujikawa
a27d535f47
Specify DEBIAN_FRONTEND=noninteractive
2024-01-15 18:00:48 +09:00
Tatsuhiro Tsujikawa
3a173dcc1f
Merge pull request #2033 from nghttp2/fix-typo
...
Fix typo
2024-01-15 17:49:46 +09:00
Tatsuhiro Tsujikawa
619dd15e9a
Fix typo
2024-01-15 17:27:28 +09:00
Tatsuhiro Tsujikawa
6bdeed14fd
Merge pull request #2032 from nghttp2/dependabot/go_modules/github.com/quic-go/quic-go-0.37.7
...
build(deps): bump github.com/quic-go/quic-go from 0.35.1 to 0.37.7
2024-01-11 00:37:23 +09:00
dependabot[bot]
683c1ab16d
build(deps): bump github.com/quic-go/quic-go from 0.35.1 to 0.37.7
...
Bumps [github.com/quic-go/quic-go](https://github.com/quic-go/quic-go ) from 0.35.1 to 0.37.7.
- [Release notes](https://github.com/quic-go/quic-go/releases )
- [Changelog](https://github.com/quic-go/quic-go/blob/master/Changelog.md )
- [Commits](https://github.com/quic-go/quic-go/compare/v0.35.1...v0.37.7 )
---
updated-dependencies:
- dependency-name: github.com/quic-go/quic-go
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-01-10 15:12:00 +00:00
Tatsuhiro Tsujikawa
278b2cd004
Merge pull request #2030 from anthonyalayo/anthonyalayo-patch-cmake-3.5
...
Update minimum CMake version to 3.5
2024-01-09 17:12:41 +09:00
Anthony Alayo
e2b2a5a8d6
Update minimum CMake version to 3.5
2024-01-07 16:19:46 -08:00
Tatsuhiro Tsujikawa
837f0c67c7
Merge pull request #1996 from hrxi/pr_less_config
...
Have less stuff in config.h
2024-01-03 15:51:41 +09:00
Tatsuhiro Tsujikawa
fe1b963d38
Merge pull request #2027 from anthonyalayo/anthonyalayo-patch-1
...
Not finding packages when `ENABLE_LIB_ONLY` is set
2024-01-03 15:30:34 +09:00
Anthony Alayo
3bce84c0a0
Not finding packages when ENABLE_LIB_ONLY is set
2024-01-02 14:54:13 -08:00
hrxi
d002e9631c
Don't get type sizes at configure time
...
This should speed up configuring minimally.
2023-12-29 15:12:43 +01:00
hrxi
1348b850bc
<time.h> is a standard header, don't check for it
2023-12-29 15:12:43 +01:00
Tatsuhiro Tsujikawa
4998cfcf29
Merge pull request #2026 from nghttp2/h2load-header-ttfb-fix
...
H2load header ttfb fix
2023-12-28 14:57:19 +09:00
Tatsuhiro Tsujikawa
49d36209bf
Merge pull request #2025 from nghttp2/remove-trailing-whitespace
...
nghttpx: Remove a trailing whitespace
2023-12-28 14:47:55 +09:00
Tatsuhiro Tsujikawa
d537e16a47
nghttpx: Remove a trailing whitespace
2023-12-28 14:11:34 +09:00
Tatsuhiro Tsujikawa
04a14ee3e2
h2load: Fix bug that ttfb is not recorded if h3 stream has no data
2023-12-27 19:49:27 +09:00
Tatsuhiro Tsujikawa
7209bff091
h2load: Consider all h2 HEADERS when counting bytes and recording ttfb
2023-12-27 19:49:21 +09:00
Tatsuhiro Tsujikawa
05b63f6126
Merge pull request #2024 from nghttp2/app-fix
...
App fix
2023-12-27 19:33:30 +09:00
Tatsuhiro Tsujikawa
20058af7ae
h2load: Ignore 1xx status code
2023-12-27 19:06:19 +09:00
Tatsuhiro Tsujikawa
9ae86f6198
nghttpd: Free SSL_CTX on exit
2023-12-27 19:05:56 +09:00
Tatsuhiro Tsujikawa
ad199fe46d
Merge pull request #2023 from nghttp2/nghttpx-set-recv-max-early-data
...
nghttpx: OpenSSL needs SSL_CTX_set_recv_max_early_data
2023-12-27 17:36:56 +09:00
Tatsuhiro Tsujikawa
e6713e850e
nghttpx: OpenSSL needs SSL_CTX_set_recv_max_early_data
...
OpenSSL needs SSL_CTX_set_recv_max_early_data as well as
SSL_CTX_set_max_early_data to properly set acceptable max early data
size.
2023-12-27 17:06:24 +09:00
Tatsuhiro Tsujikawa
1544abac7a
Merge pull request #2022 from nghttp2/cmake-require-openssl111
...
cmake: Require OpenSSL >= 1.1.1
2023-12-25 18:02:41 +09:00
Tatsuhiro Tsujikawa
87b3e5abec
cmake: Require OpenSSL >= 1.1.1
2023-12-25 17:22:05 +09:00
Tatsuhiro Tsujikawa
5ba03f63c6
Merge pull request #2021 from nghttp2/remove-end-to-end-py
...
Remove end_to_end.py
2023-12-24 16:09:11 +09:00
Tatsuhiro Tsujikawa
684397a675
Merge pull request #2020 from nghttp2/remove-npn
...
Remove NPN
2023-12-24 16:08:16 +09:00
Tatsuhiro Tsujikawa
361e5d3066
Remove end_to_end.py
2023-12-24 12:38:00 +09:00
Tatsuhiro Tsujikawa
c306390c93
Add nghttp2_select_alpn and deprecate nghttp2_select_next_protocol
2023-12-24 12:29:07 +09:00
Tatsuhiro Tsujikawa
66364abf73
nghttpx: Add --alpn-list and deprecate --npn-list
2023-12-24 12:29:07 +09:00
Tatsuhiro Tsujikawa
5d68d1dc7a
h2load: Add --alpn-list and deprecate --npn-list
2023-12-24 12:29:07 +09:00
Tatsuhiro Tsujikawa
6c01530ff3
Remove NPN
2023-12-24 12:29:07 +09:00
Tatsuhiro Tsujikawa
69e15e8371
Merge pull request #2019 from nghttp2/drop-old-openssl-part2
...
Drop old OpenSSL support part 2
2023-12-24 00:14:08 +09:00
Tatsuhiro Tsujikawa
41857be937
Drop old OpenSSL support part 2
...
All OpenSSLs that we support have ALPN and SSL_get_server_tmp_key.
2023-12-23 19:49:33 +09:00
Tatsuhiro Tsujikawa
51e9d0c08f
Merge pull request #2017 from nghttp2/drop-old-openssl
...
Drop old OpenSSL support
2023-12-23 16:59:57 +09:00
Tatsuhiro Tsujikawa
841d602fc8
Drop old OpenSSL support
...
Drop old OpenSSL support and require OpenSSL >= 1.1.1. For Libressl,
the reasonably recent versions are required.
2023-12-23 16:44:04 +09:00
Tatsuhiro Tsujikawa
35d76d2278
Merge pull request #2016 from nghttp2/boringssl-set-groups-list
...
boringssl has SSL_CTX_set1_groups_list
2023-12-19 19:30:57 +09:00
Tatsuhiro Tsujikawa
add1bcd1dc
boringssl has SSL_CTX_set1_groups_list
2023-12-19 18:52:16 +09:00
Tatsuhiro Tsujikawa
db800f73f1
Merge pull request #2013 from nghttp2/support-aws-lc
...
src: Support building with aws-lc
2023-12-19 18:19:50 +09:00
Tatsuhiro Tsujikawa
39d093fc45
Merge pull request #2014 from nghttp2/dependabot/github_actions/actions/upload-artifact-4
...
build(deps): bump actions/upload-artifact from 3 to 4
2023-12-19 17:18:10 +09:00
Tatsuhiro Tsujikawa
a30fb9917e
Merge pull request #2015 from nghttp2/dependabot/go_modules/golang.org/x/crypto-0.17.0
...
build(deps): bump golang.org/x/crypto from 0.15.0 to 0.17.0
2023-12-19 17:10:59 +09:00
dependabot[bot]
4065f9801d
build(deps): bump golang.org/x/crypto from 0.15.0 to 0.17.0
...
Bumps [golang.org/x/crypto](https://github.com/golang/crypto ) from 0.15.0 to 0.17.0.
- [Commits](https://github.com/golang/crypto/compare/v0.15.0...v0.17.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/crypto
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-12-18 23:59:31 +00:00
dependabot[bot]
25898e4216
build(deps): bump actions/upload-artifact from 3 to 4
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 3 to 4.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-12-18 14:32:07 +00:00
Tatsuhiro Tsujikawa
9354d4a84f
src: Support building with aws-lc
2023-12-18 19:50:57 +09:00
Tatsuhiro Tsujikawa
2bbbbe207e
Merge pull request #2012 from nghttp2/do-not-detect-openssl3.2-as-quictls
...
Avoid detecting OpenSSL 3.2 as quictls
2023-12-16 16:45:56 +09:00
Tatsuhiro Tsujikawa
826a2a7b63
Avoid detecting OpenSSL 3.2 as quictls
...
Previously, SSL_is_quic is used to detect quictls. But OpenSSL 3.2
has added it as a part of its own QUIC implementation which breaks our
script. Use SSL_provide_quic_data to correctly identify quictls and
avoid OpenSSL 3.2.
2023-12-16 16:25:12 +09:00
Tatsuhiro Tsujikawa
4bfb33bdb4
Merge pull request #2011 from bwncp/static-msvc
...
cmake: bring back ENABLE_STATIC_CRT
2023-12-16 15:49:14 +09:00
Bernhard Walle
1b70b8ca3a
cmake: bring back ENABLE_STATIC_CRT
...
While `ENABLE_STATIC_CRT` is still present in CMakeOptions.txt, it has
been removed by 81c199dd . I think this was by accident.
Add it again, otherwise our Windows builds will fail.
2023-12-14 11:44:33 +01:00
Tatsuhiro Tsujikawa
09936f47a0
Merge pull request #2010 from nghttp2/dependabot/github_actions/actions/setup-go-5
...
build(deps): bump actions/setup-go from 4 to 5
2023-12-14 09:05:17 +09:00
dependabot[bot]
ed9a438b62
build(deps): bump actions/setup-go from 4 to 5
...
Bumps [actions/setup-go](https://github.com/actions/setup-go ) from 4 to 5.
- [Release notes](https://github.com/actions/setup-go/releases )
- [Commits](https://github.com/actions/setup-go/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: actions/setup-go
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-12-11 14:13:04 +00:00
Tatsuhiro Tsujikawa
8b26ad55c3
Merge pull request #1997 from hrxi/pr_windows_h
...
Use `#include <windows.h>` instead of `#include <sysinfoapi.h>`
2023-12-09 16:26:50 +09:00
hrxi
7945e4d398
Use #include <windows.h> instead of #include <sysinfoapi.h>
...
This is the recommended way of including Windows headers:
https://learn.microsoft.com/en-us/windows/win32/api/sysinfoapi/nf-sysinfoapi-gettickcount64
> Header: sysinfoapi.h (include Windows.h)
2023-12-06 16:54:31 +01:00
Tatsuhiro Tsujikawa
9d030c16fa
Merge pull request #2009 from nghttp2/cmake-quic-pkg-vers
...
cmake: Set minimum quic package versions
2023-11-26 17:21:49 +09:00
Tatsuhiro Tsujikawa
147544bbaa
cmake: Set minimum quic package versions
2023-11-26 16:59:43 +09:00
Tatsuhiro Tsujikawa
6cf162b42d
Merge pull request #2008 from nghttp2/http3-resp-pri
...
Use nghttp3_pri_parse_priority added since nghttp3 v1.1.0
2023-11-26 16:59:18 +09:00
Tatsuhiro Tsujikawa
15a9562697
Use nghttp3_pri_parse_priority added since nghttp3 v1.1.0
2023-11-26 16:43:35 +09:00
Tatsuhiro Tsujikawa
21d6bee5aa
Merge pull request #2007 from nghttp2/bump-libbpf
...
Bump libbpf to v1.3.0
2023-11-26 16:42:56 +09:00
Tatsuhiro Tsujikawa
90f765f516
Bump libbpf to v1.3.0
2023-11-26 16:21:49 +09:00
Tatsuhiro Tsujikawa
d5e9b2efef
Merge pull request #2006 from nghttp2/bump-ngtcp2
...
Bump ngtcp2 and nghttp3
2023-11-26 16:21:09 +09:00
Tatsuhiro Tsujikawa
5e81e58f3f
Bump ngtcp2 and nghttp3
2023-11-26 15:56:57 +09:00
Tatsuhiro Tsujikawa
ba81277614
Merge pull request #2000 from nghttp2/h2load-fix-ipv6-authority
...
h2load: Fix IPv6 address in :authority
2023-11-22 19:54:11 +09:00
Tatsuhiro Tsujikawa
124e654af4
h2load: Fix IPv6 address in :authority
2023-11-22 19:37:17 +09:00
Tatsuhiro Tsujikawa
9fb3cffefe
Merge pull request #2002 from nghttp2/cmake-remove-itprep
...
cmake: Remove itprep target
2023-11-22 19:36:41 +09:00
Tatsuhiro Tsujikawa
f4bdc2a23d
cmake: Remove itprep target
2023-11-22 19:05:20 +09:00
Tatsuhiro Tsujikawa
c7c8b50443
Merge pull request #2001 from nghttp2/bump-go-pkgs
...
Bump go packages
2023-11-22 18:55:04 +09:00
Tatsuhiro Tsujikawa
86d12faf4d
Bump go packages
2023-11-22 18:11:57 +09:00
Tatsuhiro Tsujikawa
d07a3d2a24
Merge pull request #1995 from nghttp2/check-clock-monotonic
...
Check whether CLOCK_MONOTONIC is declared
2023-11-06 19:39:06 +09:00
Tatsuhiro Tsujikawa
5d2b75964f
Check whether CLOCK_MONOTONIC is declared
2023-11-06 19:07:23 +09:00
Tatsuhiro Tsujikawa
4c0d4f769f
Merge pull request #1992 from nghttp2/nghttpx-propagate-backend-priority-to-frontend
...
nghttpx: Propagate stream priority from backend to frontend
2023-11-05 17:17:37 +09:00
Tatsuhiro Tsujikawa
ebd2555fcc
nghttpx: Propagate stream priority from backend to frontend
2023-11-05 16:23:07 +09:00
Tatsuhiro Tsujikawa
9b0114e4c9
Merge pull request #1991 from nghttp2/get-and-parse-extpri
...
Add API to get and parse RFC 9218 priority
2023-11-05 16:22:38 +09:00
Tatsuhiro Tsujikawa
eaedf85f3e
Add API to get and parse RFC 9218 priority
2023-11-05 16:02:05 +09:00
Tatsuhiro Tsujikawa
ce6b91e4de
Merge pull request #1990 from nghttp2/prefer-file-name-macro
...
nghttpx: Prefer __FILE_NAME__ if defined
2023-11-03 18:49:32 +09:00
Tatsuhiro Tsujikawa
6b54081dc6
nghttpx: Prefer __FILE_NAME__ if defined
2023-11-03 18:00:49 +09:00
Tatsuhiro Tsujikawa
ef947bd339
Merge pull request #1989 from nghttp2/update-AX_CXX_COMPILE_STDCXX
...
Update ax_cxx_compile_stdcxx.m4
2023-11-02 19:35:36 +09:00
Tatsuhiro Tsujikawa
ccd6ac458f
Update ax_cxx_compile_stdcxx.m4
2023-11-02 18:40:05 +09:00
Tatsuhiro Tsujikawa
884641836b
Merge pull request #1988 from nghttp2/bump-quictls
...
Bump quictls to 3.1.4+quic
2023-10-29 18:37:53 +09:00
Tatsuhiro Tsujikawa
bd9d408f53
Merge pull request #1987 from nghttp2/bump-clang-format
...
Bump clang format
2023-10-29 18:00:18 +09:00
Tatsuhiro Tsujikawa
c7dd68015c
Bump quictls to 3.1.4+quic
2023-10-29 17:48:20 +09:00
Tatsuhiro Tsujikawa
42579964b9
clang-format
2023-10-29 17:36:27 +09:00
Tatsuhiro Tsujikawa
241379ef2b
Bump clang-format to 15
2023-10-29 17:36:27 +09:00
Tatsuhiro Tsujikawa
78d85a459c
Merge pull request #1986 from nghttp2/bump-clang
...
Bump clang to 15
2023-10-29 17:14:41 +09:00
Tatsuhiro Tsujikawa
ddbf49bc7e
Bump clang to 15
2023-10-29 16:53:55 +09:00
Tatsuhiro Tsujikawa
2643b6b0c0
Bump package version
2023-10-27 21:39:23 +09:00
Tatsuhiro Tsujikawa
e2bc59bec9
Update manual pages
2023-10-27 20:59:04 +09:00
Tatsuhiro Tsujikawa
28dc67e2c2
Bump package and library versions
2023-10-27 20:59:04 +09:00
Tatsuhiro Tsujikawa
f2beef8675
Update AUTHORS
2023-10-27 20:59:04 +09:00
Tatsuhiro Tsujikawa
c00452b686
Merge pull request #1985 from nghttp2/bump-neverbleed
...
Bump neverbleed
2023-10-27 20:54:15 +09:00
Tatsuhiro Tsujikawa
09832b9672
Bump neverbleed
2023-10-27 20:02:31 +09:00
Tatsuhiro Tsujikawa
8e01a772ae
Merge pull request #1983 from nghttp2/bump-ngtcp2
...
Bump ngtcp2
2023-10-23 21:44:17 +09:00
Tatsuhiro Tsujikawa
f8670c565c
Bump ngtcp2
2023-10-23 21:30:22 +09:00
Tatsuhiro Tsujikawa
d3e7e9554c
Merge pull request #1981 from nghttp2/bump-neverbleed
...
Bump neverbleed
2023-10-20 19:19:45 +09:00
Tatsuhiro Tsujikawa
35e15efd37
Bump neverbleed
2023-10-20 18:51:53 +09:00
Tatsuhiro Tsujikawa
54a5d271d3
Merge pull request #1977 from nghttp2/fix-cygwin-build
...
Prefer clock_gettime if __CYGWIN__ defined
2023-10-19 00:10:30 +09:00
Tatsuhiro Tsujikawa
ba74559c04
Merge pull request #1979 from nghttp2/fix-win-map-printf-warnings
...
windows: Fix warnings
2023-10-18 22:02:16 +09:00
Tatsuhiro Tsujikawa
3209a0b6c7
Merge pull request #1978 from nghttp2/configure-cygwin
...
Configure cygwin
2023-10-18 21:49:31 +09:00
Tatsuhiro Tsujikawa
723f131f76
windows: Fix warnings
2023-10-18 21:39:24 +09:00
Tatsuhiro Tsujikawa
164ebe22bf
Do not require strict c++ mode
2023-10-18 21:30:49 +09:00
Tatsuhiro Tsujikawa
ec362f77e4
tests: Define NGHTTP2_STATICLIB
2023-10-18 21:30:33 +09:00
Tatsuhiro Tsujikawa
c7536993cf
Prefer clock_gettime if __CYGWIN__ defined
2023-10-18 21:13:57 +09:00
Tatsuhiro Tsujikawa
c16e5ad42e
Merge pull request #1973 from nghttp2/nghttpx-stricter-transfer-encoding-check
...
nghttpx: Stricter transfer-encoding checks
2023-10-17 21:05:27 +09:00
Tatsuhiro Tsujikawa
56b762fa55
Merge pull request #1975 from nghttp2/refactor-char-comp
...
Refactor character comparison
2023-10-17 20:57:52 +09:00
Tatsuhiro Tsujikawa
0117e7f6fc
nghttpx: Stricter transfer-encoding checks
2023-10-17 20:20:24 +09:00
Tatsuhiro Tsujikawa
2a37feb1eb
Merge pull request #1974 from nghttp2/integration-servertester-h3
...
Integration servertester h3
2023-10-17 20:15:47 +09:00
Tatsuhiro Tsujikawa
475c7ed2eb
integration: Enable http3 test with cmake
2023-10-17 19:42:37 +09:00
Tatsuhiro Tsujikawa
ee1ca9cd10
integration: Move serverTester http3 function to its own file
2023-10-17 19:42:37 +09:00
Tatsuhiro Tsujikawa
d555153e51
Refactor character comparison
2023-10-17 18:59:34 +09:00
Tatsuhiro Tsujikawa
e14ddc840e
Merge pull request #1970 from nghttp2/bump-ngtcp2
...
Bump ngtcp2
2023-10-15 23:09:36 +09:00
Tatsuhiro Tsujikawa
013e46b138
bbrv2 has been removed
2023-10-15 22:45:23 +09:00
Tatsuhiro Tsujikawa
df5f1ee67b
Bump ngtcp2 and nghttp3
2023-10-15 22:45:13 +09:00
Tatsuhiro Tsujikawa
4e9bca7218
Merge pull request #1956 from av223119/master
...
ngtcp2 has merged BBR and BBRv2 under BBR (fixes issue #1955 )
2023-10-15 22:39:32 +09:00
Tatsuhiro Tsujikawa
e8bfe253ae
Merge pull request #1969 from nghttp2/update-doc
...
Update doc
2023-10-15 15:16:31 +09:00
Tatsuhiro Tsujikawa
9585d54b31
We no longer make a release in every month
2023-10-15 12:17:45 +09:00
Tatsuhiro Tsujikawa
b25f9cc7d4
Update security procedure
...
We sometimes cannot follow the current procedure for some reasons,
therefore remove the relevant portion of text.
2023-10-15 12:17:45 +09:00
Tatsuhiro Tsujikawa
bd92902560
Merge pull request #1967 from vszakats/cmake-fast-warnopt-detection
...
cmake: speed up warning option detection
2023-10-14 22:40:46 +09:00
Viktor Szakats
10a77ce888
cmake: display WARNCXXFLAGS flags in summary
2023-10-14 10:27:17 +00:00
Viktor Szakats
81c199dd9b
cmake: speed up warning option detection
2023-10-14 10:27:17 +00:00
Tatsuhiro Tsujikawa
3b82572b9e
Merge pull request #1965 from nghttp2/dependabot/go_modules/golang.org/x/net-0.17.0
...
Bump golang.org/x/net from 0.15.0 to 0.17.0
2023-10-14 12:14:08 +09:00
dependabot[bot]
9d85ab415f
Bump golang.org/x/net from 0.15.0 to 0.17.0
...
Bumps [golang.org/x/net](https://github.com/golang/net ) from 0.15.0 to 0.17.0.
- [Commits](https://github.com/golang/net/compare/v0.15.0...v0.17.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/net
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-10-11 23:10:59 +00:00
Tatsuhiro Tsujikawa
d0358c0063
Merge pull request #1964 from nghttp2/nghttpx-h3-reset-stream
...
nghttpx: Shutdown h3 stream write if reset by a remote endpoint
2023-10-11 19:48:29 +09:00
Tatsuhiro Tsujikawa
e103726f4d
nghttpx: Shutdown h3 stream write if reset by a remote endpoint
2023-10-11 19:13:04 +09:00
Tatsuhiro Tsujikawa
4262c90148
Merge pull request #1963 from nghttp2/fix-build-error
...
Fix build error when both clock_gettime and GetTickCount64 are available
2023-10-11 17:49:46 +09:00
Tatsuhiro Tsujikawa
bf8f419ca9
Fix build error when both clock_gettime and GetTickCount64 are available
2023-10-11 17:19:05 +09:00
Tatsuhiro Tsujikawa
cccb6ad2c9
Bump package version
2023-10-10 23:10:21 +09:00
Tatsuhiro Tsujikawa
6f41cc7271
Update manual pages
2023-10-10 22:57:01 +09:00
Tatsuhiro Tsujikawa
9b781ca734
Bump package and library versions
2023-10-10 22:57:01 +09:00
Tatsuhiro Tsujikawa
aa0973caf5
Merge pull request #1961 from nghttp2/rework-session-mgmt
...
Rework session management
2023-10-10 22:55:23 +09:00
Tatsuhiro Tsujikawa
72b4af6143
Rework session management
2023-10-10 22:41:58 +09:00
Tatsuhiro Tsujikawa
d40829b133
Merge pull request #1959 from nghttp2/fix-clang-format
...
Fix clang-format
2023-10-05 21:37:07 +09:00
Tatsuhiro Tsujikawa
939506b68b
Fix clang-format
2023-10-05 20:54:00 +09:00
Tatsuhiro Tsujikawa
e62ef924fb
Merge pull request #1958 from nghttp2/nghttpx-fix
...
nghttpx: Fix bug that --single-process does not work
2023-10-01 15:39:23 +09:00
Tatsuhiro Tsujikawa
8bad736d48
nghttpx: Fix bug that --single-process does not work
2023-10-01 15:18:39 +09:00
Tatsuhiro Tsujikawa
e761014ca5
Merge pull request #1957 from nghttp2/apps-fix
...
Apps fix
2023-10-01 12:30:44 +09:00
Tatsuhiro Tsujikawa
e6ca4ff173
nghttpd: Do not read too greedy for TLS connection
2023-10-01 11:59:53 +09:00
Tatsuhiro Tsujikawa
62d58bdabc
nghttpx: Fix the bug that TLS connection is not rate limited
2023-09-30 22:53:31 +09:00
Alexandr Vlasov
775e4f1bad
ngtcp2 has merged BBR and BBRv2 under BBR
2023-09-29 14:07:52 +02:00
Tatsuhiro Tsujikawa
e37fe5543f
Merge pull request #1945 from nghttp2/bump-quictls
...
Bump quictls
2023-09-23 16:25:54 +09:00
Tatsuhiro Tsujikawa
d54750b365
Merge pull request #1953 from nghttp2/nghttpx-field-name-lowercase
...
nghttpx: Header field name must be lowercase
2023-09-22 11:02:01 +09:00
Tatsuhiro Tsujikawa
8ebe7b10fc
nghttpx: Header field name must be lowercase
2023-09-22 10:09:54 +09:00
Tatsuhiro Tsujikawa
5c1b0f261e
Merge pull request #1951 from nghttp2/docker-debian12
...
docker: Bump base image to debian 12
2023-09-15 21:41:10 +09:00
Tatsuhiro Tsujikawa
0866ceffc7
Merge pull request #1947 from nghttp2/dependabot/github_actions/actions/upload-artifact-3
...
Bump actions/upload-artifact from 1 to 3
2023-09-15 20:41:41 +09:00
Tatsuhiro Tsujikawa
3c6f94258f
Merge pull request #1949 from nghttp2/dependabot/github_actions/actions/checkout-4
...
Bump actions/checkout from 3 to 4
2023-09-15 19:36:46 +09:00
Tatsuhiro Tsujikawa
959a55f95f
Merge pull request #1948 from nghttp2/dependabot/github_actions/actions/setup-go-4
...
Bump actions/setup-go from 3 to 4
2023-09-15 19:12:09 +09:00
dependabot[bot]
7d0d8775c9
Bump actions/setup-go from 3 to 4
...
Bumps [actions/setup-go](https://github.com/actions/setup-go ) from 3 to 4.
- [Release notes](https://github.com/actions/setup-go/releases )
- [Commits](https://github.com/actions/setup-go/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: actions/setup-go
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-09-15 09:50:01 +00:00
Tatsuhiro Tsujikawa
52cb8c35c8
Merge pull request #1950 from nghttp2/bump-golang.org/x/net
...
Bump golang.org/x/net to v0.15.0
2023-09-15 18:48:49 +09:00
Tatsuhiro Tsujikawa
d19bc4bb67
Bump golang.org/x/net to v0.15.0
2023-09-15 18:28:01 +09:00
Tatsuhiro Tsujikawa
1ee16fdeca
docker: Bump base image to debian 12
2023-09-15 18:13:39 +09:00
dependabot[bot]
b809beacab
Bump actions/checkout from 3 to 4
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-09-15 08:55:19 +00:00
dependabot[bot]
8cafb048be
Bump actions/upload-artifact from 1 to 3
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 1 to 3.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/v1...v3 )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-09-15 08:55:00 +00:00
Tatsuhiro Tsujikawa
627b2408e5
Merge pull request #1946 from nghttp2/dependabot-actions
...
Add dependabot to update actions
2023-09-15 17:44:06 +09:00
Tatsuhiro Tsujikawa
0d36a2a050
Add dependabot to update actions
2023-09-15 17:13:09 +09:00
Tatsuhiro Tsujikawa
06da18089f
Bump quictls
2023-09-12 18:52:06 +09:00
Tatsuhiro Tsujikawa
19697bd44a
Merge pull request #1944 from nghttp2/bump-ngtcp2
...
Bump ngtcp2
2023-09-12 18:50:02 +09:00
Tatsuhiro Tsujikawa
2e6c8ddd15
Bump ngtcp2
2023-09-06 23:23:57 +09:00
Tatsuhiro Tsujikawa
b7f9853968
Bump package version
2023-09-04 18:32:43 +09:00
Tatsuhiro Tsujikawa
80d05fe917
Merge pull request #1943 from nghttp2/update-dockerfile
...
Update Dockerfile
2023-09-04 18:27:04 +09:00
Tatsuhiro Tsujikawa
08c472230a
Update Dockerfile
2023-09-04 18:11:18 +09:00
Tatsuhiro Tsujikawa
47ecf35737
Update manual pages
2023-09-04 18:04:09 +09:00
Tatsuhiro Tsujikawa
b48355b67e
Bump package and library versions
2023-09-03 19:45:03 +09:00
Tatsuhiro Tsujikawa
0f768bdaab
Merge pull request #1942 from nghttp2/bump-libbpf
...
Bump libbpf to v1.2.2
2023-09-03 19:44:37 +09:00
Tatsuhiro Tsujikawa
05f93ca729
Bump libbpf to v1.2.2
2023-09-03 19:26:17 +09:00
Tatsuhiro Tsujikawa
d70f0013d6
Merge pull request #1941 from nghttp2/bump-llhttp
...
Bump llhttp to 926c982942eb53a13f01c1e9e6b19bd3b196e7dd
2023-09-03 19:25:50 +09:00
Tatsuhiro Tsujikawa
d5cb882e62
Bump llhttp to 926c982942eb53a13f01c1e9e6b19bd3b196e7dd
2023-09-03 19:06:33 +09:00
Tatsuhiro Tsujikawa
2a382a2ce9
Merge pull request #1940 from nghttp2/simplify-unique_ptr-release
...
nghttpx: Simplify std::unique_ptr get and release
2023-09-03 18:29:37 +09:00
Tatsuhiro Tsujikawa
c13b08f861
nghttpx: Simplify std::unique_ptr get and release
2023-09-03 18:11:53 +09:00
Tatsuhiro Tsujikawa
298f71ce4e
Merge pull request #1939 from nghttp2/bump-ngtcp2
...
Bump ngtcp2 and its dependencies
2023-09-03 15:02:54 +09:00
Tatsuhiro Tsujikawa
4114507587
Bump ngtcp2 and its dependencies
2023-09-03 13:17:39 +09:00
Tatsuhiro Tsujikawa
060d0ac455
Merge pull request #1937 from nghttp2/bump-quictls
...
Bump quictls
2023-08-05 19:35:12 +09:00
Tatsuhiro Tsujikawa
9a3c345f60
Bump quictls
2023-08-05 18:58:27 +09:00
Tatsuhiro Tsujikawa
98eb01aa3f
Merge pull request #1935 from nghttp2/cmsg-data
...
CMSG_DATA does not necessarily return an aligned pointer
2023-08-02 21:06:45 +09:00
Tatsuhiro Tsujikawa
de47400a48
CMSG_DATA does not necessarily return an aligned pointer
2023-08-02 18:46:39 +09:00
Tatsuhiro Tsujikawa
871cf8e5a2
Merge pull request #1934 from nghttp2/ecn
...
nghttpx: Rework sending and receiving ECN bits
2023-08-02 18:46:07 +09:00
Tatsuhiro Tsujikawa
6ace578e5b
nghttpx: Rework sending and receiving ECN bits
...
Now ECN is sent along with sendmsg ancillary message. With this
commit, ECN should work fine with the recent Mac OS.
2023-08-02 17:47:51 +09:00
Tatsuhiro Tsujikawa
7273ec17d3
Merge pull request #1931 from nghttp2/return-void
...
Return void
2023-07-16 16:15:49 +09:00
Tatsuhiro Tsujikawa
07b69bb06f
Make session_after_frame_sent2 return void
2023-07-15 16:27:38 +09:00
Tatsuhiro Tsujikawa
98df5b59e5
frame: Make functions that always succeed return void
2023-07-15 16:15:25 +09:00
Tatsuhiro Tsujikawa
cdfb517528
Make functions that always succeed return void
2023-07-15 15:36:50 +09:00
Tatsuhiro Tsujikawa
b16d4e951e
Bump library version due to the patch release
2023-07-14 22:53:52 +09:00
Tatsuhiro Tsujikawa
feb5ff560a
Merge pull request #1930 from nghttp2/fix-memory-leak
...
Fix memory leak
2023-07-14 21:56:30 +09:00
Tatsuhiro Tsujikawa
ce385d3f55
Fix memory leak
...
This commit fixes memory leak that happens when PUSH_PROMISE or
HEADERS frame cannot be sent, and nghttp2_on_stream_close_callback
fails with a fatal error. For example, if GOAWAY frame has been
received, a HEADERS frame that opens new stream cannot be sent.
This issue has already been made public via CVE-2023-35945 [1] issued
by envoyproxy/envoy project. During embargo period, the patch to fix
this bug was accidentally submitted to nghttp2/nghttp2 repository [2].
And they decided to disclose CVE early. I was notified just 1.5 hours
before disclosure. I had no time to respond.
PoC described in [1] is quite simple, but I think it is not enough to
trigger this bug. While it is true that receiving GOAWAY prevents a
client from opening new stream, and nghttp2 enters error handling
branch, in order to cause the memory leak,
nghttp2_session_close_stream function must return a fatal error.
nghttp2 defines 2 fatal error codes:
- NGHTTP2_ERR_NOMEM
- NGHTTP2_ERR_CALLBACK_FAILURE
NGHTTP2_ERR_NOMEM, as its name suggests, indicates out of memory. It
is unlikely that a process gets short of memory with this simple PoC
scenario unless application does something memory heavy processing.
NGHTTP2_ERR_CALLBACK_FAILURE is returned from application defined
callback function (nghttp2_on_stream_close_callback, in this case),
which indicates something fatal happened inside a callback, and a
connection must be closed immediately without any further action. As
nghttp2_on_stream_close_error_callback documentation says, any error
code other than 0 or NGHTTP2_ERR_CALLBACK_FAILURE is treated as fatal
error code. More specifically, it is treated as if
NGHTTP2_ERR_CALLBACK_FAILURE is returned. I guess that envoy returns
NGHTTP2_ERR_CALLBACK_FAILURE or other error code which is translated
into NGHTTP2_ERR_CALLBACK_FAILURE.
[1] https://github.com/envoyproxy/envoy/security/advisories/GHSA-jfxv-29pc-x22r
[2] https://github.com/nghttp2/nghttp2/pull/1929
2023-07-14 21:37:37 +09:00
Tatsuhiro Tsujikawa
82fc1163c6
Merge pull request #1928 from nghttp2/doc-bump-boringssl
...
doc: Bump boringssl
2023-07-12 18:06:28 +09:00
Tatsuhiro Tsujikawa
79d2b7f931
doc: Bump boringssl
2023-07-12 17:44:26 +09:00
Tatsuhiro Tsujikawa
4c1f1b0efc
Bump package version
2023-07-12 17:25:14 +09:00
Tatsuhiro Tsujikawa
989d69be01
Update manual pages
2023-07-12 17:20:52 +09:00
Tatsuhiro Tsujikawa
2143f46f45
Bump package version
2023-07-12 17:14:02 +09:00
Tatsuhiro Tsujikawa
5bbe86a713
Merge pull request #1927 from nghttp2/bump-macos
...
Bump macos to 12
2023-07-11 22:54:06 +09:00
Tatsuhiro Tsujikawa
3cc152a9a5
Bump macos to 12
2023-07-11 22:24:19 +09:00
Tatsuhiro Tsujikawa
693372b695
Merge pull request #1926 from nghttp2/bump-llhttp
...
Bump llhttp to a0e744f850d8101a51284868ffdf745bcfe4fbcc
2023-07-11 22:13:31 +09:00
Tatsuhiro Tsujikawa
43e6a01189
Bump llhttp to a0e744f850d8101a51284868ffdf745bcfe4fbcc
2023-07-11 21:24:11 +09:00
Tatsuhiro Tsujikawa
9dc39859fc
Merge pull request #1925 from nghttp2/nghttpx-randomize-initial-quic-pkt-num
...
nghttpx: Randomize initial QUIC packet number
2023-07-11 21:04:47 +09:00
Tatsuhiro Tsujikawa
5b350acc4c
nghttpx: Randomize initial QUIC packet number
2023-07-11 20:47:30 +09:00
Tatsuhiro Tsujikawa
42140d3ade
Merge pull request #1923 from nghttp2/bump-ngtcp2
...
Bump ngtcp2
2023-07-09 22:23:31 +09:00
Tatsuhiro Tsujikawa
dfa2a59f99
Bump ngtcp2
2023-07-09 21:09:43 +09:00
Tatsuhiro Tsujikawa
5c11ad80c0
Merge pull request #1920 from nghttp2/gro
...
h2load, nghttpx: Add UDP_GRO support
2023-06-25 19:35:13 +09:00
Tatsuhiro Tsujikawa
ee4de34a42
h2load, nghttpx: Add UDP_GRO support
2023-06-25 18:51:57 +09:00
Tatsuhiro Tsujikawa
892a6162ab
Merge pull request #1918 from nghttp2/mruby-cross
...
mruby: Support cross build for autotools
2023-06-24 16:32:40 +09:00
Tatsuhiro Tsujikawa
811b3554a7
mruby: Support cross build for autotools
...
Support mruby cross build, but now we are unable to specify host C/C++
compiler on cross build.
Do not pass compiler and linker flags because mruby does its own.
Cross build only works with autotools. It does not work with cmake.
2023-06-11 20:06:06 +09:00
Tatsuhiro Tsujikawa
e7f5940655
Merge pull request #1917 from nghttp2/bump-go-dep
...
Bump go package dependencies
2023-06-11 13:27:44 +09:00
Tatsuhiro Tsujikawa
e4ad2921e5
Bump go package dependencies
2023-06-11 13:03:34 +09:00
Tatsuhiro Tsujikawa
7872401f73
Merge pull request #1916 from nghttp2/bump-go
...
Bump go to 1.20
2023-06-11 13:02:50 +09:00
Tatsuhiro Tsujikawa
2277f7cc68
Bump go to 1.20
2023-06-11 12:05:55 +09:00
Tatsuhiro Tsujikawa
2c955ab76b
Merge pull request #1915 from nghttp2/fix-build-without-libev
...
Fix build error without libev
2023-06-08 20:31:41 +09:00
Tatsuhiro Tsujikawa
9fc1f85102
Fix build error without libev
...
Check libev availability, and guard the usage of libev in util.h.
2023-06-08 19:33:23 +09:00
Tatsuhiro Tsujikawa
2571f78ce7
Bump package version
2023-06-07 19:01:48 +09:00
Tatsuhiro Tsujikawa
ecbb12f609
Update manual pages
2023-06-07 18:44:22 +09:00
Tatsuhiro Tsujikawa
800e379690
Bump package version
2023-06-07 18:33:34 +09:00
Tatsuhiro Tsujikawa
45467a9bc3
Merge pull request #1913 from nghttp2/avoid-copies
...
Avoid copies
2023-06-05 22:44:28 +09:00
Tatsuhiro Tsujikawa
dc940764d7
Avoid copies
2023-06-05 20:56:51 +09:00
Tatsuhiro Tsujikawa
d53e3728f7
Merge pull request #1912 from nghttp2/bump-libbpf
...
Bump libbpf to v1.2.0
2023-06-04 19:50:44 +09:00
Tatsuhiro Tsujikawa
7414f030c3
Bump libbpf to v1.2.0
2023-06-04 19:05:05 +09:00
Tatsuhiro Tsujikawa
2674d77519
Merge pull request #1911 from nghttp2/bump-ngtcp2
...
Bump ngtcp2 and nghttp3
2023-06-04 18:37:28 +09:00
Tatsuhiro Tsujikawa
66bbe52576
Bump ngtcp2 and nghttp3
2023-06-04 17:22:57 +09:00
Tatsuhiro Tsujikawa
5f10d43c6b
Merge pull request #1910 from nghttp2/remove-unused-macro-bswap64
...
Remove unused macro bswap64
2023-05-29 18:54:25 +09:00
Tatsuhiro Tsujikawa
6dec3353ec
Remove unused macro bswap64
2023-05-29 17:45:11 +09:00
Tatsuhiro Tsujikawa
5e2bb54ee8
Merge pull request #1907 from nghttp2/avoid-ev_now
...
Avoid ev_now
2023-05-18 21:15:26 +09:00
Tatsuhiro Tsujikawa
018922b0b6
nghttpx: Avoid ev_now where monotonic clock is required
2023-05-18 19:16:24 +09:00
Tatsuhiro Tsujikawa
288b08e3d8
nghttpd: Avoid ev_now where monotonic clock is required
2023-05-18 19:16:24 +09:00
Tatsuhiro Tsujikawa
dbc607cfcc
h2load: Avoid ev_now
2023-05-18 19:16:24 +09:00
Tatsuhiro Tsujikawa
4e2de8808a
Merge pull request #1906 from nghttp2/h2load-quic-steady-clock
...
h2load: Use std::chrono::steady_clock for quic timestamp
2023-05-17 22:29:21 +09:00
Tatsuhiro Tsujikawa
71932baad7
h2load: Use std::chrono::steady_clock for quic timestamp
2023-05-17 21:03:21 +09:00
Tatsuhiro Tsujikawa
483daf3701
Merge pull request #1905 from nghttp2/h2load-fix-http3-upload-stall
...
h2load: Fix http3 upload stall
2023-05-16 23:20:29 +09:00
Tatsuhiro Tsujikawa
1534cd8cb7
h2load: Fix http3 upload stall
2023-05-16 22:50:07 +09:00
Tatsuhiro Tsujikawa
03496a8a0b
Generate PGP signatures for release tar balls
2023-05-11 17:03:06 +09:00
Tatsuhiro Tsujikawa
1a57bf110d
Merge pull request #1904 from nghttp2/nghttpx-bpf-error-handling
...
nghttpx: Consistent error handling and use of high-level API
2023-05-10 19:35:03 +09:00
Tatsuhiro Tsujikawa
5b83573d04
nghttpx: Consistent error handling and use of high-level API
2023-05-10 19:14:10 +09:00
Tatsuhiro Tsujikawa
0a8cac68f2
Bump package version
2023-05-10 18:11:21 +09:00
Tatsuhiro Tsujikawa
ed2ccce0e8
Generate .asc files
2023-05-10 17:27:53 +09:00
Tatsuhiro Tsujikawa
7a0e16510a
Update manual pages
2023-05-10 17:26:29 +09:00
Tatsuhiro Tsujikawa
f62b2b23b1
Bump package and library versions
2023-05-10 17:10:42 +09:00
Tatsuhiro Tsujikawa
5e8904e327
Merge pull request #1902 from nghttp2/bump-neverbleed
...
Bump neverbleed
2023-04-29 21:48:11 +09:00
Tatsuhiro Tsujikawa
26ab7c1475
Bump neverbleed
2023-04-29 21:13:57 +09:00
Tatsuhiro Tsujikawa
e392729d9f
Merge pull request #1901 from nghttp2/zerofill-z_stream
...
Initialize z_stream completely with zeros
2023-04-29 20:56:09 +09:00
Tatsuhiro Tsujikawa
0fbfc48716
Initialize z_stream completely with zeros
2023-04-29 19:27:20 +09:00
Tatsuhiro Tsujikawa
88e03cdaf0
Merge pull request #1900 from nghttp2/nghttpx-send-new-token-on-path-change
...
nghttpx: Send NEW_TOKEN on path change
2023-04-26 23:30:31 +09:00
Tatsuhiro Tsujikawa
7645ab89bc
nghttpx: Send NEW_TOKEN on path change
2023-04-26 23:10:31 +09:00
Tatsuhiro Tsujikawa
4f27509e67
Merge pull request #1899 from nghttp2/bump-ngtcp2
...
Bump ngtcp2
2023-04-26 21:08:26 +09:00
Tatsuhiro Tsujikawa
7a4e706b44
Bump ngtcp2
2023-04-26 19:10:50 +09:00
Tatsuhiro Tsujikawa
757bc3cbe9
Merge pull request #1898 from nghttp2/sfparse
...
Import ngtcp2/sfparse, Structured Field Values parser
2023-04-22 18:22:56 +09:00
Tatsuhiro Tsujikawa
2ee33fe8cd
Import ngtcp2/sfparse, Structured Field Values parser
2023-04-22 17:42:12 +09:00
Tatsuhiro Tsujikawa
cc1402bf44
Merge pull request #1897 from nghttp2/lazy-initialize-map-table
...
Initialize map table lazily
2023-04-22 17:31:44 +09:00
Tatsuhiro Tsujikawa
70690ce010
Initialize map table lazily
2023-04-22 17:04:52 +09:00
Tatsuhiro Tsujikawa
56fcb73cc4
Merge pull request #1896 from nghttp2/msvc-build-check
...
Msvc build check
2023-04-21 18:42:46 +09:00
Tatsuhiro Tsujikawa
84eecc015c
Fix implicit conversion warnings
2023-04-21 18:02:50 +09:00
Tatsuhiro Tsujikawa
4bb4ff06e3
Fix function signature
2023-04-21 18:02:33 +09:00
Tatsuhiro Tsujikawa
8610758e14
Include stdio.h to workaround error due to legacy CUnit snprintf macro
2023-04-21 17:46:06 +09:00
Tatsuhiro Tsujikawa
caf9d3abd5
Run msvc build check
2023-04-21 17:42:54 +09:00
Tatsuhiro Tsujikawa
51b0288f5d
Merge pull request #1892 from nghttp2/nghttpx-h3-write-event
...
nghttpx: write watcher should only be started upon blocking write
2023-03-25 19:07:14 +09:00
Tatsuhiro Tsujikawa
7fb488be15
nghttpx: write watcher should only be started upon blocking write
2023-03-25 18:36:35 +09:00
Tatsuhiro Tsujikawa
251d3f8743
Merge pull request #1891 from nghttp2/bump-ngtcp2
...
Bump ngtcp2 to v0.14.0
2023-03-25 18:35:53 +09:00
Tatsuhiro Tsujikawa
3676eb91e3
Bump ngtcp2 to v0.14.0
2023-03-25 17:35:59 +09:00
Tatsuhiro Tsujikawa
edfc6a8530
Merge pull request #1888 from nghttp2/fix-macos-setup
...
Add missing if condition to MacOS setup
2023-03-16 19:51:49 +09:00
Tatsuhiro Tsujikawa
448c68ef01
Add missing if condition to MacOS setup
2023-03-16 19:31:41 +09:00
Tatsuhiro Tsujikawa
7efbcfecff
Merge pull request #1887 from nghttp2/add-verify_hostname-tests
...
Add verify_hostname tests
2023-03-16 00:26:14 +09:00
Tatsuhiro Tsujikawa
de743aad4a
Add verify_hostname tests
2023-03-15 22:47:40 +09:00
Tatsuhiro Tsujikawa
c460afc2d9
Merge pull request #1886 from nghttp2/fix-compile-errors
...
Fix compile errors with clang-15
2023-03-15 22:21:58 +09:00
Tatsuhiro Tsujikawa
c03cd59274
Fix compile errors with clang-15
2023-03-15 21:57:45 +09:00
Tatsuhiro Tsujikawa
83993b1dbf
Merge pull request #1885 from nghttp2/nghttpx-fix-numeric-hostname-verify
...
nghttpx: Fix numeric hostname verification
2023-03-15 21:56:54 +09:00
Tatsuhiro Tsujikawa
cc14400096
nghttpx: Fix numeric hostname verification
2023-03-15 20:54:56 +09:00
Tatsuhiro Tsujikawa
ef7bb8ef9f
Merge pull request #1881 from nghttp2/nghttpx-fix-heap-use-after-free
...
nghttpx: Fix heap-use-after-free
2023-03-11 12:07:50 +09:00
Tatsuhiro Tsujikawa
bc6814eb5b
nghttpx: Fix heap-use-after-free
...
Fix heap-use-after-free introduced by
ddb667e8bf .
2023-03-11 11:51:08 +09:00
Tatsuhiro Tsujikawa
b8cb6efb37
Merge pull request #1880 from nghttp2/nghttpx-tweak-worker-process-handling
...
Nghttpx tweak worker process handling
2023-03-11 10:02:09 +09:00
Tatsuhiro Tsujikawa
83af9b504b
nghttpx: Wait for new worker process to be ready
...
Wait for new worker process to be ready before sending graceful
shutdown event to the existing worker processes to avoid down time
during configuration reload.
2023-03-10 22:27:57 +09:00
Tatsuhiro Tsujikawa
ddb667e8bf
nghttpx: Signal watcher should be global, not per WorkerProcess
2023-03-10 17:12:40 +09:00
Tatsuhiro Tsujikawa
704153e4cb
nghttpx: Wait for all worker processes to stop before quit
...
When quitting, wait for all worker processes to stop. Previously, we
just exit the event loop when the last process exits. But the because
of the bug, it does not work as intended.
2023-03-10 16:34:40 +09:00
Tatsuhiro Tsujikawa
39f6c08187
nghttpx: Update LogConfig::pid on fork
2023-03-10 16:30:32 +09:00
Tatsuhiro Tsujikawa
7628879e79
Merge pull request #1879 from nghttp2/workflow-permissions
...
Set workflow permissions
2023-03-08 19:07:45 +09:00
Tatsuhiro Tsujikawa
20173a59f0
Set workflow permissions
2023-03-08 18:27:03 +09:00
Tatsuhiro Tsujikawa
1e47a1984d
Merge pull request #1877 from nghttp2/sphinx-doc-enum
...
sphinx-doc understands :enum:
2023-03-06 17:08:47 +09:00
Tatsuhiro Tsujikawa
14268ccbaa
sphinx-doc understands :enum:
2023-03-06 16:52:57 +09:00
Tatsuhiro Tsujikawa
14cc308d53
Merge pull request #1874 from nghttp2/nghttpx-llhttp-resume-after-upgrade
...
nghttpx: Fix bug that causes 400 response after upgrade failure
2023-02-26 23:22:13 +09:00
Tatsuhiro Tsujikawa
bb024e3d82
nghttpx: Fix bug that causes 400 response after upgrade failure
2023-02-26 23:03:41 +09:00
Tatsuhiro Tsujikawa
1c62a2a923
Merge pull request #1873 from nghttp2/bump-go-mod
...
Bump go modules
2023-02-26 22:24:23 +09:00
Tatsuhiro Tsujikawa
094c60db89
Bump go modules
2023-02-26 21:58:27 +09:00
Tatsuhiro Tsujikawa
dc74b50cc9
Merge pull request #1872 from nghttp2/bump-mruby
...
Bump mruby to 3.2.0
2023-02-26 19:31:30 +09:00
Tatsuhiro Tsujikawa
5cd87eae22
Bump mruby to 3.2.0
2023-02-26 19:12:26 +09:00
Tatsuhiro Tsujikawa
a1c7e507aa
Merge pull request #1871 from nghttp2/nghttpx-h3-graceful-shutdown
...
nghttpx: Gracefully shutdown HTTP/3 connection
2023-02-25 00:22:19 +09:00
Tatsuhiro Tsujikawa
9526e2ff80
nghttpx: Gracefully shutdown HTTP/3 connection
2023-02-24 23:38:29 +09:00
Tatsuhiro Tsujikawa
b400bb5c15
Merge pull request #1870 from nghttp2/bump-nghttp3
...
Bump nghttp3 to v0.9.0
2023-02-24 21:59:51 +09:00
Tatsuhiro Tsujikawa
89cb55a62f
Bump nghttp3 to v0.9.0
2023-02-24 21:42:12 +09:00
Tatsuhiro Tsujikawa
878de84feb
Merge pull request #1869 from nghttp2/build-cache
...
Cache dependencies to speed up workflow builds
2023-02-24 20:37:36 +09:00
Tatsuhiro Tsujikawa
9862a86b31
Cache dependencies to speed up workflow builds
2023-02-24 19:39:59 +09:00
Tatsuhiro Tsujikawa
1eb91d2e50
Merge pull request #1867 from nghttp2/bump-go-mod
...
Bump golang.org/x/net to v0.7.0
2023-02-23 21:25:56 +09:00
Tatsuhiro Tsujikawa
50fbb76454
Bump golang.org/x/net to v0.7.0
2023-02-23 19:41:43 +09:00
Tatsuhiro Tsujikawa
5cb908b625
Bump package version
2023-02-13 21:18:34 +09:00
Tatsuhiro Tsujikawa
be0491294a
Update manual pages
2023-02-13 20:59:29 +09:00
Tatsuhiro Tsujikawa
17d54064d8
Bump package version
2023-02-12 19:41:38 +09:00
Tatsuhiro Tsujikawa
d8fb86a987
Update AUTHORS
2023-02-12 19:41:38 +09:00
Tatsuhiro Tsujikawa
5967358697
Merge pull request #1862 from nghttp2/bump-quictls
...
Bump quictls
2023-02-12 19:35:04 +09:00
Tatsuhiro Tsujikawa
7041b41afa
Bump quictls
2023-02-12 19:05:13 +09:00
Tatsuhiro Tsujikawa
c597e928f1
Merge pull request #1861 from nghttp2/simplify-uniform_int_distribution
...
Simplify std::uniform_int_distribution call
2023-02-11 18:50:07 +09:00
Tatsuhiro Tsujikawa
79f261edf0
Simplify std::uniform_int_distribution call
2023-02-11 18:23:06 +09:00
Tatsuhiro Tsujikawa
b082a6b3dd
Merge pull request #1860 from nghttp2/bump-llhttp
...
Bump llhttp to f2e1914b6c59f5cd88f492abc9d8af6be246bc85
2023-02-10 22:52:01 +09:00
Tatsuhiro Tsujikawa
64b97acc33
Bump llhttp to f2e1914b6c59f5cd88f492abc9d8af6be246bc85
2023-02-10 22:23:24 +09:00
Tatsuhiro Tsujikawa
936898453d
Merge pull request #1859 from nghttp2/bump-libbpf
...
Bump libbpf to v1.1.0
2023-02-10 21:46:14 +09:00
Tatsuhiro Tsujikawa
62802342aa
Bump libbpf to v1.1.0
2023-02-10 21:19:52 +09:00
Tatsuhiro Tsujikawa
93118d76f4
Merge pull request #1858 from nghttp2/bump-ngtcp2
...
Bump ngtcp2 to v0.13.1
2023-02-09 23:02:11 +09:00
Tatsuhiro Tsujikawa
95b2f94671
Bump ngtcp2 to v0.13.1
2023-02-09 22:32:34 +09:00
Tatsuhiro Tsujikawa
4434fcbde1
Merge pull request #1857 from nghttp2/nghttpx-fix-tls-write-stall
...
nghttpx: Fix bug that stalls TLS write
2023-02-09 21:31:15 +09:00
Tatsuhiro Tsujikawa
cbcfdaa655
nghttpx: Fix bug that stalls TLS write
2023-02-06 22:27:22 +09:00
Tatsuhiro Tsujikawa
10d52f5a27
Merge pull request #1854 from nghttp2/bump-ngtcp2-dockerfile
...
Bump ngtcp2 in Dockerfile to v0.13.0
2023-02-02 16:06:50 +09:00
Tatsuhiro Tsujikawa
92c7593cff
Bump ngtcp2 in Dockerfile to v0.13.0
2023-01-31 19:18:35 +09:00
Tatsuhiro Tsujikawa
0dbcf9c04d
Merge pull request #1853 from nghttp2/bump-ngtcp2
...
Bump ngtcp2 to v0.13.0
2023-01-31 18:30:04 +09:00
Tatsuhiro Tsujikawa
f494e88611
Bump ngtcp2 to v0.13.0
2023-01-31 18:00:19 +09:00
Tatsuhiro Tsujikawa
0ba1718e40
Merge pull request #1852 from nghttp2/remove-sphinx-theme-bundle
...
Remove sphinx theme bundle
2023-01-30 22:18:47 +09:00
Tatsuhiro Tsujikawa
5c5d978abe
Remove sphinx theme bundle
...
Remove sphinx theme bundle, and rely on the locally installed theme
(e.g., `pip install sphinx_rtd_theme`).
2023-01-30 21:24:11 +09:00
Tatsuhiro Tsujikawa
a6b0eeacc9
Merge pull request #1851 from nghttp2/bump-neverbleed
...
Bump neverbleed
2023-01-29 20:57:28 +09:00
Tatsuhiro Tsujikawa
6993e63ac4
Bump neverbleed
2023-01-29 19:36:57 +09:00
Tatsuhiro Tsujikawa
aea182c5a4
Merge pull request #1850 from nghttp2/fix-path-component-resolution
...
src: Fix path component resolution
2023-01-29 17:55:43 +09:00
Tatsuhiro Tsujikawa
c78aebf68f
src: Fix path component resolution
...
Fix path component resolution when '.' is involved.
2023-01-29 16:20:05 +09:00
Tatsuhiro Tsujikawa
05b7929019
Merge pull request #1849 from nghttp2/remove-unused-function
...
Remove unused function
2022-12-26 21:31:57 +09:00
Tatsuhiro Tsujikawa
5b665b3e48
Merge pull request #1848 from nghttp2/remove-src-includes
...
Remove src/includes
2022-12-26 21:20:51 +09:00
Tatsuhiro Tsujikawa
5089dcd3f2
Merge pull request #1847 from nghttp2/bump-zlib
...
Bump zlib to 1.2.13
2022-12-26 20:52:27 +09:00
Tatsuhiro Tsujikawa
b52f96d38a
Remove unused function
2022-12-26 19:49:28 +09:00
Tatsuhiro Tsujikawa
2ca0bb0a2f
Remove src/includes
2022-12-26 19:45:33 +09:00
Tatsuhiro Tsujikawa
fa3d1bfc8f
Bump zlib to 1.2.13
2022-12-26 19:40:26 +09:00
Tatsuhiro Tsujikawa
30bb4eb8f2
Merge pull request #1846 from nghttp2/remove-python
...
Remove deprecated python bindings
2022-12-26 19:38:53 +09:00
Tatsuhiro Tsujikawa
b4cb3b0090
Remove deprecated python bindings
2022-12-26 17:06:36 +09:00
Tatsuhiro Tsujikawa
2c62572ae1
Merge pull request #1844 from nghttp2/remove-libnghttp2_asio
...
Remove deprecated libnghttp2_asio
2022-12-26 17:05:44 +09:00
Tatsuhiro Tsujikawa
42904a586c
Merge pull request #1845 from nghttp2/minor-cleanup
...
Minor cleanup
2022-12-25 18:00:51 +09:00
Tatsuhiro Tsujikawa
8538e1ec42
Minor cleanup
2022-12-25 17:28:08 +09:00
Tatsuhiro Tsujikawa
e6d608b522
Remove deprecated libnghttp2_asio
2022-12-24 18:41:49 +09:00
Tatsuhiro Tsujikawa
00a33281be
Merge pull request #1843 from nghttp2/bump-ngtcp2
...
Bump ngtcp2 dependencies
2022-12-24 17:35:35 +09:00
Tatsuhiro Tsujikawa
7c7ba0586e
Bump ngtcp2 dependencies
2022-12-24 16:35:11 +09:00
Tatsuhiro Tsujikawa
252c425ea6
Merge pull request #1837 from fredizzimo/fix-libevent-component
...
Don't use the unofficial libevent component
2022-12-23 21:35:54 +09:00
Fred Sundvik
525630ae7a
Don't use the unofficial libevent component
2022-12-07 16:36:58 +02:00
Tatsuhiro Tsujikawa
5195e8be6a
Merge pull request #1835 from nghttp2/integration-lint
...
integration: Fix lint errors
2022-11-24 19:05:51 +09:00
Tatsuhiro Tsujikawa
358c15e015
integration: Fix lint errors
2022-11-20 19:14:27 +09:00
Tatsuhiro Tsujikawa
b5b18699cb
Merge pull request #1834 from nghttp2/integration-http-status-code
...
integration: Use HTTP status code constants
2022-11-20 19:12:43 +09:00
Tatsuhiro Tsujikawa
44e4475a31
integration: Use HTTP status code constants
2022-11-20 17:46:46 +09:00
Tatsuhiro Tsujikawa
a945c057c5
Merge pull request #1833 from nghttp2/integration-h3
...
Integration h3
2022-11-20 17:46:17 +09:00
Tatsuhiro Tsujikawa
babeddb649
nghttpx: HTTPS redirect should not happen with HTTP/3 upstream
2022-11-20 17:03:30 +09:00
Tatsuhiro Tsujikawa
2d790edac5
integration: Add http3 test which verifies chunked encoding ends prematurely
2022-11-20 16:55:58 +09:00
Tatsuhiro Tsujikawa
2bef60a6f4
integration: Add http3 test which verifies response ends before request
2022-11-20 16:53:34 +09:00
Tatsuhiro Tsujikawa
17e3bb4ec5
integration: Add http3 mruby tests
2022-11-20 16:35:54 +09:00
Tatsuhiro Tsujikawa
5e1b1a0883
integration: Add http3 affinity cookie test
2022-11-20 16:31:24 +09:00
Tatsuhiro Tsujikawa
5b0cbb4892
integration: Add http3 HTTPS redirect test
2022-11-20 16:28:16 +09:00
Tatsuhiro Tsujikawa
17a5ba4969
integration: Add http3 response content-length test
2022-11-20 15:12:19 +09:00
Tatsuhiro Tsujikawa
20d95edc57
integration: Add http3 via tests
2022-11-20 15:04:01 +09:00
Tatsuhiro Tsujikawa
126b5f9d2b
Add the missing file
2022-11-20 15:03:41 +09:00
Tatsuhiro Tsujikawa
46602a961d
Bump package version
2022-11-13 15:59:20 +09:00
Tatsuhiro Tsujikawa
00399695cb
Update manual pages
2022-11-13 14:51:12 +09:00
Tatsuhiro Tsujikawa
f8e014de40
Bump package and library versions
2022-11-13 14:40:42 +09:00
Tatsuhiro Tsujikawa
172159305c
Update AUTHORS
2022-11-13 14:39:10 +09:00
Tatsuhiro Tsujikawa
aa607875b0
Merge pull request #1832 from nghttp2/h3-integration-test
...
Add http3 integration test
2022-11-13 10:58:10 +09:00
Tatsuhiro Tsujikawa
954d49f7a0
Add http3 integration test
2022-11-12 19:39:25 +09:00
Tatsuhiro Tsujikawa
5929aeb47c
Merge pull request #1831 from nghttp2/bump-ngtcp2
...
Bump ngtcp2
2022-11-12 18:05:29 +09:00
Tatsuhiro Tsujikawa
b990df49d6
Bump boringssl
2022-11-12 16:46:36 +09:00
Tatsuhiro Tsujikawa
2aa9d61ae2
Bump ngtcp2 to v0.11.0
2022-11-12 16:46:24 +09:00
Tatsuhiro Tsujikawa
0fb2c6f4f4
Merge pull request #1830 from nghttp2/bump-libbpf
...
Bump libbpf to v1.0.1
2022-11-12 16:43:19 +09:00
Tatsuhiro Tsujikawa
1c9817af0d
Bump libbpf to v1.0.1
2022-11-12 16:13:03 +09:00
Tatsuhiro Tsujikawa
bea6cae0d5
Merge pull request #1829 from nghttp2/disable-python-bindings
...
Disable python bindings
2022-11-11 19:29:56 +09:00
Tatsuhiro Tsujikawa
804ce364bf
Disable python bindings properly by default
...
Disable python bindings properly by default. This commit amends
b63705384a .
2022-11-11 18:55:01 +09:00
Tatsuhiro Tsujikawa
83d7fb7fdd
Revert "workflow: Disable python bindings"
...
This reverts commit ddd40bae06 .
2022-11-11 18:52:44 +09:00
Tatsuhiro Tsujikawa
266a3d84e4
Merge pull request #1828 from nghttp2/bump-openssl
...
Bump OpenSSL versions
2022-11-09 18:57:52 +09:00
Tatsuhiro Tsujikawa
e91de24be6
Merge pull request #1827 from nghttp2/bump-llhttp
...
Bump llhttp
2022-11-09 18:48:52 +09:00
Tatsuhiro Tsujikawa
b062e9f66c
Bump OpenSSL versions
2022-11-09 18:05:55 +09:00
Tatsuhiro Tsujikawa
f56448be60
Deal with llhttp incompatible changes
2022-11-09 18:05:14 +09:00
Tatsuhiro Tsujikawa
17aa7b6a61
Bump llhttp to 85dd446419966cafb5a7fdd5031e3113a0768e65
2022-11-09 18:04:54 +09:00
Tatsuhiro Tsujikawa
971d3552c7
Merge pull request #1826 from nghttp2/workflow-disable-python-bindings
...
workflow: Disable python bindings
2022-11-09 17:37:37 +09:00
Tatsuhiro Tsujikawa
ddd40bae06
workflow: Disable python bindings
...
Disable python bindings because it has been deprecated, and mac OS
build with python binding is broken.
2022-11-09 16:54:19 +09:00
Tatsuhiro Tsujikawa
cb11cfcd2c
Merge pull request #1822 from vszakats/warnfix
...
add casts to silence implicit conversion warnings
2022-10-20 20:50:51 +09:00
Viktor Szakats
5eed83ee17
add casts to silence implicit conversion warnings
...
Fixes #1821
2022-10-19 11:57:31 +00:00
Tatsuhiro Tsujikawa
11632d3c2c
Merge pull request #1819 from nghttp2/bump-ngtcp2
...
Bump ngtcp2
2022-10-18 22:35:47 +09:00
Tatsuhiro Tsujikawa
8c70d9c2e1
Bump ngtcp2
2022-10-18 21:11:14 +09:00
Tatsuhiro Tsujikawa
3b21fbaf03
Merge pull request #1818 from nghttp2/fix-nghttpx-affinity-cookie-stickiness
...
nghttpx: Fix affinity-cookie-stickiness parameter handling
2022-10-18 17:45:25 +09:00
Tatsuhiro Tsujikawa
5abafb4268
nghttpx: Fix affinity-cookie-stickiness parameter handling
...
Fix affinity-cookie-stickiness backend parameter handling.
Previously, if 3 backend options are used for the same pattern, and
the first one does not have affinity-cookie-stickiness, and the rest
of them have affinity-cookie-stickiness=strict, nghttpx wrongly
determines that they have inconsistent configurations.
2022-10-18 17:17:44 +09:00
Tatsuhiro Tsujikawa
2f71f5c3c9
Merge pull request #1816 from nghttp2/update-doc
...
Update doc
2022-10-16 16:49:06 +09:00
Tatsuhiro Tsujikawa
3f65ab7871
Update doc
...
Remove outdated text
2022-10-16 16:09:43 +09:00
Tatsuhiro Tsujikawa
8e120de5bd
Merge pull request #1814 from nghttp2/workflow-bump-compilers
...
Workflow bump compilers
2022-10-04 21:47:39 +09:00
Tatsuhiro Tsujikawa
8a355db8d9
Fix compile error with gcc-12
2022-10-04 17:58:15 +09:00
Tatsuhiro Tsujikawa
93f1096de3
Merge pull request #1813 from nghttp2/test-fix-tz
...
Fix test failure on Linux if tz database is not available
2022-10-04 17:48:32 +09:00
Tatsuhiro Tsujikawa
f190afd0c0
Merge pull request #1812 from nghttp2/update-ubuntu-packages
...
Update Ubuntu packages based on Ubuntu 22.04
2022-10-04 17:19:54 +09:00
Tatsuhiro Tsujikawa
ebef6b5ced
workflow: Bump compilers
2022-10-04 17:12:15 +09:00
Tatsuhiro Tsujikawa
6c45e943b0
Merge pull request #1811 from nghttp2/disable-python
...
Disable python bindings by default because it has been deprecated
2022-10-04 17:08:40 +09:00
Tatsuhiro Tsujikawa
61caf66f1b
Fix test failure on Linux if tz database is not available
2022-10-04 16:47:51 +09:00
Tatsuhiro Tsujikawa
c56cda058e
Update Ubuntu packages based on Ubuntu 22.04
2022-10-04 16:07:53 +09:00
Tatsuhiro Tsujikawa
b63705384a
Disable python bindings by default because it has been deprecated
2022-10-04 16:04:43 +09:00
Tatsuhiro Tsujikawa
7380ff3551
Merge pull request #1809 from nghttp2/update-doc-h2-rfc
...
Update README to mention new HTTP/2 RFC
2022-10-02 12:53:13 +09:00
Tatsuhiro Tsujikawa
bfba6764e0
Update README to mention new HTTP/2 RFC
2022-10-02 12:18:41 +09:00
Tatsuhiro Tsujikawa
634e65df64
Merge pull request #1807 from nghttp2/nghttpx-add-missing-exit
...
nghttpx: Add missing DIE()
2022-09-27 23:13:25 +09:00
Tatsuhiro Tsujikawa
011fbf7f10
nghttpx: Add missing DIE()
2022-09-27 22:23:13 +09:00
Tatsuhiro Tsujikawa
0363606924
Merge pull request #1806 from nghttp2/update-android-build-doc
...
Update android build documentation
2022-09-26 17:50:42 +09:00
Tatsuhiro Tsujikawa
40c7922386
Update android build documentation
2022-09-26 17:12:03 +09:00
Tatsuhiro Tsujikawa
958d9ac63b
Merge pull request #1805 from nghttp2/dockerfile-android-improvements
...
Dockerfile android improvements
2022-09-26 17:05:59 +09:00
Tatsuhiro Tsujikawa
c06f1e9974
Remove --with-xml-prefix
2022-09-26 16:24:53 +09:00
Tatsuhiro Tsujikawa
d3381233b1
Do not create OpenSSL shared library
2022-09-26 16:24:53 +09:00
Tatsuhiro Tsujikawa
6d88da58f1
PATH is required by OpenSSL only
2022-09-26 16:24:53 +09:00
Tatsuhiro Tsujikawa
77449a9477
Merge pull request #1804 from nghttp2/update-dockerfile-android
...
Bump NDK and others to the latest
2022-09-26 00:06:18 +09:00
Tatsuhiro Tsujikawa
116feb4a8c
Bump NDK and others to the latest
...
The latest nghttp2 release version cannot be built with the latest
NDK. The nghttp2 version in Dockerfile points to master for now.
2022-09-25 23:23:48 +09:00
Tatsuhiro Tsujikawa
dd63d1df42
Merge pull request #1802 from PufferBlue/patch-1
...
Update dependency versions for Dockerfile.android
2022-09-25 21:29:09 +09:00
PufferOverflow
c47fa08b40
Update dependency versions for Dockerfile.android
2022-09-23 10:33:56 +08:00
Tatsuhiro Tsujikawa
4bfd802937
Bump package version
2022-09-21 17:21:01 +09:00
Tatsuhiro Tsujikawa
87fef4ab71
Update manual pages
2022-09-21 16:55:07 +09:00
Tatsuhiro Tsujikawa
844af88dc1
Bump package and library versions
2022-09-21 16:47:56 +09:00
Tatsuhiro Tsujikawa
2f6ebfdf8c
Update AUTHORS
2022-09-21 16:45:44 +09:00
Tatsuhiro Tsujikawa
25858d8ada
Merge pull request #1800 from nghttp2/bump-ngtcp2
...
Bump ngtcp2
2022-09-20 18:28:51 +09:00
Tatsuhiro Tsujikawa
11d1f95412
Bump ngtcp2
2022-09-20 17:46:11 +09:00
Tatsuhiro Tsujikawa
931adb146b
Merge pull request #1799 from nghttp2/dyn-dns-family
...
nghttpx: Respect backend-address-family on dynamic DNS lookup
2022-09-15 19:45:09 +09:00
Tatsuhiro Tsujikawa
6a513dc9fd
nghttpx: Respect backend-address-family on dynamic DNS lookup
2022-09-15 19:11:13 +09:00
Tatsuhiro Tsujikawa
f13cff01bb
Merge pull request #1798 from nghttp2/bump-libbpf
...
Bump libbpf to v1.0.0
2022-09-15 19:10:22 +09:00
Tatsuhiro Tsujikawa
2608333ce5
Bump libbpf to v1.0.0
2022-09-15 18:29:07 +09:00
Tatsuhiro Tsujikawa
9f5bf5c7dd
Merge pull request #1792 from nghttp2/option-no-rfc9113-ltws-validation
...
Option no rfc9113 ltws validation
2022-09-07 17:08:04 +09:00
Tatsuhiro Tsujikawa
eb06e33e38
Add nghttp2_option_set_no_rfc9113_leading_and_trailing_ws_validation
2022-09-07 16:34:12 +09:00
Tatsuhiro Tsujikawa
a94d2de89a
Check leading white spaces in :protocol
2022-09-07 16:32:20 +09:00
Tatsuhiro Tsujikawa
921b4d027a
Merge pull request #1791 from nghttp2/bump-ngtcp2
...
Bump ngtcp2
2022-09-06 20:55:12 +09:00
Tatsuhiro Tsujikawa
026ff48edb
Bump ngtcp2
2022-09-01 22:06:41 +09:00
Tatsuhiro Tsujikawa
1340b296dd
Merge pull request #1787 from heitbaum/patch-1
...
Fix typographic error
2022-08-29 21:22:56 +09:00
Rudi Heitbaum
fc5a020bc6
Fix typographic error
2022-08-29 22:05:58 +10:00
Tatsuhiro Tsujikawa
f919cf1a8e
Bump package version
2022-08-22 21:10:20 +09:00
Tatsuhiro Tsujikawa
08676d23f9
Update manual pages
2022-08-22 20:49:37 +09:00
Tatsuhiro Tsujikawa
28fa90811c
Bump package and library versions
2022-08-22 20:42:14 +09:00
Tatsuhiro Tsujikawa
56f39b30ce
Update AUTHORS
2022-08-22 19:40:15 +09:00
Tatsuhiro Tsujikawa
df000cd01b
Merge pull request #1784 from nghttp2/fix-covscan-errors
...
Fix errors reported by coverity scan
2022-08-22 19:37:29 +09:00
Tatsuhiro Tsujikawa
47b990f508
Fix errors reported by coverity scan
2022-08-22 19:06:35 +09:00
Tatsuhiro Tsujikawa
68ea085535
Merge pull request #1783 from nghttp2/bump-libbpf
...
Bump libbpf
2022-08-22 18:58:37 +09:00
Tatsuhiro Tsujikawa
eb397721be
Bump libbpf
2022-08-22 18:27:38 +09:00
Tatsuhiro Tsujikawa
c3fa77158a
Merge pull request #1782 from nghttp2/embed-km-id-in-token
...
nghttpx: Embed km_id in a regular token
2022-08-22 17:46:52 +09:00
Tatsuhiro Tsujikawa
7c0649d466
nghttpx: Embed km_id in a regular token
2022-08-21 23:34:32 +09:00
Tatsuhiro Tsujikawa
f02f9ff50c
Merge pull request #1781 from nghttp2/token-dcidlen
...
nghttpx: Regular token does not require server issued DCID
2022-08-21 23:01:27 +09:00
Tatsuhiro Tsujikawa
31be334660
nghttpx: Regular token does not require server issued DCID
2022-08-21 22:40:10 +09:00
Tatsuhiro Tsujikawa
9d265e8bb8
Merge pull request #1780 from nghttp2/bump-ngtcp2
...
Bump ngtcp2 and nghttp3
2022-08-21 20:53:04 +09:00
Tatsuhiro Tsujikawa
1aa97d5d2c
Bump ngtcp2 and nghttp3
2022-08-21 18:25:08 +09:00
Tatsuhiro Tsujikawa
42394e3342
Merge pull request #1779 from nghttp2/bump-boringssl
...
Bump boringssl
2022-08-20 11:36:27 +09:00
Tatsuhiro Tsujikawa
1bc1374d0c
Bump boringssl
2022-08-20 11:16:44 +09:00
Tatsuhiro Tsujikawa
f2c793c75b
clang-format
2022-08-10 16:57:01 +09:00
Tatsuhiro Tsujikawa
1bb4877976
Merge pull request #1770 from DavidKorczynski/dav-fuzz-1
...
fuzz: add frames fuzzer
2022-08-10 16:56:10 +09:00
David Korczynski
651f3bfce2
cleanup
2022-08-09 15:34:04 +01:00
Tatsuhiro Tsujikawa
8a026e18f5
clang-format fuzz
2022-08-09 21:01:42 +09:00
Tatsuhiro Tsujikawa
5164745ff9
Merge pull request #1771 from DavidKorczynski/dav-fuzz-2
...
fuzz: add extended fuzzer using FuzzedDataProvider
2022-08-09 20:59:50 +09:00
Tatsuhiro Tsujikawa
179ecf7ccd
Merge pull request #1775 from nghttp2/src-eliminate-strtoul
...
Replace the use of strtoul and strtol with parse_uint
2022-08-09 20:58:52 +09:00
Tatsuhiro Tsujikawa
a4d12f2a71
Replace the use of strtoul and strtol with parse_uint
...
Replace the use of strtoul and strtol with parse_uint to fix the
handling of negative integer.
2022-08-09 19:56:01 +09:00
David Korczynski
0ade040a68
fuzz: add extended fuzzer using FuzzedDataProvider
...
Similar in nature to fuzz_target.cc but adds the difference of a random
iv constructed by way of fuzzer data.
2022-08-04 20:22:28 +01:00
David Korczynski
59be24be32
fuzz: add frames fuzzer
2022-08-04 15:24:27 +01:00
Tatsuhiro Tsujikawa
092014d5af
Merge pull request #1769 from nghttp2/randomize-backend-addresses
...
nghttpx: Randomize backend address backend robin order per thread (2nd Ed.)
2022-08-04 19:03:53 +09:00
Tatsuhiro Tsujikawa
39d9efe4bd
nghttpx: Randomize backend address backend robin order per thread (2nd Ed.)
...
This is the 2nd attempt to randomize backend address round robin
order.
The initial attempt of doing this was
fdcdb21c38 , which has been reverted via
470f06e5f6 because it broke the session
affinity.
This time, we shuffles seq fields and avoid reordering addrs vector.
2022-08-04 18:38:23 +09:00
Tatsuhiro Tsujikawa
a3be763650
Merge pull request #1766 from nghttp2/h2load-h3-reset-stream-cb
...
h2load: Implement nghttp3 reset_stream callback
2022-07-26 17:39:58 +09:00
Tatsuhiro Tsujikawa
b4cf6358d4
h2load: Implement nghttp3 reset_stream callback
2022-07-26 17:05:13 +09:00
Tatsuhiro Tsujikawa
a80df35b39
Merge branch 'lemourin-coro-http'
2022-07-26 17:02:03 +09:00
Paweł Wegner
ff48a84a86
cmake: add ENABLE_DOC option.
...
doc subdirectory breaks Xcode generator
2022-07-26 16:42:26 +09:00
Tatsuhiro Tsujikawa
75a0d090df
Merge pull request #1764 from nghttp2/h3-ignore-errors
...
Ignore nghttp3 errors which can be ignored
2022-07-26 00:40:11 +09:00
Tatsuhiro Tsujikawa
6418a86504
Ignore nghttp3 errors which can be ignored
2022-07-25 23:09:33 +09:00
Tatsuhiro Tsujikawa
2916208eb3
Merge pull request #1763 from nghttp2/bump-neverbleed
...
Bump neverbleed
2022-07-25 23:04:43 +09:00
Tatsuhiro Tsujikawa
22c88548b9
Bump neverbleed
2022-07-25 21:20:02 +09:00
Tatsuhiro Tsujikawa
c642a9f856
Merge pull request #1762 from nghttp2/bump-llhttp
...
Bump llhttp
2022-07-25 21:04:13 +09:00
Tatsuhiro Tsujikawa
05f8d4e8c9
Fix integration test failure
2022-07-25 20:08:58 +09:00
Tatsuhiro Tsujikawa
9d389e8744
Bump llhttp to f84c4de65875a43b683d4c0c26337b2fa5a38efa
2022-07-25 19:41:13 +09:00
Tatsuhiro Tsujikawa
d51647f37e
Merge pull request #1761 from nghttp2/relocate-nghttp2-asio
...
libnghttp2_asio has moved to its own repository
2022-07-25 18:08:37 +09:00
Tatsuhiro Tsujikawa
c011105124
libnghttp2_asio has moved to its own repository
2022-07-25 17:33:50 +09:00
Tatsuhiro Tsujikawa
bc909d6157
Merge pull request #1759 from nghttp2/bump-quic-libs
...
Bump QUIC related libraries
2022-07-22 00:05:52 +09:00
Tatsuhiro Tsujikawa
5cf678cf5e
Bump QUIC related libraries
2022-07-21 23:22:42 +09:00
Tatsuhiro Tsujikawa
f11be7df09
Merge pull request #1755 from vszakats/fix-win-openssl-quic-detection
...
cmake: fix detecting quic openssl with win32
2022-07-21 21:18:05 +09:00
Viktor Szakats
7113970ff0
cmake: fix detecting quic openssl with win32
...
By adding two necessary system libraries to make the QUIC test snippet
link correctly.
Before:
```
-- Looking for SSL_is_quic
-- Looking for SSL_is_quic - not found
CMake Warning at CMakeLists.txt:206 (message):
OpenSSL in
/[...]/openssl-quic/x64-ucrt/usr/lib/libssl.a;/[...]/openssl-quic/x64-ucrt/usr/lib/libcrypto.a
dose not have SSL_is_quic. HTTP/3 support cannot be enabled
```
After:
```
-- Looking for SSL_is_quic
-- Looking for SSL_is_quic - found
```
Same fix as previously merged to ngtcp2:
https://github.com/ngtcp2/ngtcp2/pull/481
2022-07-14 05:35:11 +00:00
Tatsuhiro Tsujikawa
33974fbcd7
Merge pull request #1754 from nghttp2/bump-sphinx-rtd-theme
...
Bump sphinx_rtd_theme
2022-07-12 22:47:51 +09:00
Tatsuhiro Tsujikawa
6eb90570f0
Bump sphinx_rtd_theme
2022-07-12 22:23:12 +09:00
Tatsuhiro Tsujikawa
014f1c510d
Merge pull request #1752 from nghttp2/cross-build-fix
...
Cross build fix
2022-07-08 00:04:18 +09:00
Tatsuhiro Tsujikawa
db770a815a
Remove missing header patch
2022-07-07 21:59:14 +09:00
Tatsuhiro Tsujikawa
aedb01a1a4
Run tests for x86_64-w64-mingw32 host only
...
GitHub Actions suddenly refused to install wine32 because of broken
dependencies. In order to workaround this issue, do not run tests on
i686-w64-mingw32 host.
2022-07-07 21:54:31 +09:00
Tatsuhiro Tsujikawa
3d35558f0e
Merge pull request #1751 from nghttp2/bump-quictls
...
Bump quictls
2022-07-06 22:58:26 +09:00
Tatsuhiro Tsujikawa
02a3a15b82
Bump quictls
2022-07-06 22:21:26 +09:00
Tatsuhiro Tsujikawa
ffe1519366
Merge pull request #1750 from nghttp2/pythonbindings-deprecation
...
Deprecate Python bindings
2022-07-05 20:10:24 +09:00
Tatsuhiro Tsujikawa
97a5ca584b
Deprecate Python bindings
2022-07-05 19:45:14 +09:00
Tatsuhiro Tsujikawa
78cb0008d3
Merge pull request #1749 from nghttp2/libasio-deprecation
...
Deprecate libnghttp2_asio
2022-07-05 19:41:47 +09:00
Tatsuhiro Tsujikawa
d38cf2d11c
Merge pull request #1748 from nghttp2/cross-build
...
Cross build
2022-07-05 19:10:28 +09:00
Tatsuhiro Tsujikawa
b7b09acb81
Deprecate libnghttp2_asio
2022-07-05 18:57:22 +09:00
Tatsuhiro Tsujikawa
83ea8e5ba5
Add build-cross
2022-07-05 18:14:22 +09:00
Tatsuhiro Tsujikawa
9a16e73813
Compile with mingw64
2022-07-05 18:10:57 +09:00
Tatsuhiro Tsujikawa
2da1713200
Define BUILDING_NGHTTP2 for tests to make linker work
2022-07-05 18:10:35 +09:00
Tatsuhiro Tsujikawa
118648ff17
Merge pull request #1747 from nghttp2/nghttpx-fix-proxy-proto
...
nghttpx: Fix broken PROXY-protocol
2022-07-04 22:16:57 +09:00
Tatsuhiro Tsujikawa
d9acf873ed
nghttpx: Fix broken PROXY-protocol
...
Fix PROXY-protocol that is enabled for TLS connection.
2022-07-04 21:21:02 +09:00
Tatsuhiro Tsujikawa
e065cbccb6
Merge pull request #1745 from nghttp2/no-lws-check
...
No need to check pseudo header lws
2022-06-25 11:52:15 +09:00
Tatsuhiro Tsujikawa
cad6f6c3f0
Merge pull request #1744 from nghttp2/nghttpx-remove-h1-field-trailing-white-spaces
...
nghttpx: Remove trailing white spaces from HTTP/1.1 fields
2022-06-25 11:37:27 +09:00
Tatsuhiro Tsujikawa
fc6d064371
No need to check pseudo header lws
...
No need to check pseudo header lws because it is guaranteed not to
have leading white spaces.
2022-06-25 11:24:10 +09:00
Tatsuhiro Tsujikawa
501b1d4dcf
nghttpx: Remove trailing white spaces from HTTP/1.1 fields
2022-06-25 11:09:35 +09:00
Tatsuhiro Tsujikawa
54848210a9
Merge pull request #1743 from nghttp2/rfc9113-field-value-validation
...
Add nghttp2_check_header_value_rfc9113
2022-06-24 20:52:17 +09:00
Tatsuhiro Tsujikawa
7f4c2f9ec3
Add nghttp2_check_header_value_rfc9113
...
Add nghttp2_check_header_value_rfc9113 which verifies the additional
rule imposed by RFC 9113, section 8.2.1, that is a field value must
not start or end with 0x20(SPC) or 0x09(HTAB).
libnghttp2 uses this new function internally.
2022-06-24 19:44:13 +09:00
Tatsuhiro Tsujikawa
af30e57c5e
Bump package version
2022-06-24 18:27:00 +09:00
Tatsuhiro Tsujikawa
b5c4ba8322
Merge pull request #1742 from nghttp2/ignore-priority-in-pp
...
Do not parse priority header field value included in PUSH_PROMISE
2022-06-23 23:09:21 +09:00
Tatsuhiro Tsujikawa
d115f580e2
Do not parse priority header field value included in PUSH_PROMISE
2022-06-23 22:44:01 +09:00
Tatsuhiro Tsujikawa
511fea418a
Update bash_completion
2022-06-23 21:13:25 +09:00
Tatsuhiro Tsujikawa
711fb1d3c3
Update manual pages
2022-06-23 21:13:03 +09:00
Tatsuhiro Tsujikawa
31b39ebc4c
Bump package and library versions
2022-06-23 20:57:52 +09:00
Tatsuhiro Tsujikawa
f214519321
Merge pull request #1741 from nghttp2/gha-boringssl-build
...
workflow: Add BoringSSL build
2022-06-23 20:06:47 +09:00
Tatsuhiro Tsujikawa
5dfd6d22fa
workflow: Add BoringSSL build
2022-06-23 19:30:30 +09:00
Tatsuhiro Tsujikawa
146ca52f26
Update BoringSSL revision which is old but matches what ngtcp2 says
2022-06-23 18:18:26 +09:00
Tatsuhiro Tsujikawa
65e7c24df7
Merge pull request #1740 from nghttp2/bump-quictls
...
Bump quictls
2022-06-23 00:52:28 +09:00
Tatsuhiro Tsujikawa
5ecd1372c3
Bump quictls
2022-06-23 00:28:32 +09:00
Tatsuhiro Tsujikawa
6596cce8fb
Make concat_string_ref_count constexpr
2022-06-23 00:00:16 +09:00
Tatsuhiro Tsujikawa
ad7fc183d1
errno should be used to evaluate error code
2022-06-23 00:00:16 +09:00
Tatsuhiro Tsujikawa
22f8cc687f
Update doc
2022-06-23 00:00:16 +09:00
Tatsuhiro Tsujikawa
294fb07750
Merge pull request #1739 from nghttp2/h2load-no-udp-segment
...
h2load: Send more packets without GSO per event loop
2022-06-22 22:50:02 +09:00
Tatsuhiro Tsujikawa
71f8971dde
h2load: Send more packets without GSO per event loop
2022-06-22 21:05:11 +09:00
Tatsuhiro Tsujikawa
7077096162
Merge pull request #1738 from nghttp2/bump-llhttp
...
Bump llhttp to 75b45129db961e1fb3c56044e1b8f7721bfaee5d
2022-06-21 22:18:02 +09:00
Tatsuhiro Tsujikawa
9800934e19
Bump llhttp to 75b45129db961e1fb3c56044e1b8f7721bfaee5d
2022-06-21 21:52:03 +09:00
Tatsuhiro Tsujikawa
075142ab08
Merge pull request #1737 from nghttp2/bump-libbpf
...
Bump libbpf to v0.8.0
2022-06-21 21:51:31 +09:00
Tatsuhiro Tsujikawa
ab3f86ab36
Bump libbpf to v0.8.0
2022-06-21 21:31:37 +09:00
Tatsuhiro Tsujikawa
ce66ac88c8
Merge pull request #1736 from nghttp2/bump-ngtcp2
...
Bump ngtcp2 and nghttp3
2022-06-21 00:09:54 +09:00
Tatsuhiro Tsujikawa
3849337b42
Bump ngtcp2 and nghttp3
2022-06-20 21:52:19 +09:00
Tatsuhiro Tsujikawa
e6cf62664d
Merge pull request #1735 from nghttp2/update-default-tls-ciphers
...
Update default TLS cipher suites
2022-06-20 00:54:58 +09:00
Tatsuhiro Tsujikawa
56ae4124b1
Update default TLS cipher suites
2022-06-20 00:32:43 +09:00
Tatsuhiro Tsujikawa
41aaa47fd0
Merge pull request #1734 from nghttp2/server-change-extpri
...
Allow server to override RFC 9218 stream priority
2022-06-16 20:53:12 +09:00
Tatsuhiro Tsujikawa
ffa50c12b1
Check session side first
2022-06-16 19:50:29 +09:00
Tatsuhiro Tsujikawa
41955b3878
Allow server to override RFC 9218 stream priority
...
Allow server to override RFC 9218 stream priority with
nghttp2_session_change_extpri_stream_priority.
2022-06-16 19:49:53 +09:00
Tatsuhiro Tsujikawa
534284477e
Merge pull request #1733 from nghttp2/nghttpx-no-rfc7540-priorities
...
nghttpx: Disable RFC 7540 priorities
2022-06-16 18:39:34 +09:00
Tatsuhiro Tsujikawa
b646c0a351
Merge pull request #1732 from nghttp2/stream-priority-doc
...
Document how to change stream prioritization scheme
2022-06-16 08:34:01 +09:00
Tatsuhiro Tsujikawa
6429551272
nghttpx: Disable RFC 7540 priorities
...
Disable RFC 7540 priorities in nghttpx. It enables RFC 9218
extensible prioritization scheme. It also enables a mechanism for
server to fallback to RFC 7540 in order to handle the existing clients
which do not implement SETTINGS_NO_RFC7540_PRIORITIES.
2022-06-15 23:43:03 +09:00
Tatsuhiro Tsujikawa
ae2a9695f0
Document how to change stream prioritization scheme
2022-06-15 23:10:44 +09:00
Tatsuhiro Tsujikawa
9698bd530b
Merge pull request #1731 from nghttp2/fallback-rfc7540-pri
...
Add a server option to fallback to RFC 7540 priorities
2022-06-15 08:34:58 +09:00
Tatsuhiro Tsujikawa
8c2386c221
Add a server option to fallback to RFC 7540 priorities
...
Add nghttp2_option_set_server_fallback_rfc7540_priorities. If it is
set to nonzero, and server submits SETTINGS_NO_RFC7540_PRIORITIES = 1,
but it does not receive SETTINGS_NO_RFC7540_PRIORITIES from client,
server falls back to RFC 7540 priorities. Only minimal set of
features are enabled in this fallback case.
2022-06-14 23:47:42 +09:00
Tatsuhiro Tsujikawa
d1e07ab6b7
Merge pull request #1729 from nghttp2/rfc9218-priority-update-frame
...
Add PRIORITY_UPDATE frame support
2022-06-13 21:15:43 +09:00
Tatsuhiro Tsujikawa
b0fbb93022
Add PRIORITY_UPDATE frame support
...
This commit adds PRIORITY_UPDATE frame support. Applying incoming
PRIORITY_UPDATE frame to server push stream is not implemented.
Client can send PRIORITY_UPDATE frame by calling
nghttp2_submit_priority_update.
Server opts to receive PRIORITY_UPDATE frame by the call
nghttp2_option_set_builtin_recv_extension_type(option,
NGHTTP2_PRIORITY_UPDATE), and passing the option to
nghttp2_session_server_new2 or nghttp2_session_server_new3.
2022-06-13 20:04:30 +09:00
Tatsuhiro Tsujikawa
c44caa0580
Merge pull request #1728 from nghttp2/rfc9218-ext-priority
...
Implement RFC 9218 extensible prioritization scheme
2022-06-12 17:32:23 +09:00
Tatsuhiro Tsujikawa
c10a55588b
Implement RFC 9218 extensible prioritization scheme
...
This commit implements RFC 9218 extensible prioritization scheme. It
is enabled when a local endpoint submits
SETTINGS_NO_RFC7540_PRIORITIES = 1. This commit only handles priority
signal in HTTP request header field. Priority header field in
PUSH_PROMISE is not supported.
HTTP messaging must be enabled to take advantage of this
prioritization scheme because HTTP fields are not parsed if HTTP
messaging is disabled.
2022-06-12 16:06:04 +09:00
Tatsuhiro Tsujikawa
4ffb63a737
nghttp2_pq_init never fail
2022-06-11 17:36:48 +09:00
Tatsuhiro Tsujikawa
ac3f846f29
Merge pull request #1727 from nghttp2/host-in-resp-field-section
...
Do not verify host field specific characters for response field
2022-06-11 17:33:44 +09:00
Tatsuhiro Tsujikawa
73b5daddbc
Merge pull request #1725 from nghttp2/no-rfc7540-priorities
...
No rfc7540 priorities
2022-06-11 17:18:24 +09:00
Tatsuhiro Tsujikawa
a26bad3324
Do not verify host field specific characters for response field
...
Do not verify host field specific characters for response field
section because host field in response field section is undefined.
2022-06-11 17:08:51 +09:00
Tatsuhiro Tsujikawa
2c73de5292
Exclude macos + cmake build because of include path issue
2022-06-11 16:50:07 +09:00
Tatsuhiro Tsujikawa
9812a0bc81
Add SETTINGS_NO_RFC7540_PRIORITIES
...
Add SETTINGS_NO_RFC7540_PRIORITIES to disable RFC7540 priorities. If
disabled, streams are served in FIFO.
2022-06-11 16:50:07 +09:00
Tatsuhiro Tsujikawa
8d48686cec
Merge pull request #1724 from nghttp2/compile-with-libressl-3.5
...
Compile with libressl 3.5
2022-06-08 21:28:03 +09:00
Tatsuhiro Tsujikawa
f38d9f8cf6
Compile with libressl >= 3.5
2022-06-08 19:58:12 +09:00
Tatsuhiro Tsujikawa
0d1894ecbb
Disable neverbleed for macos
...
Disable neverbleed for macos because it does not work with libressl
installed on github actions.
2022-06-08 19:46:22 +09:00
Tatsuhiro Tsujikawa
d801a23f91
Merge pull request #1719 from nghttp2/go-update
...
Go update
2022-05-24 22:29:57 +09:00
Tatsuhiro Tsujikawa
24d27977bd
Rearrange imports
2022-05-24 21:56:38 +09:00
Tatsuhiro Tsujikawa
8bbd0363e9
Remove redundant select
2022-05-24 21:53:15 +09:00
Tatsuhiro Tsujikawa
c67dc7ff1d
Refactor serverTester constructor
2022-05-24 21:47:24 +09:00
Tatsuhiro Tsujikawa
0287024e85
Wrap error
2022-05-24 18:53:08 +09:00
Tatsuhiro Tsujikawa
31b5eb597d
Avoid io/ioutil
2022-05-24 18:52:30 +09:00
Tatsuhiro Tsujikawa
26ef62d613
Move runs-on under strategy
2022-05-22 12:22:32 +09:00
Tatsuhiro Tsujikawa
3977be938f
Merge pull request #1718 from nghttp2/bump-ubuntu
...
Bump ubuntu
2022-05-22 11:54:13 +09:00
Tatsuhiro Tsujikawa
fac4dcfc31
Bump ubuntu
2022-05-22 11:23:40 +09:00
Tatsuhiro Tsujikawa
4cd95470d6
IPV6_PMTUDISC_DO
2022-05-19 22:57:34 +09:00
Tatsuhiro Tsujikawa
e224ef45a4
Merge pull request #1716 from nghttp2/optimize-gso
...
Better pack UDP packets in one GSO write
2022-05-16 22:45:11 +09:00
Tatsuhiro Tsujikawa
aacc48662a
Merge pull request #1715 from nghttp2/parallel-build
...
Parallel build
2022-05-16 22:05:36 +09:00
Tatsuhiro Tsujikawa
0c77d6b943
Better pack UDP packets in one GSO write
2022-05-16 22:03:20 +09:00
Tatsuhiro Tsujikawa
9d159596a4
Merge pull request #1714 from nghttp2/bump-ngtcp2
...
Bump ngtcp2 and nghttp3
2022-05-16 21:52:09 +09:00
Tatsuhiro Tsujikawa
de8eaf6468
Parallel build
2022-05-16 21:40:08 +09:00
Tatsuhiro Tsujikawa
205e956883
Bump ngtcp2 and nghttp3
2022-05-16 21:22:22 +09:00
Tatsuhiro Tsujikawa
d5733b6beb
Merge pull request #1712 from nghttp2/extra-dist-mruby
...
EXTRA_DIST: List mruby files explicitly
2022-05-15 19:31:03 +09:00
Tatsuhiro Tsujikawa
4cbe74235d
EXTRA_DIST: List mruby files explicitly
2022-05-15 19:05:24 +09:00
Tatsuhiro Tsujikawa
974a614020
Merge pull request #1711 from nghttp2/fix-nproc
...
nproc is not available on macos
2022-05-15 18:11:04 +09:00
Tatsuhiro Tsujikawa
267ce93a7e
nproc is not available on macos
2022-05-15 17:36:53 +09:00
Tatsuhiro Tsujikawa
ae1de00c91
Bump actions/checkout to v3
2022-05-15 15:39:03 +09:00
Tatsuhiro Tsujikawa
a144dc0e59
Merge pull request #1710 from nghttp2/quic-error-handling
...
Quic error handling
2022-05-15 12:45:35 +09:00
Tatsuhiro Tsujikawa
516cf851c3
h2load: Deal with error from ngtcp2_conn_submit_crypto_data
2022-05-15 12:01:07 +09:00
Tatsuhiro Tsujikawa
59d6828848
Slightly simplified error handling for ngtcp2_conn_read_pkt
2022-05-15 11:57:00 +09:00
Tatsuhiro Tsujikawa
76ffd6bf96
nghttpx: Fix build error without mruby
2022-05-14 17:44:53 +09:00
Tatsuhiro Tsujikawa
8ad8d70f62
Merge pull request #1709 from nghttp2/bump-mruby
...
Bump mruby to 3.1.0
2022-05-14 10:36:45 +09:00
Tatsuhiro Tsujikawa
9da4449025
Merge pull request #1708 from nghttp2/bump-neverbleed
...
Bump neverbleed based on the latest head
2022-05-13 23:33:44 +09:00
Tatsuhiro Tsujikawa
0a3e55031d
Bump mruby to 3.1.0
2022-05-13 23:08:27 +09:00
Tatsuhiro Tsujikawa
be9bcdf36e
Bump neverbleed based on the latest head
2022-05-13 22:57:17 +09:00
Tatsuhiro Tsujikawa
c8a032b6f4
Merge pull request #1707 from nghttp2/fix-nghttpd-tls-read-stall
...
nghttpd: Fix TLS read stall
2022-05-08 18:25:58 +09:00
Tatsuhiro Tsujikawa
55cf5ff3da
nghttpd: Fix TLS read stall
2022-05-08 17:52:19 +09:00
Tatsuhiro Tsujikawa
a93cac525e
Merge pull request #1706 from nghttp2/tls13-default-enabled
...
TLSv1.3 is enabled by default
2022-05-08 12:23:22 +09:00
Tatsuhiro Tsujikawa
a20cc23a78
Merge pull request #1705 from nghttp2/nghttp-ktls-fix
...
nghttp: Fix ktls support
2022-05-08 11:56:53 +09:00
Tatsuhiro Tsujikawa
854ef0e839
Merge pull request #1704 from nghttp2/h2load-ktls
...
h2load: Add ktls support
2022-05-08 11:39:16 +09:00
Tatsuhiro Tsujikawa
317e80c239
h2load: Add ktls support
2022-05-08 11:08:34 +09:00
Tatsuhiro Tsujikawa
6f3ba6940e
TLSv1.3 is enabled by default
2022-05-08 11:08:05 +09:00
Tatsuhiro Tsujikawa
7858997c8f
nghttp: Fix ktls support
2022-05-08 11:07:33 +09:00
Tatsuhiro Tsujikawa
1ce55d23a3
Merge pull request #1703 from nghttp2/client-tls-handshake
...
nghttpx: Client always uses simpler TLS handshake
2022-05-08 11:05:57 +09:00
Tatsuhiro Tsujikawa
c13a66d26f
nghttpx: Client always uses simpler TLS handshake
2022-05-08 10:31:55 +09:00
Tatsuhiro Tsujikawa
992181a0de
Merge pull request #1702 from nghttp2/ktls
...
nghttp, nghttpd, nghttpx: Add ktls support
2022-05-07 20:59:11 +09:00
Tatsuhiro Tsujikawa
09344eb1ad
nghttp, nghttpd, nghttpx: Add ktls support
2022-05-07 18:53:59 +09:00
Tatsuhiro Tsujikawa
0f1cba2af5
Bump ngtcp2 and nghttp3 in Dockerfile
2022-05-07 11:22:23 +09:00
Tatsuhiro Tsujikawa
cf78f476b8
Merge pull request #1701 from nghttp2/bump-quictls
...
Bump quictls
2022-05-07 11:20:56 +09:00
Tatsuhiro Tsujikawa
846b0c076f
Bump quictls
2022-05-07 10:54:51 +09:00
Tatsuhiro Tsujikawa
f5757aa18d
Merge pull request #1698 from nghttp2/bump-ngtcp2
...
Bump ngtcp2 and nghttp3
2022-04-25 23:18:30 +09:00
Tatsuhiro Tsujikawa
80c09ea4db
Run build on PR
2022-04-25 22:54:18 +09:00
Tatsuhiro Tsujikawa
6b33fa3417
Bump ngtcp2 and nghttp3
2022-04-25 22:52:21 +09:00
Tatsuhiro Tsujikawa
9ba95c9706
Merge pull request #1697 from nghttp2/add-go-mod
...
Add go.mod
2022-04-25 22:51:54 +09:00
Tatsuhiro Tsujikawa
7b14706f03
Add go.mod
2022-04-25 22:28:14 +09:00
Tatsuhiro Tsujikawa
bfd08a46ec
Merge pull request #1695 from nghttp2/fix-perf-regression
...
nghttpx, h2load: Fix QUIC performance regression
2022-04-06 21:08:45 +09:00
Tatsuhiro Tsujikawa
3b84147f45
nghttpx, h2load: Fix QUIC performance regression
2022-04-06 19:42:01 +09:00
Tatsuhiro Tsujikawa
f277dafe1e
Bump macos
2022-04-03 22:03:34 +09:00
Tatsuhiro Tsujikawa
aca0573bed
Bump clang-format to 14
2022-04-03 22:03:34 +09:00
Tatsuhiro Tsujikawa
8d4c9e4345
Merge pull request #1693 from nghttp2/bump-ngtcp2
...
Bump ngtcp2 and nghttp3
2022-04-03 22:02:21 +09:00
Tatsuhiro Tsujikawa
80a93ddaf8
Bump ngtcp2 and nghttp3
2022-04-03 21:27:40 +09:00
Tatsuhiro Tsujikawa
3ab7cf375c
Merge pull request #1689 from nghttp2/bump-quictls
...
Bump quictls
2022-03-25 21:49:16 +09:00
Tatsuhiro Tsujikawa
a3fbd5ad73
Bump quictls
2022-03-25 21:28:31 +09:00
Tatsuhiro Tsujikawa
f2d1cc1a7a
Merge pull request #1685 from nghttp2/nghttpx-affinity-cookie-stickiness
...
nghttpx: Add affinity-cookie-stickiness backend parameter
2022-03-21 18:24:45 +09:00
Tatsuhiro Tsujikawa
5ded01e288
nghttpx: Add affinity-cookie-stickiness backend parameter
2022-03-20 11:30:32 +09:00
Tatsuhiro Tsujikawa
3ec588bb54
Merge pull request #1683 from nghttp2/nghttpx-fix-session-affinity
...
nghttpx: Fix broken session affinity
2022-03-15 21:07:40 +09:00
Tatsuhiro Tsujikawa
470f06e5f6
nghttpx: Fix broken session affinity
...
Session affinity has been broken since
fdcdb21c38 . This commit reverts the
relevant part of the commit to fix the session affinity.
2022-03-15 19:35:49 +09:00
Tatsuhiro Tsujikawa
a10bb832fd
Merge pull request #1680 from nghttp2/fix-stream-stall
...
Fix stream stall when initial window size is decreased
2022-03-13 19:24:32 +09:00
Tatsuhiro Tsujikawa
be16a24fcc
Merge pull request #1682 from nghttp2/http3-amplification
...
nghttpx: Limit CONNECTION_CLOSE and Retry under server amplification …
2022-03-13 18:27:20 +09:00
Tatsuhiro Tsujikawa
2f5ec66a65
nghttpx: Limit CONNECTION_CLOSE and Retry under server amplification limit
2022-03-12 19:48:31 +09:00
Tatsuhiro Tsujikawa
7c3e9152ce
Merge pull request #1681 from nghttp2/no-app-libs-check
...
Do not check application libraries if --enable-lib-only is given
2022-03-12 19:44:45 +09:00
Tatsuhiro Tsujikawa
37ad3462d2
Do not check application libraries if --enable-lib-only is given
2022-03-12 19:24:04 +09:00
Tatsuhiro Tsujikawa
129daeff6f
Fix stream stall when initial window size is decreased
...
Fix the bug that causes a stream to stall when a receiver, which
enables nghttp2_option_set_no_auto_window_update() option on, sends
SETTINGS_INITIAL_WINDOW_SIZE with the value that is less than or equal
to the amount of data received. Previously, in this particular case,
when SETTINGS is acknowledged by the sender, the receiver does not try
to send WINDOW_UPDATE frame. The sender is unable to send more data
because its stream-level window size is smaller than or equal to the
amount of data it has sent.
2022-03-12 17:05:42 +09:00
Tatsuhiro Tsujikawa
072784c9ee
Bump ngtcp2
2022-02-28 19:07:33 +09:00
Tatsuhiro Tsujikawa
89431f1727
Bump package version to 1.48.0-DEV
2022-02-23 17:15:04 +09:00
Tatsuhiro Tsujikawa
d9f580c3cb
Update doc
...
Bring back clang because we need it to compile bpf program.
2022-02-23 17:08:04 +09:00
Tatsuhiro Tsujikawa
f6b05a0111
Update doc
2022-02-23 17:01:00 +09:00
Tatsuhiro Tsujikawa
0353da4605
Update bash_completion
2022-02-23 16:49:24 +09:00
Tatsuhiro Tsujikawa
039ff29a2f
Update manual pages
2022-02-23 16:49:04 +09:00
Tatsuhiro Tsujikawa
385a28c7f1
Update doc
...
rlimit-memlock is not required anymore.
2022-02-23 16:46:56 +09:00
Tatsuhiro Tsujikawa
89e49f1066
Dockerfile: Pin ngtcp2 and nghttp3 versions
2022-02-23 16:41:17 +09:00
Tatsuhiro Tsujikawa
abd6bb6818
Bump package and library versions
2022-02-23 16:25:44 +09:00
Tatsuhiro Tsujikawa
ad2fbea087
Update AUTHORS
2022-02-23 16:23:58 +09:00
Tatsuhiro Tsujikawa
47cc36969a
Bump libbpf in Dockerfile
2022-02-21 22:18:25 +09:00
Tatsuhiro Tsujikawa
830cf1e294
Bump libbpf to v0.7.0 and turn on all strict features
2022-02-21 22:06:30 +09:00
Tatsuhiro Tsujikawa
a22f2cfcc8
Bump ngtcp2 and nghttp3
2022-02-19 18:14:18 +09:00
Tatsuhiro Tsujikawa
f3d4b4f846
nghttpx: Fix bug that h3 stream ends prematurely
2022-02-18 23:08:47 +09:00
Tatsuhiro Tsujikawa
a6537cb9ce
Fix compile error
2022-02-12 11:45:24 +09:00
Tatsuhiro Tsujikawa
79524471b4
nghttpx: Add --require-http-scheme option
2022-02-12 11:39:52 +09:00
Tatsuhiro Tsujikawa
a67822b382
Bump llhttp to v6.0.6
2022-02-10 21:53:23 +09:00
Tatsuhiro Tsujikawa
79da3fdedc
Revert "Bump llhttp to 836430e892862ed6462f6197417eba8e17378956"
...
This reverts commit b5d74d7c9d .
2022-02-10 21:51:18 +09:00
Tatsuhiro Tsujikawa
b5d74d7c9d
Bump llhttp to 836430e892862ed6462f6197417eba8e17378956
2022-02-10 21:34:15 +09:00
Tatsuhiro Tsujikawa
385abf10f7
nghttpx: Add support QUIC BBR2
2022-02-10 19:45:30 +09:00
Tatsuhiro Tsujikawa
f3206b12d5
Update doc
2022-02-10 19:38:23 +09:00
Tatsuhiro Tsujikawa
b70fdca9ac
h2load: Handle EAGAIN/EWOULDBLOCK from sendmsg
2022-02-10 19:35:50 +09:00
Tatsuhiro Tsujikawa
bd3cc94a36
Use nullptr for C++ code
2022-02-10 18:56:19 +09:00
Tatsuhiro Tsujikawa
02f2336ab1
Bump libbpf to v0.6.1
2022-02-09 19:03:13 +09:00
Tatsuhiro Tsujikawa
832d811982
Remove appveyor.yml
2022-02-08 20:21:23 +09:00
Tatsuhiro Tsujikawa
637f3d7b33
Windows build on GitHub Actions
2022-02-08 19:16:32 +09:00
Tatsuhiro Tsujikawa
254f2b3c42
Remove macos + gcc ci build to speed up ci build time
2022-02-08 19:14:45 +09:00
Tatsuhiro Tsujikawa
633691e164
Remove .travis.yml
2022-02-08 19:13:50 +09:00
Tatsuhiro Tsujikawa
01bcc72f66
nghttpx: Handle EAGAIN/EWOULDBLOCK from sendmsg
2022-02-03 22:20:58 +09:00
Tatsuhiro Tsujikawa
7ca255ff54
Fix docker build error
2022-02-02 22:55:19 +09:00
Tatsuhiro Tsujikawa
6430c98e86
Compile with the latest ngtcp2
2022-02-02 19:19:00 +09:00
Tatsuhiro Tsujikawa
32c2557bb7
Bump nghttp3
2022-01-26 22:58:50 +09:00
Tatsuhiro Tsujikawa
3122a83900
h2load: Set quic error code based on error from ngtcp2_conn_read_pkt
2022-01-23 23:47:40 +09:00
Tatsuhiro Tsujikawa
75272a817e
h2load: Fix ngtcp2 callback error code
2022-01-23 23:47:29 +09:00
Tatsuhiro Tsujikawa
809d5af43e
nghttpx: Fix invalid error code
2022-01-23 22:30:46 +09:00
Tatsuhiro Tsujikawa
3b549caf90
clang-format
2022-01-23 22:30:46 +09:00
Tatsuhiro Tsujikawa
42b659354d
nghttpx: Support h3 trailer fields
2022-01-23 22:30:46 +09:00
Tatsuhiro Tsujikawa
2275327794
nghttpx: Fix the issue that forwarded h3 GET request always has chunked TE
2022-01-23 21:36:35 +09:00
Tatsuhiro Tsujikawa
02a5649343
Require ngtcp2 >= 0.1.0 and nghttp3 >= 0.1.0
2022-01-23 18:34:59 +09:00
Tatsuhiro Tsujikawa
3b0b9a458c
Build docker image with ngtcp2 v0.1.0
2022-01-22 18:17:30 +09:00
Tatsuhiro Tsujikawa
6e6388e7c2
Depend on nghttp3 v0.1.1
2022-01-22 18:17:09 +09:00
Tatsuhiro Tsujikawa
ea6f0c641d
Merge pull request #1643 from nwtgck/fix-example-quotes
...
fix quotes in --altsvc example
2022-01-19 19:01:53 +09:00
Tatsuhiro Tsujikawa
c883b18f2d
Pin quic dependency
2022-01-16 22:00:27 +09:00
Tatsuhiro Tsujikawa
97e69f7416
Merge branch 'rex4539-typos'
2022-01-16 21:54:15 +09:00
Dimitris Apostolou
ad0c9eebf7
Fix typos
2022-01-16 21:53:44 +09:00
Tatsuhiro Tsujikawa
8a552631b4
Merge pull request #1667 from nghttp2/keep-hd-table-size
...
Fix decoder table size update
2022-01-11 20:53:08 +09:00
Tatsuhiro Tsujikawa
cff8106908
Merge pull request #1665 from c0bw3b/cleanup/spdy
...
Remove SPDY option for CMake
2022-01-11 20:14:37 +09:00
Tatsuhiro Tsujikawa
4eb49ac28e
Merge pull request #1666 from Kludex/patch-1
...
Update nghttp2.pyx
2022-01-11 20:13:43 +09:00
Tatsuhiro Tsujikawa
deb390cf85
Fix decoder table size update
...
When applying new header table size acknowledged with SETTINGS ACK by
an encoder, change the header table size on a decoder only when it
strictly lowers the current maximum table size set by Dynamic Table
Size Update from the encoder or the default size 4096 if no Dynamic
Table Size Update is received.
Previously, the header table size on a decoder is always changed. If
a maximum size in SETTINGS are increased (e.g., 4096 -> 8192), and
then decreased to the previous value, the decoder incorrectly requires
Dynamic Table Size Update from an encoder.
2022-01-11 19:50:45 +09:00
Tatsuhiro Tsujikawa
d91ae6987d
Compile with the latest ngtcp2
2022-01-11 19:40:26 +09:00
Marcelo Trylesinski
8ddb2273b9
Update nghttp2.pyx
2022-01-01 19:18:14 +01:00
Renaud
e1446fd57a
Remove SPDY option for CMake
...
SPDY feature removed in #1091 and release v1.29.0
2022-01-01 15:21:59 +01:00
Tatsuhiro Tsujikawa
02e6cad121
Bump quictls/openssl versions
2021-12-19 20:44:45 +09:00
Tatsuhiro Tsujikawa
0b053e06d8
Merge pull request #1657 from nwtgck/patch-2
...
Make Docker speak HTTP/3
2021-12-13 18:00:18 +09:00
Ryo Ota
c3c0403dfa
Make Docker speak HTTP/3
2021-12-12 23:16:10 +09:00
Ryo Ota
abc15c696d
fix quotes in --altsvc example
2021-11-18 09:12:05 +09:00
Tatsuhiro Tsujikawa
344d300cf9
Fix cmake CI build
2021-11-16 22:09:48 +09:00
Tatsuhiro Tsujikawa
dec233b9ef
cmake: Disable libbpf build by default
2021-11-16 22:03:30 +09:00
Tatsuhiro Tsujikawa
f695dc999b
Merge branch 'robaho-robaho/issue1639'
2021-11-14 16:43:23 +09:00
robaho
f92f81c05a
allow setting max frame size for h2load
2021-11-14 16:43:01 +09:00
Tatsuhiro Tsujikawa
3c4449c046
nghttpx: Use nghttp3 error code
2021-11-10 19:18:48 +09:00
Tatsuhiro Tsujikawa
918e4ea46b
Compile with the latest ngtcp2
2021-11-09 15:44:06 +09:00
Tatsuhiro Tsujikawa
d14d97ab68
Rename send_stop_sending to stop_sending
2021-11-09 11:13:23 +09:00
Tatsuhiro Tsujikawa
2aed077761
Merge fd_set_recv_ecn to create_quic_server_socket and handle errors
2021-11-06 17:19:02 +09:00
Tatsuhiro Tsujikawa
68b2295f4e
nghttpx: Set IP_PMTUDISC_DO explicitly
2021-11-06 17:12:43 +09:00
Tatsuhiro Tsujikawa
528d177847
nghttpx: Fix compile error
2021-11-06 00:16:53 +09:00
Tatsuhiro Tsujikawa
deae6c95b1
nghttpx: Send ECN
2021-11-05 23:23:00 +09:00
Tatsuhiro Tsujikawa
7eb179069d
Remove useless assignments
2021-11-05 22:51:36 +09:00
Tatsuhiro Tsujikawa
47c33b8d03
nghttpx: Receive ECN
2021-11-05 20:57:24 +09:00
Tatsuhiro Tsujikawa
94372fbe2a
Merge branch 'bagder-version-h3-too'
2021-11-05 18:39:09 +09:00
Daniel Stenberg
9e154297ff
shrpx: make nghttpx -v show ngtcp2 and nghttp3 version as well
...
... if HTTP/3 support is built in.
2021-11-05 18:38:39 +09:00
Tatsuhiro Tsujikawa
c4828dbd7c
h2load: Fix assertion failure with the latest ngtcp2
2021-11-03 21:23:26 +09:00
Tatsuhiro Tsujikawa
0d16db2c65
Use quictls 1.1.1l for now because 3.0.0 is much slower
2021-10-30 18:09:18 +09:00
Tatsuhiro Tsujikawa
fb63ef305d
Update doc
2021-10-30 18:09:06 +09:00
Tatsuhiro Tsujikawa
089fc81d72
Change qlog file extension to .sqlog
...
Change qlog file extension to .sqlog because upstream ngtcp2 moves to
JSON-SEQ streaming qlog format.
2021-10-29 21:59:54 +09:00
Tatsuhiro Tsujikawa
c20d175ff2
Guard RLIMIT_MEMLOCK usage
2021-10-29 21:39:17 +09:00
Tatsuhiro Tsujikawa
3985957c4d
Merge pull request #1625 from codebytere/fix-unreachable-return
...
chore: fix `-Wunreachable-code-return`
2021-10-29 21:35:44 +09:00
Tatsuhiro Tsujikawa
845a20b582
Bump version number to 1.47.0-DEV
2021-10-19 18:59:58 +09:00
Tatsuhiro Tsujikawa
7af0c508be
Update manual pages
2021-10-19 18:29:19 +09:00
Tatsuhiro Tsujikawa
f8474b25f0
nghttpx: Reduce dgram size if sendmsg fails with EINVAL or EMSGSIZE
2021-10-18 22:37:16 +09:00
Tatsuhiro Tsujikawa
15a8d913ea
examples/client: Enable ALPN
2021-10-17 17:25:18 +09:00
Tatsuhiro Tsujikawa
65d3c9047f
Replace TLSv23_method with TLS_method
2021-10-17 17:21:09 +09:00
Tatsuhiro Tsujikawa
8c36971ea9
Compile with OPENSSL_NO_DEPRECATED and fix memory leaks
2021-10-17 17:12:14 +09:00
Tatsuhiro Tsujikawa
ba1dff187b
Update bash_completion
2021-10-17 14:52:55 +09:00
Tatsuhiro Tsujikawa
8ecacc8ed2
Update manual pages
2021-10-17 14:52:36 +09:00
Tatsuhiro Tsujikawa
9d41896663
nghttpx: Rename --frontend-quic-server-id to --quic-server-id
2021-10-17 14:48:46 +09:00
Tatsuhiro Tsujikawa
18d4a9e4ff
Update bash_completion
2021-10-17 14:30:27 +09:00
Tatsuhiro Tsujikawa
1745a30644
Update manual pages
2021-10-17 14:30:27 +09:00
Tatsuhiro Tsujikawa
0cc7c598ff
src: TLS_DEFAULT_CIPHERSUITES was deprecated in OpenSSL 3.0.0
2021-10-17 14:30:27 +09:00
Tatsuhiro Tsujikawa
8c4fbb86d8
Bump version number to 1.46.0, LT revision to 35:1:21
2021-10-17 14:00:37 +09:00
Tatsuhiro Tsujikawa
693431312c
Fix cmake build
2021-10-15 23:39:44 +09:00
Tatsuhiro Tsujikawa
f3fca2a19a
Update doc
2021-10-15 23:24:23 +09:00
Tatsuhiro Tsujikawa
1ce9efc644
nghttpx: Set SCT data when built with boringssl
2021-10-15 23:06:24 +09:00
Tatsuhiro Tsujikawa
7055501efd
src: Enable HTTP/3 with boringssl
2021-10-15 22:50:34 +09:00
Tatsuhiro Tsujikawa
c790ee64a4
src: Prefer #ifdef for a single condition
2021-10-15 22:50:26 +09:00
Tatsuhiro Tsujikawa
9fb05d5ea2
Fix compile error under mac os
2021-10-15 19:54:08 +09:00
Tatsuhiro Tsujikawa
3742acaf39
nghttpx: Fix wrong SSL_CTX object usage
2021-10-15 18:19:07 +09:00
Tatsuhiro Tsujikawa
d8282de229
nghttpx: Respect !tls-no-postpone-early-data with boringssl
2021-10-15 00:13:49 +09:00
Tatsuhiro Tsujikawa
3a721a9dd5
nghttpx: Send session ticket after handshake with boringssl
2021-10-15 00:13:49 +09:00
Tatsuhiro Tsujikawa
0b6092446b
src: Compile with boringssl for non-http3 build
2021-10-14 23:44:27 +09:00
Shelley Vohr
59a76c6d39
chore: fix -Wunreachable-code-return
2021-10-11 12:56:23 +02:00
Tatsuhiro Tsujikawa
fa7a916ef3
nghttpx: Store initial_rtt in ev_tstamp for consistency
2021-10-10 17:34:58 +09:00
Tatsuhiro Tsujikawa
69c4187100
nghttpx: Add --frontend-quic-initial-rtt option
2021-10-10 17:24:02 +09:00
Tatsuhiro Tsujikawa
07128719c4
Workaround broken version check in AX_PYTHON_DEVEL
2021-10-10 16:52:05 +09:00
Tatsuhiro Tsujikawa
7471fa627d
Update ax_python_devel.m4
2021-10-10 16:08:49 +09:00
Tatsuhiro Tsujikawa
d7af5924ff
nghttpx: Extend QUIC server ID to 4 bytes
2021-10-10 16:05:48 +09:00
Tatsuhiro Tsujikawa
a48e9d3d80
Add bpf to clang-format
2021-10-06 21:29:15 +09:00
Tatsuhiro Tsujikawa
474a6db00c
Compile with gcc
2021-10-06 21:28:17 +09:00
Tatsuhiro Tsujikawa
cb6aea9aa9
Compile with -DNDEBUG
2021-10-06 21:28:00 +09:00
Tatsuhiro Tsujikawa
f4290c6497
Fix compile error
2021-10-04 23:23:03 +09:00
Tatsuhiro Tsujikawa
086b85b8f9
nghttpx: Unload BPF program after setting up all QUIC listeners
2021-10-04 22:39:31 +09:00
Tatsuhiro Tsujikawa
abee658a60
nghttpx: Make sure that ngtcp2_conn_update_pkt_tx_time is called
2021-10-02 19:22:53 +09:00
Tatsuhiro Tsujikawa
87bdc21667
nghttpx: Add --worker-process-grace-shutdown-period option
2021-10-02 18:55:51 +09:00
Tatsuhiro Tsujikawa
3e25ee8181
256k memlock is not enough when reloading happens
2021-09-29 22:16:39 +09:00
Tatsuhiro Tsujikawa
0266c458a3
nghttpx: Add --max-worker-processes option
2021-09-29 22:12:10 +09:00
Tatsuhiro Tsujikawa
d9c7631dcb
Fix compile error
2021-09-29 21:05:46 +09:00
Tatsuhiro Tsujikawa
df064fa2ba
nghttpx: Unload BPF objects on reload to avoid running out of memlock
2021-09-29 19:33:16 +09:00
Tatsuhiro Tsujikawa
318e0c8447
Guard msghdr_get_local_addr with ENABLE_HTTP3 macro
2021-09-28 22:35:53 +09:00
Tatsuhiro Tsujikawa
17d5503bf2
Update doc
2021-09-28 18:07:31 +09:00
Tatsuhiro Tsujikawa
19b4da6401
nghttpx: Support h3-29
2021-09-26 16:00:47 +09:00
Tatsuhiro Tsujikawa
886dc93f18
nghttpx: Fail h3 connection attempt if no ALPN is negotiated
2021-09-26 16:00:47 +09:00
Tatsuhiro Tsujikawa
407df2822e
Remove check for UDP_SEGMENT
...
Check for UDP_SEGMENT is for debian 10, but now that we have debian
11, remove the check because it breaks cross-build.
2021-09-26 10:29:05 +09:00
Tatsuhiro Tsujikawa
f6da0d342a
nghttpx: Fix crash if no keying materials are specified in file
2021-09-24 18:19:01 +09:00
Tatsuhiro Tsujikawa
7271537a15
nghttpx: Add --rlimit-memlock option
2021-09-24 18:13:38 +09:00
Tatsuhiro Tsujikawa
d0e8efac4d
nghttpx: Fix bug that reading QUIC secret file fails without line separator
2021-09-24 17:50:28 +09:00
Tatsuhiro Tsujikawa
27e6d56d83
Update doc
2021-09-23 12:02:19 +09:00
Tatsuhiro Tsujikawa
c5122c12cb
Update bash_completion
2021-09-23 11:45:23 +09:00
Tatsuhiro Tsujikawa
282050c596
Update manual pages
2021-09-23 11:45:10 +09:00
Tatsuhiro Tsujikawa
308c73bfa2
nghttpx: Read QUIC keying materials from file
...
Add --frontend-quic-secret-file to read QUIC keying materials from
file. --frontend-quic-connection-id-encryption-key was removed in
favor of this new option.
2021-09-23 11:18:07 +09:00
Tatsuhiro Tsujikawa
c40309ae8e
nghttpx: optarg should be allocated per configuration
2021-09-23 11:01:01 +09:00
Tatsuhiro Tsujikawa
1c7a4ecc7f
nghttpx: Rename generate_encrypted_quic_connection_id to generate_quic_connection_id
2021-09-21 23:09:03 +09:00
Tatsuhiro Tsujikawa
80cc623eb2
nghttpx: Allocate server id in Connection ID
2021-09-21 23:08:55 +09:00
Tatsuhiro Tsujikawa
89457fd991
More https
2021-09-21 20:40:57 +09:00
Tatsuhiro Tsujikawa
257043b8fb
Fix issue that libev cannot be found with autotools under mac osx
2021-09-21 19:49:56 +09:00
Tatsuhiro Tsujikawa
657d94b992
Fix compile error with libressl
2021-09-21 19:48:38 +09:00
Tatsuhiro Tsujikawa
06dc7d5964
Make sure that nghttp2 can be built from tar archive
2021-09-21 19:48:34 +09:00
Tatsuhiro Tsujikawa
b50079524b
Always include optional files to EXTRA_DIST
2021-09-21 19:26:28 +09:00
Tatsuhiro Tsujikawa
cdf1f269ff
Add missing cmake files to EXTRA_DIST
2021-09-21 17:53:15 +09:00
Tatsuhiro Tsujikawa
738b562f39
Bump up version number to 1.46.0-DEV
2021-09-20 17:52:07 +09:00
Tatsuhiro Tsujikawa
58499f256b
Update bash_completion
2021-09-20 17:07:58 +09:00
Tatsuhiro Tsujikawa
afb455ef80
python3
2021-09-20 17:07:44 +09:00
Tatsuhiro Tsujikawa
f4515e9034
Update manual pages
2021-09-20 17:02:54 +09:00
Tatsuhiro Tsujikawa
aab07d00d7
Bump version number to 1.45.0, LT revision to 35:0:21
2021-09-20 16:58:28 +09:00
Tatsuhiro Tsujikawa
32ecfc6a86
Use https
2021-09-20 16:54:47 +09:00
Tatsuhiro Tsujikawa
e866f9fae7
Update AUTHORS
2021-09-20 16:53:55 +09:00
Tatsuhiro Tsujikawa
a029f6ed2c
Rename sphinxcontrib to rubydomain to avoid module loading error
...
Rename sphinxcontrib to rubydomain to avoid module loading error when
sphinx-build docker image is used.
2021-09-20 13:43:40 +09:00
Tatsuhiro Tsujikawa
5b6e2cb5e0
Allow SPHINXBUILD to be overridden by environment variable
2021-09-20 12:19:26 +09:00
Tatsuhiro Tsujikawa
0264847a37
bpf: Use LINUX_KERNEL_VERSION extern variable
2021-09-19 21:07:40 +09:00
Tatsuhiro Tsujikawa
d276ca0adc
Update doc
2021-09-18 19:28:03 +09:00
Tatsuhiro Tsujikawa
6a099ee50a
nghttpx: QUIC requires TLS
2021-09-18 19:27:47 +09:00
Tatsuhiro Tsujikawa
be88846972
Build HTTP/3 and eBPF enabled nghttpx with Dockerfile
2021-09-18 18:08:40 +09:00
Tatsuhiro Tsujikawa
9a6b623c25
Update doc
2021-09-18 15:19:15 +09:00
Tatsuhiro Tsujikawa
97b36b8c74
make -C
2021-09-17 23:57:26 +09:00
Tatsuhiro Tsujikawa
0df332e7b8
Update doc
2021-09-17 23:53:35 +09:00
Tatsuhiro Tsujikawa
2d7e6fbb11
Update doc
2021-09-17 21:21:42 +09:00
Tatsuhiro Tsujikawa
fd107ab47c
nghttpx: Refactor quic
2021-09-17 19:35:31 +09:00
Tatsuhiro Tsujikawa
1320d7efab
nghttpx: Do not accept new connection during graceful shutdown period
2021-09-17 18:30:16 +09:00
Tatsuhiro Tsujikawa
7cdc6cfa6d
nghttpx: Store Retry in CloseWait to rate limit its transmission
2021-09-17 17:52:05 +09:00
Tatsuhiro Tsujikawa
095ee9683d
integration: Adds tests for chunked response
2021-09-16 22:37:33 +09:00
Tatsuhiro Tsujikawa
1e2081a1c5
Fix integration test error
2021-09-16 22:24:53 +09:00
Tatsuhiro Tsujikawa
e167e07a9a
nghttpx: Check that HTTP response message finished safely
2021-09-16 22:00:36 +09:00
Tatsuhiro Tsujikawa
f3b9cd8404
bpf: Add workaround for ubuntu 20.04
2021-09-16 20:20:02 +09:00
Tatsuhiro Tsujikawa
8f9744c07b
nghttpx: Pass hashed_scid_ to CloseWait
2021-09-15 23:40:46 +09:00
Tatsuhiro Tsujikawa
684a219e39
nghttpx: Tweak close wait handling
2021-09-15 23:07:46 +09:00
Tatsuhiro Tsujikawa
e2e6d827c7
Update bash_completion
2021-09-15 22:55:38 +09:00
Tatsuhiro Tsujikawa
f0108ece6f
Update manual pages
2021-09-15 22:55:21 +09:00
Tatsuhiro Tsujikawa
789b7a5ff1
Update doc
2021-09-15 22:50:47 +09:00
Tatsuhiro Tsujikawa
0961295a82
nghttpx: Transform odcid into hashed cid
2021-09-15 22:19:52 +09:00
Tatsuhiro Tsujikawa
fd060eb9f1
nghttpx: Connection ID encryption
2021-09-15 21:31:03 +09:00
Tatsuhiro Tsujikawa
1feeda4514
nghttpx: Fix bug that worker process never exit
2021-09-15 21:00:41 +09:00
Tatsuhiro Tsujikawa
6d29de0f1e
Fix compile error
2021-09-14 17:22:25 +09:00
Tatsuhiro Tsujikawa
74162850f0
nghttpx: Compile with the latest nghttp3
2021-09-14 16:45:11 +09:00
Tatsuhiro Tsujikawa
8903bd1e8a
nghttpx: Deal with error from ngtcp2_conn_read_pkt
2021-09-13 23:09:38 +09:00
Tatsuhiro Tsujikawa
4b79a4a10d
Add message when checking UDP_SEGMENT in linux/udp.h
2021-09-13 21:46:41 +09:00
Tatsuhiro Tsujikawa
8f419a4869
nghttpx: Add --frontend-quic-congestion-controller option
2021-09-13 21:35:46 +09:00
Tatsuhiro Tsujikawa
fcdac50f79
Should run program
2021-09-13 21:19:18 +09:00
Tatsuhiro Tsujikawa
4541134c88
Add missing include
2021-09-13 21:19:00 +09:00
Tatsuhiro Tsujikawa
b5e5972c2a
Update doc
2021-09-12 18:11:11 +09:00
Tatsuhiro Tsujikawa
525d59fdf6
Remove util::make_hostport returning std::string
2021-09-12 18:07:54 +09:00
Tatsuhiro Tsujikawa
00f65afe20
nghttpx: Fix incorrect quic frontend address matching
2021-09-12 18:07:54 +09:00
Tatsuhiro Tsujikawa
fc402f5804
Cleanup
2021-09-12 16:55:56 +09:00
Tatsuhiro Tsujikawa
f74b6d9a43
nghttpx: Add --frontend-quic-require-token option
2021-09-12 15:04:54 +09:00
Tatsuhiro Tsujikawa
ccaf2333ca
nghttpx: Enable websocket over h3
2021-09-11 17:56:25 +09:00
Tatsuhiro Tsujikawa
0066bf8eed
h2load: Cleanup
2021-09-11 17:00:11 +09:00
Tatsuhiro Tsujikawa
bc8f88f5fa
Compile with the latest ngtcp2
2021-09-11 16:57:14 +09:00
Tatsuhiro Tsujikawa
10c9d917ad
Fix compile error
2021-09-10 22:55:33 +09:00
Tatsuhiro Tsujikawa
cc5f752f2d
nghttpx: Use secure random to create websocket nonce
2021-09-10 22:43:03 +09:00
Tatsuhiro Tsujikawa
39b1a51ff4
Compile with the latest ngtcp2
2021-09-09 23:41:27 +09:00
Tatsuhiro Tsujikawa
a2e2e46af3
Build with OpenSSL v3.0.0
2021-09-09 18:35:35 +09:00
Tatsuhiro Tsujikawa
9d53a7e0a6
Fix compile error
2021-09-07 14:55:30 +09:00
Tatsuhiro Tsujikawa
7ea57eaa18
h2load: Add --max-udp-payload-size option
2021-09-07 14:42:35 +09:00
Tatsuhiro Tsujikawa
1657a425c1
Build with the latest ngtcp2
2021-09-07 13:40:41 +09:00
Tatsuhiro Tsujikawa
e929e92245
nghttpx: Fix typo
2021-09-06 20:59:11 +09:00
Tatsuhiro Tsujikawa
5994e48b28
nghttpx: Add more logging for token validation
2021-09-06 20:58:35 +09:00
Tatsuhiro Tsujikawa
50662c9c9e
nghttpx: Guard TLS1_3_VERSION
2021-09-06 20:07:38 +09:00
Tatsuhiro Tsujikawa
addd614e94
nghttpx: Add qlog support
2021-09-06 20:06:38 +09:00
Tatsuhiro Tsujikawa
fbb228050a
nghttpx: Fix uninitialized dnf fields
2021-09-06 00:12:04 +09:00
Tatsuhiro Tsujikawa
9bda8e266e
nghttpx: Remove BoringSSL early data for QUIC for now
2021-09-05 22:37:20 +09:00
Tatsuhiro Tsujikawa
d977005126
nghttpx: Disable session cache for QUIC since it solely uses ticket
2021-09-05 22:36:43 +09:00
Tatsuhiro Tsujikawa
8b579bc7d0
nghttpx: Always renew TLS ticket for TLSv1.3
2021-09-05 22:26:45 +09:00
Tatsuhiro Tsujikawa
ab16a11aa3
nghttpx: Add --frontend-quic-early-data, disable early data by default
2021-09-05 21:39:45 +09:00
Tatsuhiro Tsujikawa
85347e12de
nghttpx: Rate limit Stateless Reset transmission
2021-09-05 19:23:50 +09:00
Tatsuhiro Tsujikawa
67afbbbaa6
nghttpx: Use ngtcp2_cid as a hash key
2021-09-05 19:00:26 +09:00
Tatsuhiro Tsujikawa
b743ee21f0
nghttpx: Implement closing and draining state
2021-09-05 18:01:27 +09:00
Tatsuhiro Tsujikawa
72702a042e
Cleanup
2021-09-05 17:47:50 +09:00
Tatsuhiro Tsujikawa
649c69fa9e
nghttpx: Do not send CONNECTION_CLOSE on idle timeout
2021-09-04 19:04:22 +09:00
Tatsuhiro Tsujikawa
9fd0b87925
Add missing APIDOCS entry
2021-09-04 18:41:13 +09:00
Tatsuhiro Tsujikawa
1c7a001489
bpf: Take into account entire DCID
2021-09-04 18:31:21 +09:00
Tatsuhiro Tsujikawa
47edc33b0d
nghttpx: Use ULOG
2021-09-04 17:48:02 +09:00
Tatsuhiro Tsujikawa
2afad0c650
nghttpx: Use ngtcp2_conn_get_client_initial_dcid
2021-09-04 17:43:24 +09:00
Tatsuhiro Tsujikawa
fb53a6a686
Follow the latest ngtcp2 change
2021-09-04 17:37:00 +09:00
Tatsuhiro Tsujikawa
31b5b78dc1
Use switch to avoid many if-else-if
2021-09-04 17:35:33 +09:00
Tatsuhiro Tsujikawa
2f941c7fb3
Update doc
2021-09-04 17:32:57 +09:00
Tatsuhiro Tsujikawa
ba483b4032
Update doc
2021-09-04 17:30:06 +09:00
Tatsuhiro Tsujikawa
977b0ceee4
make clang-format
2021-09-04 17:27:43 +09:00
Tatsuhiro Tsujikawa
fcc20334da
Merge pull request #1613 from mkauf/check_pseudo_header_chars
...
Stricter checks for pseudo-headers :method and :path
2021-09-04 17:26:47 +09:00
Michael Kaufmann
83c063346d
Stricter checks for pseudo-headers :method and :path
...
Check the allowed characters for ":method" (see RFC 7230, section 3.2.6) and
":path". For ":path", the space and tab characters are now forbidden, but
other special characters are still allowed for compatibility reasons.
Update genvchartbl.py so that it generates the same table as in the code.
Fixes #1611
2021-08-31 21:47:35 +02:00
Tatsuhiro Tsujikawa
c2e29ad06f
nghttpx: Enforce worker-frontend-connections for QUIC
2021-08-31 19:48:26 +09:00
Tatsuhiro Tsujikawa
9194d40da7
Update bash_completions
2021-08-31 19:24:41 +09:00
Tatsuhiro Tsujikawa
002073ef57
Update manual pages
2021-08-31 19:24:41 +09:00
Tatsuhiro Tsujikawa
ef3066a1bd
nghttpx: Update doc
2021-08-31 19:24:41 +09:00
Tatsuhiro Tsujikawa
65db5b94e4
nghttpx: Document "quic" parameter
2021-08-31 19:24:41 +09:00
Tatsuhiro Tsujikawa
3122038c48
Add HTTP/3 documentation
2021-08-31 19:24:41 +09:00
Tatsuhiro Tsujikawa
54fd0efdfe
nghttpx: Return error if quic param is specified when quic is disabled
2021-08-31 17:15:44 +09:00
Tatsuhiro Tsujikawa
f0d1e50d5a
cmake: Build bpf
2021-08-31 17:15:37 +09:00
Tatsuhiro Tsujikawa
a87ea20b7c
configure: Avoid compile failure
2021-08-31 16:49:55 +09:00
Tatsuhiro Tsujikawa
8e7e40d0cc
bpf: Remove redundant -g
2021-08-31 16:49:55 +09:00
Tatsuhiro Tsujikawa
de4d4f6609
Fix cmake Systemd warning
2021-08-31 16:49:55 +09:00
Tatsuhiro Tsujikawa
e01d61484d
Fix compile error with cmake
2021-08-31 16:49:55 +09:00
Tatsuhiro Tsujikawa
51f83087f2
nghttpx: Add missing HTTP/3 timer handling
2021-08-31 14:19:31 +09:00
Tatsuhiro Tsujikawa
17012654e1
nghttpx: Add HTTP/3 graceful shutdown
2021-08-31 14:06:59 +09:00
Tatsuhiro Tsujikawa
e998d125ab
nghttpx: Send CONNECTION_CLOSE if Retry token validation failed
2021-08-31 13:23:52 +09:00
Tatsuhiro Tsujikawa
95601d3179
nghttpx: Utilize the latest ngtcp2 features
2021-08-31 12:13:06 +09:00
Tatsuhiro Tsujikawa
0566a5833b
nghttpx: Fix infinite loop
2021-08-30 18:39:28 +09:00
Tatsuhiro Tsujikawa
c50459b81a
bpf: use __builtin_memcpy explicitly to build under ubuntu 20.04
2021-08-30 18:34:26 +09:00
Tatsuhiro Tsujikawa
0e52cf76eb
bpf: Add -g flag by default
2021-08-30 18:33:27 +09:00
Tatsuhiro Tsujikawa
0baf725073
Remove unneeded include files
2021-08-30 18:32:58 +09:00
Tatsuhiro Tsujikawa
e77fd7ddb9
Build libbpf on CI
2021-08-29 22:08:42 +09:00
Tatsuhiro Tsujikawa
e5cb5dca61
Fix reuseport_kern.c to work under ubuntu 20.04
2021-08-29 21:09:27 +09:00
Tatsuhiro Tsujikawa
7941b559c5
Fix libbpf configure help message
2021-08-29 21:08:41 +09:00
Tatsuhiro Tsujikawa
58d81dbc52
nghttpx: Send Stateless Reset in response to Short packet only for now
2021-08-29 21:08:41 +09:00
Tatsuhiro Tsujikawa
2b4dc4496f
nghttpx: Forward QUIC UDP datagram to lingering worker in graceful shutdown
...
Forward QUIC UDP datagram to lingering worker process which is in
graceful shutdown. Both SIGHUP and SIGUSR2 work. To make this work
correctly, eBPF is required.
2021-08-29 18:35:41 +09:00
Tatsuhiro Tsujikawa
c5e9d0096a
nghttpx: Fix crash when ConnectionHandler is deleted while doing memcached request
2021-08-29 17:17:36 +09:00
Tatsuhiro Tsujikawa
c6f9780b1b
Add accidentally deleted BPFCFLAGS
2021-08-29 15:47:45 +09:00
Tatsuhiro Tsujikawa
ef694923f7
Provide enum bpf_stats_type if not defined in linux/bpf.h for older kernel
2021-08-29 14:30:59 +09:00
Tatsuhiro Tsujikawa
8d02203bb6
Add LIBBPF_CFLAGS for eBPF program and nghttpx
2021-08-29 13:58:10 +09:00
Tatsuhiro Tsujikawa
1e75be3b5d
Find libbpf with pkg-config
2021-08-29 13:43:07 +09:00
Tatsuhiro Tsujikawa
7d13891066
nghttpx: Rename eBPF options
2021-08-27 21:34:18 +09:00
Tatsuhiro Tsujikawa
4292bd7ad9
nghttpx: Set max udp payload size to IPv4 minimum payload size for now
2021-08-27 21:26:50 +09:00
Tatsuhiro Tsujikawa
82cd110dbe
nghttpx: Use SHRPX_MAX_UDP_PAYLOAD_SIZE
2021-08-27 21:13:26 +09:00
Tatsuhiro Tsujikawa
d2729193c7
nghttpx: Add --frontend-http3-max-concurrent-streams option
2021-08-27 21:11:03 +09:00
Tatsuhiro Tsujikawa
87fb325357
nghttpx: Add window size options for HTTP/3 connection
2021-08-27 21:02:45 +09:00
Tatsuhiro Tsujikawa
fb8ff7b892
nghttpx: Format duration for frontend-quic-idle-timeout default value
2021-08-27 19:52:24 +09:00
Tatsuhiro Tsujikawa
5aeae7444f
nghttpx: Add --frontend-quic-debug-log option
2021-08-27 19:16:25 +09:00
Tatsuhiro Tsujikawa
c9b11e9fbf
nghttpx: Rename --quic-idle-timeout to --frontend-quic-idle-timeout
2021-08-27 19:03:06 +09:00
Tatsuhiro Tsujikawa
0005efa508
nghttpx: --frontend-http3-read-timeout should be noop if HTTP/3 is disabled
2021-08-27 18:45:19 +09:00
Tatsuhiro Tsujikawa
6931cb9d65
nghttpx: Add --quic-idle-timeout option
2021-08-27 18:44:33 +09:00
Tatsuhiro Tsujikawa
c1bcf0f11a
nghttpx: Do not dump HTTP/3 header fields
2021-08-27 18:35:27 +09:00
Tatsuhiro Tsujikawa
717e7ae8b2
nghttpx: Add --frontend-http3-read-timeout option
...
Add --frontend-http3-read-timeout option. QUIC idle timeout option
will be added later.
2021-08-27 18:29:06 +09:00
Tatsuhiro Tsujikawa
bed00fb8e1
nghttpx: Use buf.size()
2021-08-27 18:20:17 +09:00
Tatsuhiro Tsujikawa
2010401b81
nghttpx: Send APPLICATION_CLOSE on app read timeout
2021-08-27 18:19:44 +09:00
Tatsuhiro Tsujikawa
23e09e3b3c
Mention libbpf-dev in README.rst
2021-08-26 22:12:54 +09:00
Tatsuhiro Tsujikawa
80c9d46b70
Update doc
2021-08-26 22:10:02 +09:00
Tatsuhiro Tsujikawa
0aa107426c
Bump QUIC flavored OpenSSL
2021-08-26 21:41:06 +09:00
Tatsuhiro Tsujikawa
1517c77d9c
h2load: Do not use legacy QUIC transport_parameters code point
2021-08-26 21:34:49 +09:00
Tatsuhiro Tsujikawa
51bf79bb8c
nghttpx: Add --http2-altsvc option
2021-08-26 21:34:49 +09:00
Tatsuhiro Tsujikawa
d88eadff13
nghttpx: Make sure each quic frontend endpoint has a unique address
2021-08-26 21:34:49 +09:00
Tatsuhiro Tsujikawa
0d35e8e15e
nghttpx: Do not allow quic on UNIX domain socket for now
2021-08-26 21:34:49 +09:00
Tatsuhiro Tsujikawa
a0066a1ccf
nghttpx: Send NEW_TOKEN and very token from client
2021-08-26 21:34:49 +09:00
Tatsuhiro Tsujikawa
7a5082e8c4
nghttpx: Clean up confusing dcid/scid mixup
2021-08-26 21:34:49 +09:00
Tatsuhiro Tsujikawa
dfc345756c
nghttpx: Send Retry packet
2021-08-26 21:34:49 +09:00
Tatsuhiro Tsujikawa
137da6adf6
nghttpx: Generate and set QUIC secrets
2021-08-26 21:34:49 +09:00
Tatsuhiro Tsujikawa
8563ec5a7a
nghttpx: Add options to specify eBPF program file path and disable eBPF
2021-08-26 21:34:49 +09:00
Tatsuhiro Tsujikawa
8ac4bee3bc
nghttpx: Add eBPF program to steer QUIC datagram to a correct socket
2021-08-26 21:34:49 +09:00
Tatsuhiro Tsujikawa
579fb478b5
nghttpx: Fix heap-use-after-free on initialization failure
2021-08-26 13:26:37 +09:00
Tatsuhiro Tsujikawa
33c580ebbf
Forward QUIC packet to the correct worker
2021-08-23 22:21:48 +09:00
Tatsuhiro Tsujikawa
ff389b3e97
Merge branch 'quic'
2021-08-23 18:41:35 +09:00
Tatsuhiro Tsujikawa
50fe8e7852
Check the availability of SSL_is_quic
2021-08-22 23:59:09 +09:00
Tatsuhiro Tsujikawa
cdb6d19989
Enable HTTP/3 build for cmake on CI
2021-08-22 23:54:29 +09:00
Tatsuhiro Tsujikawa
29694e2945
nghttpx: Fix build error regarding RAND_bytes
2021-08-22 23:54:29 +09:00
Tatsuhiro Tsujikawa
9fe08d3913
nghttpx: Fix build without mruby
2021-08-22 23:54:29 +09:00
Tatsuhiro Tsujikawa
c07a0d9005
Allow HTTP/3 in cmake build
2021-08-22 23:54:29 +09:00
Tatsuhiro Tsujikawa
cbd45478e0
Cleanup flags/libs order
2021-08-22 23:54:29 +09:00
Tatsuhiro Tsujikawa
6f243108e9
nghttpx: Fix CI build error
2021-08-22 23:54:29 +09:00
Tatsuhiro Tsujikawa
0dcdf7ae21
Run http3 build on CI
2021-08-22 23:54:29 +09:00
Tatsuhiro Tsujikawa
e7ef2bec8b
Rename h2load Dockerfile to Dockerfile-h2load-http3
2021-08-22 23:54:29 +09:00
Tatsuhiro Tsujikawa
4f4dce82c6
Update h2load Dockerfile
2021-08-22 23:54:29 +09:00
Tatsuhiro Tsujikawa
a619e7a88c
Define UDP_SEGMENT if linux/udp.h has it
2021-08-22 23:54:29 +09:00
Tatsuhiro Tsujikawa
102d960106
nghttpx: Compile without UDP_SEGMENT
2021-08-22 23:54:29 +09:00
Tatsuhiro Tsujikawa
7de71b29a0
Update doc
2021-08-22 23:54:29 +09:00
Tatsuhiro Tsujikawa
4eced8a393
Build without HTTP/3 support
2021-08-22 23:54:29 +09:00
Tatsuhiro Tsujikawa
710b9c35e5
Merge pull request #1610 from amirlivneh/comment-typo
...
Fix reference to non-existing nghttp2_option_set_max_send_header_block_size() in comment
2021-08-22 23:35:05 +09:00
Tatsuhiro Tsujikawa
f46984d218
nghttpx: Enable QUIC 0RTT
2021-08-21 18:34:08 +09:00
Tatsuhiro Tsujikawa
44663a7e6e
nghttpx: Handle backend reset and early response
2021-08-21 18:34:08 +09:00
Tatsuhiro Tsujikawa
446124f378
nghttpx: Process request body
2021-08-21 18:34:08 +09:00
Tatsuhiro Tsujikawa
c45f2085d5
nghttpx: Fix veccnt assertion
2021-08-21 18:34:08 +09:00
Tatsuhiro Tsujikawa
3abf62b41a
nghttpx: Send stateless reset token in TP
2021-08-21 18:34:08 +09:00
Tatsuhiro Tsujikawa
9b2982510e
nghttpx: Send stateless reset
2021-08-21 18:34:08 +09:00
Tatsuhiro Tsujikawa
48bb1ebe01
nghttpx: Add configuration to enable ngtcp2 logging (no cmd-line opt yet)
2021-08-21 18:34:08 +09:00
Tatsuhiro Tsujikawa
fe4c6e4c56
nghttpx: Generate stateless reset secret
2021-08-21 18:34:08 +09:00
Tatsuhiro Tsujikawa
37bd9ffc48
nghttpx: Implement http_reset_stream and http_send_stop_sending
2021-08-21 18:34:08 +09:00
Tatsuhiro Tsujikawa
b0548b4944
nghttpx: Complete HTTP request and response
2021-08-21 18:34:08 +09:00
Tatsuhiro Tsujikawa
12425556c1
nghttpx: Extend Downstream stream_id to 64 bits
2021-08-21 18:34:07 +09:00
Tatsuhiro Tsujikawa
3ed2da562b
nghttpx: Add HTTP3 skeleton and minor SSL_CTX fix
2021-08-21 18:34:07 +09:00
Tatsuhiro Tsujikawa
354f46d8c5
nghttpx: Add QUIC timeouts
2021-08-21 18:34:07 +09:00
Tatsuhiro Tsujikawa
e70f0db83c
nghttpx: QUIC handshake now works
2021-08-21 18:34:07 +09:00
Tatsuhiro Tsujikawa
49b8c56fde
nghttpx: Use existing QUIC error object
2021-08-21 18:34:07 +09:00
Tatsuhiro Tsujikawa
940fdd5573
nghttpx: Read quic packet
2021-08-21 18:34:04 +09:00
Tatsuhiro Tsujikawa
ef53db201e
nghttpx: Create QUIC SSL_CTX
...
We choose an easier route to duplicate SSL_CTX for QUIC.
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
aeb0b0728d
nghttpx: Add QUICConnectionHandler and HTTP3Upstream skeleton
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
8b2746abf1
nghttpx: Add QUICListener
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
01da060496
nghttpx: Create quic server socket
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
20cbd269c4
Compile with the latest ngtcp2
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
7c2cd43dfa
Compile with the latest ngtcp2 and nghttp3
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
de5feff720
Compile with the latest nghttp3
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
7342de837d
Compile with the latest ngtcp2
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
aa2c648918
Just use h3 ALPN
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
e914b50d16
Compile with the latest ngtcp2
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
f79554f918
Count outgoing packets
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
213cc9c4b5
Enlarge receive buffer
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
05f3b8fa0f
Adopt ngtcp2_crypto_recv_crypto_data_cb
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
bc53624133
Do not specify max_udp_payload_size for now
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
5944d034da
Avoid std::ostringstream
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
df400feb61
make clang-format
2021-08-21 18:33:39 +09:00
Hajime Fujita
48e10c57da
h2load: Add qlog output support
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
1eb818b64c
QUIC UDP GSO
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
0954932091
Rewrite docker file
...
Rewrite docker file so that:
- avoid k8s debian-base
- build h2load as statically as possible
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
e584d9cd2e
Measure the number of UDP datagrams sent and received
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
4d140ea6bd
Update Dockerfile
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
09a2e50fc2
Support both h3 and h3-29 ALPN and their corresponding QUIC versions
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
35d8ef33ef
Compile with the latest ngtcp2
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
f1ff2af47a
Deal with 0 length HTTP data write case
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
d2d2c31ec7
Follow ngtcp2_conn_writev_stream specification change
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
95102c1c6c
Compile with the latest ngtcp2
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
fa8c16ae01
Compile with the latest ngtcp2 and nghttp3
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
7ca2a8213d
h2load: Enable --data for HTTP/3
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
1c8e5046e5
Compile with the latest ngtcp2
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
68a5652733
Build with draft-32 openssl
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
6b4be30c64
Cap --window-bits to 26 for QUIC
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
6ce952ad4a
Set X25519 as default
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
5ae62dd9d7
Cap --window-bits to 23 for QUIC
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
51987107a2
Compile with the latest ngtcp2
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
e4a8c4813c
Compile with the latest ngtcp2
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
3d708f7dc4
Compile with the latest ngtcp2
2021-08-21 18:33:39 +09:00
George Liu
4b5bcb56bc
fix quic branch Dockerfile
...
libjemalloc1 package doesn't exist as it's now libjemalloc2 named
Get:1 http://security.debian.org/debian-security buster/updates InRelease [65.4 kB]
Get:2 http://deb.debian.org/debian buster InRelease [121 kB]
Get:3 http://deb.debian.org/debian buster-updates InRelease [51.9 kB]
Get:4 http://security.debian.org/debian-security buster/updates/main amd64 Packages [213 kB]
Get:5 http://deb.debian.org/debian buster/main amd64 Packages [7905 kB]
Get:6 http://deb.debian.org/debian buster-updates/main amd64 Packages [7868 B]
Fetched 8364 kB in 1s (6499 kB/s)
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
E: Unable to locate package libjemalloc1
fix reference to OpenSSL 1.1.1 branch
Cloning into 'openssl'...
warning: Could not find remote branch OpenSSL_1_1_1d-quic-draft-29 to clone.
fatal: Remote branch OpenSSL_1_1_1d-quic-draft-29 not found in upstream origin
2021-08-21 18:33:39 +09:00
Tatsuhiro Tsujikawa
10ec8c9558
Compile with the latest ngtcp2
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
3900f758ea
QUIC needs termination without session
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
a3346fbad8
Compile with latest ngtcp2
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
f73d58d74e
quic draft-29
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
813d5e1ddf
Compile with latest ngtcp2
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
acb661df72
Fix bug for platform which does not have SOCK_NONBLOCK
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
4bc7710de9
Fix compile error
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
b8c1f4f138
Compile with latest ngtcp2
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
387b67472c
Compile latest ngtcp2 crypto lib
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
b2c099bac6
Use ngtcp2_conn_handle_expiry
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
1acebb1cc4
draft-28
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
8d89a8dcb0
Assert ndatalen
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
a60a34331b
Revert "Ensure complete packet is written"
...
This reverts commit c19046b09f8e66713f0e067f986ed92d676eb6b6.
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
749015eb86
Ensure complete packet is written
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
4b45142e72
Fix compile error with the latest ngtcp2
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
76009ce7b9
draft-27
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
2722119776
Handle stream limit increment
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
c724585bce
Update Dockerfile
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
0b61e46f95
draft-25
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
5c0da486b9
Remove unused member function declaration
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
9701e5e6e4
Fix compile error
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
1684091234
Bump base image and use OpenSSL_1_1_1d-quic-draft-24
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
a93eb8b8f5
Optimize QUIC write
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
c591ab5e6f
Only count STREAM data as bytes_total
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
b3fbebed55
Use correct type
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
4621f88441
Follow ngtcp2 API update
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
747edb3a99
quic draft-24
2021-08-21 18:33:38 +09:00
Dmitri Tikhonov
558970e281
Update Dockerfile to use I-D 23 branches of ngtcp2 and openssl
2021-08-21 18:33:38 +09:00
Lucas Pardue
73fd20a608
Add SSLKEYLOGFILE support
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
78c2c33b9e
Compile with the latest ngtcp2
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
610add1f59
Send SNI
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
655510ce28
h3-23
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
f7414700f4
Small adjustment of successful HTTP/3 error code
...
Non-zero successful error code is a bit annoying because ngtcp2 does
not know it. Enforcing successful application error code to 0 is a
lot simpler.
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
53a860a5bf
Simplify write_quic
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
1aae450303
Handle sending just fine
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
b3a2f8837c
Avoid setting 0 to repeat field
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
33d2a93294
Add missing acked_stream_data_offset callback
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
2da0db70de
Fix return value
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
8b5cbf8066
Update doc
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
9668563801
Update docker build and doc
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
ff7067f3a3
Compile with the latest ngtcp2 and ngtcp2_crypto_openssl
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
6b8b152444
Remove error handling which does not happen
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
3dbe3b3e7f
Follow ngtcp2 API changes and use libngtcp2_crypto_openssl
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
7aa4bff97b
quic: Support TLS_AES_128_CCM_SHA256
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
6002fac9f1
h2load: Add --tls13-ciphers option
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
231c6ac862
Add Dockerfile
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
c3eb7e1634
Handle preferred address
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
05a6ee2b49
Show ngtcp2 debug log with --verbose
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
94d76c042d
h2load: Add --groups option
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
23ccaa6191
Always call write_quic when timer expires
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
476e9d0a48
h3-22
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
7cd5ed6fc6
Handle Retry
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
750c23f319
quic: Configure settings with options
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
bb36df8b2e
h2load: Fix possible deadlock
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
470c43a986
Fix link
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
8ea78e8361
Add build instruction
2021-08-21 18:33:38 +09:00
Tatsuhiro Tsujikawa
9c748d20d5
[WIP] Add QUIC to h2load
2021-08-21 18:33:38 +09:00
Amir Livneh
af15b22b03
Fix reference to non-existing nghttp2_option_set_max_send_header_block_size() in comment
2021-08-19 13:14:58 -04:00
Tatsuhiro Tsujikawa
80c9c705b8
Merge pull request #1607 from nghttp2/dnf
...
Add "dnf" (= "do not forward") parameter to backend option
2021-08-14 17:35:20 +09:00
Tatsuhiro Tsujikawa
138419d232
Add "dnf" (= "do not forward") parameter to backend option
2021-08-14 17:16:21 +09:00
Tatsuhiro Tsujikawa
8cee15bc5a
Merge pull request #1603 from JackyYin/improve-doc
...
update doc for nghttp2_session_mem_recv
2021-08-10 21:25:41 +09:00
Jacky_Yin
8113974b26
doc: update document for nghttp2_session_mem_recv
2021-08-09 23:54:07 +08:00
Tatsuhiro Tsujikawa
2b70cefd48
Merge pull request #1598 from danbev/programmers_guide_typo
...
Fix typo in programmers-guide.rst
2021-08-08 15:49:43 +09:00
Tatsuhiro Tsujikawa
16054d4bfd
Merge pull request #1602 from lhuang04/file_read_callback_prototype_mismatch
...
Fix prototype mismatch for function 'file_read_callback'
2021-08-08 15:48:55 +09:00
lhuang04
c2d4a53b67
Fix prototype mismatch for function 'file_read_callback'
...
Summary:
The [data_flags](https://github.com/lhuang04/nghttp2/blob/master/src/HttpServer.cc#L1078 ) is defined as `uint32_t*` in definition, but delared as [int*](https://github.com/lhuang04/nghttp2/blob/master/src/HttpServer.h#L245 ) in the prototype.
```
stderr: error: no previous prototype for function 'file_read_callback' [-Werror,-Wmissing-prototypes]
ssize_t file_read_callback(nghttp2_session *session, int32_t stream_id,
^
```
Test Plan:
Reviewers:
Subscribers:
Tasks:
Tags:
2021-08-07 07:24:21 -07:00
Tatsuhiro Tsujikawa
29cbf8b83f
clang-format-12
2021-08-04 15:04:58 +09:00
Daniel Bevenius
3448b1c78c
Fix typo in programmers-guide.rst
2021-07-26 14:44:15 +02:00
Tatsuhiro Tsujikawa
31253f400d
Update manual pages
2021-07-18 14:08:52 +09:00
Tatsuhiro Tsujikawa
1b6f547948
Replace mater remnants with main in nghttpx manual
2021-07-18 14:02:52 +09:00
Tatsuhiro Tsujikawa
deb68b414a
Bump up version number to v1.45.0-DEV
2021-07-18 13:16:42 +09:00
Tatsuhiro Tsujikawa
b799b063f8
Update manual pages
2021-07-18 12:45:33 +09:00
Tatsuhiro Tsujikawa
368014b8dd
Bump version number to v1.44.0, LT revision to 34:2:20
2021-07-18 12:40:51 +09:00
Tatsuhiro Tsujikawa
fa16e66a6d
nghttpx: Fix max distance in weight group/address cycle comparison
2021-07-14 23:26:33 +09:00
Tatsuhiro Tsujikawa
40af31da4c
nghttpx: Set connect_blocker and live_check after shuffling addresses
2021-07-14 23:09:28 +09:00
Tatsuhiro Tsujikawa
9e6c0685a2
Fix build failure
2021-05-15 13:51:24 +09:00
Tatsuhiro Tsujikawa
ebad3d4755
Port new ngtcp2 map implementation
2021-05-13 15:01:58 +09:00
Tatsuhiro Tsujikawa
d4fd0681ef
Bump llhttp to 6.0.2
2021-05-13 14:06:17 +09:00
Tatsuhiro Tsujikawa
43a47aa08b
Do not return HPE_USER from where it is prohibited
2021-05-13 13:59:44 +09:00
Tatsuhiro Tsujikawa
20079b4c2f
Update bash_completions
2021-04-02 22:35:37 +09:00
Tatsuhiro Tsujikawa
2aeec7703e
Update manual pages
2021-04-02 22:35:37 +09:00
Tatsuhiro Tsujikawa
cef458c31c
Replace black-list with block-list
...
nghttpx --no-http2-cipher-black-list and
--client-no-http2-cipher-black-list are deprecated and replaced with
--no-http2-cipher-block-list and --client-no-http2-cipher-block-list
respectively.
2021-04-02 22:35:37 +09:00
Tatsuhiro Tsujikawa
617a5766a2
Replace master with main
2021-04-02 22:08:19 +09:00
Tatsuhiro Tsujikawa
f1d6733554
Initialize Config rps field
2021-03-10 13:45:20 +09:00
Tatsuhiro Tsujikawa
5f3bcb1f58
Add precious variables for libev and jemalloc and use JEMALLOC_CFLAGS
2021-03-06 22:32:17 +09:00
Tatsuhiro Tsujikawa
b419bfd95f
Remove unused field
2021-02-24 20:58:15 +09:00
Tatsuhiro Tsujikawa
e406a2c15e
Update doc
2021-02-23 17:41:27 +09:00
Tatsuhiro Tsujikawa
962a75c45e
Merge pull request #1559 from nghttp2/h2load-rps
...
h2load: Add --rps option
2021-02-23 17:08:01 +09:00
Tatsuhiro Tsujikawa
6cdc13d6c6
h2load: Add --rps option
2021-02-23 16:40:17 +09:00
Tatsuhiro Tsujikawa
92944f7847
h2load: Allow unit in -D option
2021-02-23 15:31:54 +09:00
Tatsuhiro Tsujikawa
276792a812
Remove unnecessary function
...
on_stream_close is called after on_frame_not_send_callback with
success=false without this function.
2021-02-23 14:32:43 +09:00
Tatsuhiro Tsujikawa
579fa6ea93
Add more --with-* configure flags
2021-02-21 21:42:15 +09:00
Tatsuhiro Tsujikawa
2f2b211766
Add LIBTOOL_LDFLAGS configure variable
2021-02-21 21:32:48 +09:00
Tatsuhiro Tsujikawa
88a3cb51af
Bump llhttp to 4.0.0
2021-02-18 18:46:23 +09:00
Tatsuhiro Tsujikawa
40679cf638
Merge pull request #1553 from nghttp2/nghttpx-fix-accesslog-method
...
nghttpx: Remove trailing white space after $method log variable
2021-02-08 23:02:19 +09:00
Tatsuhiro Tsujikawa
5b587e8578
Merge pull request #1550 from jktjkt/docs-asio-fix-typos
...
docs: asio: fix some typos
2021-02-08 22:29:03 +09:00
Tatsuhiro Tsujikawa
50a1121d81
nghttpx: Remove trailing white space after $method log variable
2021-02-08 22:22:05 +09:00
Tatsuhiro Tsujikawa
3239c5efcc
Bump up version number to v1.44.0-DEV
2021-02-02 20:39:12 +09:00
Tatsuhiro Tsujikawa
fb0bd22979
Update manual pages
2021-02-02 19:34:21 +09:00
Tatsuhiro Tsujikawa
3dc6c0afa2
Bump version number to 1.43.0
2021-02-02 19:28:14 +09:00
Tatsuhiro Tsujikawa
e8762781a7
Update AUTHORS
2021-02-02 19:26:08 +09:00
Tatsuhiro Tsujikawa
2bf841e22a
workflow: Build with UBSAN enabled
2021-01-17 17:41:01 +09:00
Jan Kundrát
5b9892a902
docs: asio: fix some typos
...
Really just a s/pusedo/pseudo/g and s/exluced/excluded/g.
2021-01-15 00:39:39 +01:00
Tatsuhiro Tsujikawa
7ebab98e91
Merge pull request #1548 from nghttp2/py3-bindings
...
Py3 bindings
2020-12-29 19:09:35 +09:00
Tatsuhiro Tsujikawa
23fc6cc900
Bump Linux runner OS to ubuntu 20.04
2020-12-29 18:33:50 +09:00
Tatsuhiro Tsujikawa
2e35cdea6c
Update doc
2020-12-29 18:27:07 +09:00
Tatsuhiro Tsujikawa
22af8e782b
Require python3 for python bindings
2020-12-29 18:24:41 +09:00
Tatsuhiro Tsujikawa
c88e910009
Update ax_python_devel.m4
2020-12-29 18:24:41 +09:00
Tatsuhiro Tsujikawa
43ba312593
Merge pull request #1547 from nghttp2/sphinx-v3.3
...
Sphinx v3.3
2020-12-29 18:15:35 +09:00
Tatsuhiro Tsujikawa
3c17299a92
Update enum references
2020-12-29 17:47:57 +09:00
Tatsuhiro Tsujikawa
a7ecff657c
Make doc generation work with sphinx v3.3
2020-12-29 17:47:57 +09:00
Tatsuhiro Tsujikawa
79a4f789a1
Merge pull request #1546 from nghttp2/py3-scripts
...
Python3 development scripts
2020-12-29 17:47:04 +09:00
Tatsuhiro Tsujikawa
28ba0b37e1
Update document reference
2020-12-29 17:35:55 +09:00
Tatsuhiro Tsujikawa
6b7ade9f3f
Require python3 for python scripts
2020-12-29 17:35:55 +09:00
Tatsuhiro Tsujikawa
465367294f
Bump clang-format to 10
2020-12-28 11:45:44 +09:00
Tatsuhiro Tsujikawa
563c117303
Merge pull request #1544 from nghttp2/nghttpx-clear-mcpool
...
nghttpx: Make sure that Pool gets cleared when all buffers are returned
2020-12-16 23:50:39 +09:00
Tatsuhiro Tsujikawa
1c04ca8032
Merge pull request #1540 from tavrez/patch-1
...
Added new nghttp2_ksl.c to Windows makefile
2020-12-16 23:31:33 +09:00
Tatsuhiro Tsujikawa
d32e20bcaa
nghttpx: Make sure that Pool gets cleared when all buffers are returned
2020-12-16 23:27:58 +09:00
Tatsuhiro Tsujikawa
8b8ba6b0a6
Merge pull request #1542 from nghttp2/nghttpx-check-sigalg
...
nghttpx: Choose ECDSA cert if compatible signature algorithm available
2020-12-14 23:00:52 +09:00
Tatsuhiro Tsujikawa
81fb015391
nghttpx: Choose ECDSA cert if compatible signature algorithm available
2020-12-13 23:40:43 +09:00
Reza Tavakoli
d8c71d5fdb
Added new nghttp2_ksl.c to Windows makefile
2020-12-02 17:38:03 +03:30
Tatsuhiro Tsujikawa
fb5b5aef0a
Merge pull request #1537 from nghttp2/nghttpx-allow-colon-in-pattern
...
nghttpx: Add workaround to include ':' in backend pattern
2020-11-27 23:35:27 +09:00
Tatsuhiro Tsujikawa
6787423edc
nghttpx: Add workaround to include ':' in backend pattern
2020-11-27 22:15:46 +09:00
Tatsuhiro Tsujikawa
ffcdf5dfbc
Merge pull request #1533 from LorenzNickel/patch-1
...
Fix typo in security.rst
2020-11-24 00:51:14 +09:00
Lorenz Nickel
0cdb173846
Fix typo in security.rst
2020-11-23 16:39:49 +01:00
Tatsuhiro Tsujikawa
c9d5472ffb
Bump version number to 1.43.0-DEV
2020-11-23 23:54:19 +09:00
Tatsuhiro Tsujikawa
15bd71ed94
Update manual pages
2020-11-23 23:38:21 +09:00
Tatsuhiro Tsujikawa
a76b7a37fd
Bump version number to 1.42.0, LT revision to 34:1:20
2020-11-23 23:22:49 +09:00
Tatsuhiro Tsujikawa
5cdf9ce19b
Update AUTHORS
2020-11-23 23:19:58 +09:00
Tatsuhiro Tsujikawa
0fba09246b
Build with GitHub Actions
2020-11-16 21:22:03 +09:00
Tatsuhiro Tsujikawa
444fd8180d
Bump llhttp to 2.2.0
2020-11-15 11:42:25 +09:00
Tatsuhiro Tsujikawa
f6b875e09d
Add missing cmake/FindSystemd.cmake to dist
2020-11-15 11:25:33 +09:00
Tatsuhiro Tsujikawa
694c0a4fb3
cmake: Remove spdylay
2020-11-15 11:23:12 +09:00
Tatsuhiro Tsujikawa
da7959c2e8
nghttpx: Deal with the case when h2 backend is retired before it is initialized
2020-11-15 11:19:07 +09:00
Tatsuhiro Tsujikawa
2e44f23b05
Another mruby build fix
2020-09-24 23:30:41 +09:00
Tatsuhiro Tsujikawa
f5351bee25
Fix make clean on mruby
2020-09-24 23:18:35 +09:00
Tatsuhiro Tsujikawa
a1999ab2a5
Bump llhttp to 2.1.3
2020-09-24 23:13:00 +09:00
Tatsuhiro Tsujikawa
1bccccc174
Merge pull request #1511 from nghttp2/nghttpx-accesslog-path-without-query
...
nghttpx: Add accesslog variables to record request path without query
2020-09-24 22:56:30 +09:00
Tatsuhiro Tsujikawa
4e3c61ef4d
nghttpx: Add accesslog variables to record request path without query
...
This commit the following variables to construct request line without
including query component:
* $method
* $path
* $path_without_query
* $protocol_version
2020-09-19 23:58:37 +09:00
Tatsuhiro Tsujikawa
7b4de401d2
nghttpx: Check worker wide blocker before creating new downstream connection
2020-09-19 23:22:14 +09:00
Tatsuhiro Tsujikawa
1570d5f694
Bump llhttp to 2.1.1
2020-09-03 19:33:09 +09:00
Tatsuhiro Tsujikawa
181a007a34
Fix mruby build
...
Copy build_config.rb to build directory because now
build_config.rb.lock is created along side it.
Define toolchain depending on CC environment variable.
2020-09-02 23:36:44 +09:00
Tatsuhiro Tsujikawa
7df73a5d90
nghttpx: mrb_run was removed
2020-09-02 22:12:45 +09:00
Tatsuhiro Tsujikawa
b00fa5567c
Bump mruby to 2.1.2
2020-09-02 22:03:14 +09:00
Tatsuhiro Tsujikawa
4ecdc2903d
Amend 7a57b039a6
2020-07-26 15:31:54 +09:00
Tatsuhiro Tsujikawa
7a57b039a6
Fix cmake build
2020-07-26 15:19:19 +09:00
Tatsuhiro Tsujikawa
1ce628529b
nghttp2_map backed by nghttp2_ksl
2020-07-26 15:13:43 +09:00
Tatsuhiro Tsujikawa
6089353d52
Fix EXTRA_DIST
2020-07-24 20:37:16 +09:00
Tatsuhiro Tsujikawa
db45fb483c
Fix sphinx warnings
...
This commit fixes the following warning:
RemovedInSphinx30Warning: sphinx.locale.l_() is deprecated. Please use `_()` instead.
2020-07-24 20:23:57 +09:00
Tatsuhiro Tsujikawa
4272dcac1d
Update sphinx_rtd_theme
2020-07-24 20:18:59 +09:00
Tatsuhiro Tsujikawa
32ac8bdf79
Add security process document
2020-07-24 20:14:07 +09:00
Tatsuhiro Tsujikawa
7f92b1e0e8
Merge pull request #1489 from tomaskrizek/doc-session-send
...
doc: nghttp2_session_send is also affected by max concurrent streams
2020-07-19 12:14:53 +09:00
Tatsuhiro Tsujikawa
d5550e946d
Amend f1d8547b29
...
Better handling of tls and early data buffer
2020-07-14 19:47:08 +09:00
Tatsuhiro Tsujikawa
62411f5a6e
nghttpx: Set client_handler to special frontend objects
2020-07-14 01:13:29 +09:00
Tatsuhiro Tsujikawa
e9465f0ee5
Revert "nghttpx: Fix ubsan error"
...
This reverts commit 14dfeee4ed .
2020-07-14 01:13:29 +09:00
Tatsuhiro Tsujikawa
14dfeee4ed
nghttpx: Fix ubsan error
2020-07-14 00:12:07 +09:00
Tatsuhiro Tsujikawa
f1d8547b29
nghttpx: Fix stall when TLS follows after proxy protocol
...
This fixes that nghttpx stalls when TLS handshake and data follow
after proxy protocol header and no extra read notification is
triggered (e.g., just small 1 HTTP request).
2020-07-13 23:39:17 +09:00
Tatsuhiro Tsujikawa
7b46edb483
Merge pull request #1477 from nghttp2/ignore-rst-stream-to-idle-stream
...
Don't send RST_STREAM to idle stream
2020-06-28 11:50:59 +09:00
Tomas Krizek
5497a1dfa7
doc: nghttp2_session_send is also affected by max concurrent streams
...
Further clarify the function also takes into account maximum concurrent
streams.
Closes #691
Closes #817
2020-06-19 17:22:55 +02:00
Tatsuhiro Tsujikawa
c8bf8c6521
Don't send RST_STREAM to idle stream
2020-06-18 11:59:06 +09:00
Tatsuhiro Tsujikawa
b6b135c060
Merge pull request #1488 from tomaskrizek/doc-session-send-flow-control
...
doc: clarify flow control behaviour for nghttp2_session_send()
2020-06-18 11:57:51 +09:00
Tomas Krizek
f76ac19627
doc: clarify flow control behaviour for nghttp2_session_send()
...
The previous wording implied that if send_callback doesn't return
NGHTTP2_ERR_WOULDBLOCK, this function would always send all
submitted requests / data. This is not the case, since flow control can
cause some data to remain queued until WINDOW_UPDATE is received.
2020-06-17 17:19:30 +02:00
Tatsuhiro Tsujikawa
abe80e371e
nghttpx: Fix logging integer
2020-06-10 20:56:33 +09:00
Tatsuhiro Tsujikawa
1ecc7940b8
Fix compile error with gcc
2020-06-06 00:48:33 +09:00
Tatsuhiro Tsujikawa
ab11b2bba5
clang-format
2020-06-05 23:16:01 +09:00
Tatsuhiro Tsujikawa
6d7f1256de
Merge branch 'asraa-fix-ubsan'
2020-06-05 23:13:34 +09:00
Tatsuhiro Tsujikawa
cf094bd56b
Fix ubsan applying zero offset to null pointer occurred in unit test
2020-06-05 23:13:08 +09:00
Asra Ali
78a56cf66f
fix ubsan errors
...
Signed-off-by: Asra Ali <asraa@google.com >
2020-06-05 23:13:08 +09:00
Tatsuhiro Tsujikawa
ec084acdba
Bump version number to 1.42.0-DEV
2020-06-02 21:21:13 +09:00
Tatsuhiro Tsujikawa
8f7b008b15
Update bash_completion
2020-06-02 21:05:34 +09:00
Tatsuhiro Tsujikawa
83086ba91a
Update manual pages
2020-06-02 21:04:57 +09:00
Tatsuhiro Tsujikawa
c3b4662563
Merge pull request from GHSA-q5wr-xfw9-q7xr
...
Implement max settings option
2020-06-02 20:58:21 +09:00
Tatsuhiro Tsujikawa
3eecc2ca45
Bump version number to v1.41.0, LT revision to 34:0:20
2020-06-02 19:09:08 +09:00
Tatsuhiro Tsujikawa
881c060d8c
Update AUTHORS
2020-06-02 19:09:08 +09:00
James M Snell
f8da73bd04
Earlier check for settings flood
2020-05-05 11:55:38 -07:00
James M Snell
336a98feb0
Implement max settings option
2020-05-05 11:55:32 -07:00
Tatsuhiro Tsujikawa
ef41583614
Revert "Add missing connection error handling"
...
This reverts commit b7d1610141 .
2020-04-22 21:26:23 +09:00
Tatsuhiro Tsujikawa
979e6c5325
Merge pull request #1459 from nghttp2/proxyprotov2
...
nghttpx: Add PROXY protocol version 2
2020-04-21 22:30:31 +09:00
Tatsuhiro Tsujikawa
b7d1610141
Add missing connection error handling
2020-04-21 22:11:19 +09:00
Tatsuhiro Tsujikawa
cd53bd81bf
Merge pull request #1460 from gportay/patch-1
...
Fix doc
2020-04-18 19:24:50 +09:00
Gaël PORTAY
e5625b8cf0
Fix doc
2020-04-18 05:50:51 -04:00
Tatsuhiro Tsujikawa
c663349f24
integration: Add PROXY protocol v2 tests
2020-04-18 17:23:49 +09:00
Tatsuhiro Tsujikawa
854e9fe395
nghttpx: Always call init_forwarded_for
...
Always call init_forwarded_for to get the default when source address
in PROXY protocol is ignored. This ensures that forwarded header
field has the same value as x-forwarded-for.
2020-04-18 17:16:45 +09:00
Tatsuhiro Tsujikawa
c60ea227cc
Update doc
2020-04-18 17:16:30 +09:00
Tatsuhiro Tsujikawa
49cd8e6e73
nghttpx: Add PROXY-protocol v2 support
2020-04-18 17:16:30 +09:00
Tatsuhiro Tsujikawa
3b17a659f6
Merge pull request #1453 from Leo-Neat/master
...
Add CIFuzz
2020-03-31 18:48:52 +09:00
Tatsuhiro Tsujikawa
600fcdf52d
Merge pull request #1455 from xjtian/long_serials
...
Fix get_x509_serial for long serial numbers
2020-03-31 18:47:53 +09:00
Jacky Tian
4922bb41d6
static_cast size parameter in StringRef constructor to size_t
2020-03-31 00:54:08 -07:00
Jacky Tian
aad8697575
Fix get_x509_serial for long serial numbers
2020-03-31 00:19:06 -07:00
Leo Neat
dc7a7df61c
Adding CIFuzz
2020-03-18 10:12:29 -07:00
Tatsuhiro Tsujikawa
b3f85e2daa
Merge pull request #1444 from nghttp2/fix-recv-window-flow-control-issue
...
Fix receiving stream data stall
2020-02-20 11:22:18 +09:00
Tatsuhiro Tsujikawa
ffb49c6c58
Merge pull request #1435 from geoffhill/master
...
Enable session_create_idle_stream test, fix errors
2020-02-20 10:53:12 +09:00
Tatsuhiro Tsujikawa
2ec585518e
Fix receiving stream data stall
...
Previously, if automatic window update is enabled (which is default),
after window size is set to 0 by
nghttp2_session_set_local_window_size, once the receiving window is
exhausted, even after window size is increased by
nghttp2_session_set_local_window_size, no more data cannot be
received. This is because nghttp2_session_set_local_window_size does
not submit WINDOW_UPDATE. It is only triggered when new data arrives
but since window is filled up, no more data cannot be received, thus
dead lock happens.
This commit fixes this issue. nghttp2_session_set_local_window_size
submits WINDOW_UPDATE if necessary.
https://github.com/curl/curl/issues/4939
2020-02-20 10:40:38 +09:00
Tatsuhiro Tsujikawa
459df42b8b
Merge pull request #1442 from nghttp2/upgrade-llhttp
...
Bump llhttp to 2.0.4
2020-02-11 23:26:41 +09:00
Tatsuhiro Tsujikawa
a4c1fed513
Bump llhttp to 2.0.4
2020-02-11 23:05:53 +09:00
Geoff Hill
866eadb5de
Enable session_create_idle_stream test, fix errors
...
Add the currently-unused `test_nghttp2_session_create_idle_stream()`
function to the test suite definition.
Modify the test in two places to make it pass:
* Use stream ID=10 as the priority stream ID to test automatic creation
of streams for priority specs. The code below checks against stream
ID=10 so I assume this was a typo in the test.
* Set the `last_sent_stream_id` instead of the `next_stream_id` to test
that idle streams cannot be created with smaller numbers than the
most-recently-seen stream ID. Looking at the validation path in
`session_detect_idle_stream()`, I think this was another test typo.
2020-01-23 17:29:19 -08:00
Tatsuhiro Tsujikawa
5e13274b7c
Fix typo
2019-12-21 11:39:05 +09:00
Tatsuhiro Tsujikawa
e0d7f7de5e
h2load: Allow port in --connect-to
2019-12-21 11:39:05 +09:00
lucas
df575f968f
h2load: add --connect-to option
2019-12-21 11:39:05 +09:00
Tatsuhiro Tsujikawa
1fff737955
clang-format-9
2019-12-18 14:25:32 +09:00
Tatsuhiro Tsujikawa
b40c6c862f
Merge pull request #1418 from vszakats/patch-1
...
lib/CMakeLists.txt: Make hard-coded static lib suffix optional
2019-12-08 11:09:59 +09:00
Viktor Szakats
9bc2c75e38
lib/CMakeLists.txt: Make hard-coded static lib suffix optional
...
It can be set via the `STATIC_LIB_SUFFIX` variable.
This fixes every existing dependent project that relied on the name
having no suffix and thus capable of using either a static or shared
flavour depending on which one is present on this or how the linker
is configured.
Ref: https://github.com/nghttp2/nghttp2/pull/1394
2019-11-15 20:53:50 +00:00
Tatsuhiro Tsujikawa
2d5f76594a
Bump up version number to 1.41.0-DEV
2019-11-15 23:34:33 +09:00
Tatsuhiro Tsujikawa
cc05c5fe8c
Update manual pages
2019-11-15 23:03:14 +09:00
Tatsuhiro Tsujikawa
66d7b194d4
Update AUTHORS
2019-11-15 22:54:56 +09:00
Tatsuhiro Tsujikawa
41060943bd
Bump up version number to 1.40.0, LT revision to 33:0:19
2019-11-15 22:53:05 +09:00
Tatsuhiro Tsujikawa
5ae9bb8925
Fail fast if huffman decoding context is in failure state
2019-11-09 17:18:11 +09:00
Tatsuhiro Tsujikawa
bb519154fe
Merge pull request #1413 from nghttp2/check-authority
...
Add nghttp2_check_authority as public API
2019-11-02 10:53:33 +09:00
Tatsuhiro Tsujikawa
77f5487a58
Add nghttp2_check_authority as public API
2019-11-02 00:33:59 +09:00
Tatsuhiro Tsujikawa
db9a8f6efe
Merge pull request #1409 from nghttp2/fix-wrong-stream-close-error-code
...
Fix the bug that stream is closed with wrong error code
2019-10-29 21:24:57 +09:00
Tatsuhiro Tsujikawa
6f28a69b7d
Merge pull request #1411 from richard78917/fix_warning
...
priority_spec::valid(): remove const qualifier from return value
2019-10-29 21:24:34 +09:00
Tatsuhiro Tsujikawa
6ce4835eea
Fix the bug that stream is closed with wrong error code
...
This commit fixes the bug that stream is closed with wrong error code
(0). This happens when STREAM or DATA frame with END_STREAM flag set
is received and it violates HTTP messaging rule (i.e., content-length
does not match) and the other side of stream has been closed. In this
case, nghttp2_on_stream_close_callback should be called with nonzero
error code, but previously it is called with 0 (NO_ERROR).
2019-10-29 21:04:52 +09:00
Richard Wolfert
29042f1c95
priority_spec::valid(): remove const qualifier from return value
...
gcc generates warning:
* type qualifiers ignored on function return type [-Wignored-qualifiers]
2019-10-29 11:28:26 +01:00
Tatsuhiro Tsujikawa
d08c43951f
Merge pull request #1405 from nghttp2/huffman
...
Faster Huffman encoding/decoding
2019-10-12 18:48:21 +09:00
Tatsuhiro Tsujikawa
5d6964cf81
Faster huffman decoding
2019-10-12 14:30:31 +09:00
Tatsuhiro Tsujikawa
0d855bfc1b
Faster huffman encoding
2019-10-12 14:30:31 +09:00
Tatsuhiro Tsujikawa
6f967c6ef3
Fix errors reported by coverity scan
2019-09-21 13:45:20 +09:00
Tatsuhiro Tsujikawa
b8a43db84c
Merge pull request #1394 from wrowe/fix-static-libname
...
Avoid filename collision of static and dynamic lib
2019-09-21 10:45:45 +09:00
Tatsuhiro Tsujikawa
70b62c1a32
Merge pull request #1393 from wrowe/fix-static-msvcrt
...
Add new flag ENABLE_STATIC_CRT for Windows
2019-09-21 10:45:11 +09:00
William A Rowe Jr
28b1f0b90f
Avoid filename collision of static and dynamic lib
...
Renames the output of the ENABLE_STATIC_LIB library/archive output
to nghttp2_static.lib/.a to avoid filenames colliding with the output
name for ENABLE_SHARED_LIB library/archive, when both are enabled.
Signed-off-by: William A Rowe Jr <wrowe@pivotal.io >
Signed-off-by: Yechiel Kalmenson <ykalmenson@pivotal.io >
2019-09-16 08:48:35 -07:00
Tatsuhiro Tsujikawa
1dd966f189
Merge branch 'fix-nghttpx-mruby'
2019-09-17 00:42:04 +09:00
Tatsuhiro Tsujikawa
fe8946ddc7
nghttpx: Fix bug that mruby is incorrectly shared between backends
...
Previously, mruby context is wrongly shared by multiple patterns if
the underlying SharedDownstreamAddr is shared by multiple
DownstreamAddrGroups. This commit fixes it.
2019-09-16 22:25:06 +09:00
William A Rowe Jr
72b71a6ba3
Add new flag ENABLE_STATIC_CRT for Windows
...
This change adds the CMake option;
ENABLE_STATIC_CRT Build libnghttp2 against the MS LIBCMT[d]
This avoids linking to msvcrt.lib for binaries to compile (/MT[d])
and link against the static C Runtime libcrt.lib, and
avoiding the msvcrt[d].dll dependency.
Signed-off-by: William A Rowe Jr <wrowe@pivotal.io >
Signed-off-by: Yechiel Kalmenson <ykalmenson@pivotal.io >
2019-09-14 16:23:16 -07:00
Tatsuhiro Tsujikawa
f8933fe504
nghttpx: Reconnect h1 backend if it lost connection before sending headers
...
This is the second attempt. The first attempt was
8a59ce6d37 and it failed.
2019-09-07 18:20:24 +09:00
Tatsuhiro Tsujikawa
89c33d690f
Update neverbleed
2019-09-07 00:19:59 +09:00
Tatsuhiro Tsujikawa
7079dc5e75
Update neverbleed to fix memory leak
2019-09-06 23:58:22 +09:00
Tatsuhiro Tsujikawa
5080db84e2
Revert "nghttpx: Reconnect h1 backend if it lost connection before sending headers"
...
This reverts commit 8a59ce6d37 .
2019-09-06 22:01:03 +09:00
Tatsuhiro Tsujikawa
053c7ac588
nghttpx: Returns 408 if backend timed out before sending headers
2019-09-03 00:29:01 +09:00
Tatsuhiro Tsujikawa
8a59ce6d37
nghttpx: Reconnect h1 backend if it lost connection before sending headers
2019-09-03 00:28:21 +09:00
Tatsuhiro Tsujikawa
f2fde180cd
Remove redundant null check before delete
...
Reported in https://github.com/nghttp2/nghttp2/issues/1384
2019-08-19 22:27:32 +09:00
Tatsuhiro Tsujikawa
95efb3e19d
Don't read too greedily
2019-08-14 11:44:28 +09:00
Tatsuhiro Tsujikawa
0a6ce87c22
Add nghttp2_option_set_max_outbound_ack
2019-08-14 11:43:55 +09:00
Tatsuhiro Tsujikawa
2aa79fa91d
Bump up LT revision to 32:0:18
2019-08-14 08:46:43 +09:00
Tatsuhiro Tsujikawa
3980678d24
Merge branch 'nghttpx-fix-request-stall'
2019-08-06 21:28:45 +09:00
Tatsuhiro Tsujikawa
319d5ab1c6
nghttpx: Fix request stall
...
Fix request stall if backend connection is reused and buffer is full.
2019-08-06 20:50:29 +09:00
Tatsuhiro Tsujikawa
448bbbc38c
integration-tests: gofmt
2019-08-06 20:44:15 +09:00
Tatsuhiro Tsujikawa
e575a2aad9
Merge pull request #1377 from Aldrog/cmake_systemd
...
Support building nghttpx with systemd using cmake
2019-08-01 09:27:54 +09:00
Andrew Penkrat
4f7aedc9d2
cmake: Support building nghttpx with systemd
2019-07-29 13:55:05 +03:00
Tatsuhiro Tsujikawa
7a5908933e
Fix clang-8 warning
2019-06-22 17:44:16 +09:00
Tatsuhiro Tsujikawa
ee44313445
Fix FPE with default backend
2019-06-11 23:15:01 +09:00
Tatsuhiro Tsujikawa
abef9b90ef
Fix log-level is not set with cmd-line or configuration file
2019-06-11 23:13:43 +09:00
Tatsuhiro Tsujikawa
12a999f0b8
Bump up version number to 1.40.0-DEV
2019-06-11 22:10:05 +09:00
Tatsuhiro Tsujikawa
acfb360770
Update manual pages
2019-06-11 21:22:20 +09:00
Tatsuhiro Tsujikawa
bdfd14c2b7
Bump up version number to 1.39.0, LT revision to 31:4:17
2019-06-11 21:19:05 +09:00
Tatsuhiro Tsujikawa
cddc09feaa
Update AUTHORS
2019-06-11 21:16:17 +09:00
Tatsuhiro Tsujikawa
3c3b6ae8ca
Add missing colon
2019-06-10 19:18:10 +09:00
Tatsuhiro Tsujikawa
2f83aa9e1b
Fix multi-line text travis issue
2019-06-10 18:58:47 +09:00
Tatsuhiro Tsujikawa
fc591d0cd6
Run nghttpx integration test with cmake build
...
Run nghttpx integration test with cmake build. Autotools build erases
artifacts for packaging tests, so we cannot run nghttpx integration
test with autotools build at the moment.
Relay on go modules to download dependencies.
2019-06-08 00:34:27 +09:00
Tatsuhiro Tsujikawa
9a17c3efc6
travis: use multi-line text
2019-06-08 00:23:17 +09:00
Tatsuhiro Tsujikawa
b7220f075c
cmake: Remove SPDY related files
2019-06-08 00:23:17 +09:00
Tatsuhiro Tsujikawa
a1556fd11f
Merge pull request #1356 from nghttp2/fix-log-level-on-reload
...
nghttpx: Fix unchanged log level on configuration reload
2019-06-07 23:36:49 +09:00
Tatsuhiro Tsujikawa
77f1c872b1
nghttpx: Fix unchanged log level on configuration reload
...
Previously, if log-level is not mentioned in configuration file and
reload happens, the log level was not set to the default value NOTICE.
Instead, the log level stayed the same. This commit fixes this bug.
2019-06-05 21:17:23 +09:00
Tatsuhiro Tsujikawa
49ce44e1f5
Merge pull request #1352 from nghttp2/travis-osx
...
Travis osx
2019-05-30 23:58:35 +09:00
Tatsuhiro Tsujikawa
f54b3ffc0e
Fix libxml2 CFLAGS output
2019-05-30 23:22:44 +09:00
Tatsuhiro Tsujikawa
b0f5e5cc79
Implement daemon() using fork() for OSX
2019-05-30 23:22:44 +09:00
Tatsuhiro Tsujikawa
8d6ecd66cc
Enable osx build on travis
2019-05-29 00:28:39 +09:00
Tatsuhiro Tsujikawa
f82fb52187
Update doc
2019-05-18 10:31:47 +09:00
Tatsuhiro Tsujikawa
2e1975ddf6
clang-format-8
2019-05-18 10:28:35 +09:00
Tatsuhiro Tsujikawa
97ce392bcc
Merge pull request #1347 from nghttp2/nghttpx-ignore-cl-te-on-upgrade
...
Ignore Content-Length and Transfer-Encoding in 200 response to CONNECT request
2019-05-17 23:34:34 +09:00
Tatsuhiro Tsujikawa
afefbda518
Ignore content-length in 200 response to CONNECT request
2019-05-17 23:00:32 +09:00
Tatsuhiro Tsujikawa
4fca2502d8
nghttpx: Ignore Content-Length and Transfer-Encoding in 1xx or 200 to CONNECT
...
A well known server sends content-length: 0 in 101 response. RFC 7230
says Content-Length or Transfer-Encoding in 200 response to CONNECT
request: https://tools.ietf.org/html/rfc7230#section-3.3.3
2019-05-17 22:58:26 +09:00
Tatsuhiro Tsujikawa
6975c336fc
Update llhttp to 1.1.3
2019-05-07 22:40:06 +09:00
Tatsuhiro Tsujikawa
0288093caf
Fix llhttp_get_error_pos usage
...
It returns NULL if return value is HPE_OK.
2019-04-21 00:07:11 +09:00
Tatsuhiro Tsujikawa
a3a034813b
Merge pull request #1340 from nghttp2/nghttpx-llhttp
...
Replace http-parser with llhttp
2019-04-20 22:07:14 +09:00
Tatsuhiro Tsujikawa
c64d2573dc
Replace http-parser with llhttp
...
llhttp does not include URL parser. We extracted URL parser code from
http-parser and put it under third-party/url-parser.
llhttp bd3d224eb8cdc92c6fc8f508d7bbe0ba266e8e92
2019-04-20 18:42:30 +09:00
Tatsuhiro Tsujikawa
f028cc4392
clang-format
2019-04-18 23:37:48 +09:00
Tatsuhiro Tsujikawa
302e37460f
Merge pull request #1337 from nghttp2/upgrade-mruby
...
Upgrade mruby
2019-04-18 23:37:18 +09:00
Tatsuhiro Tsujikawa
3cdbc5f525
Merge pull request #1335 from adamgolebiowski/boost-1.70
...
asio: support boost-1.70
2019-04-18 23:32:19 +09:00
Tatsuhiro Tsujikawa
a69251864b
Fix mruby build error
...
mruby minirake does not like CXX="clang++-7 -std=c++14" because it
expects CXX to be an executable. To workaround this, split CXX so
that CXX becomes a single word and move the rest of words to CXXFLAGS.
2019-04-18 23:04:33 +09:00
Tatsuhiro Tsujikawa
45d63d2006
Upgrade mruby to 2.0.1
2019-04-18 22:45:02 +09:00
Adam Gołębiowski
cbba1ebf8f
asio: support boost-1.70
...
In boost 1.70, deprecated get_io_context() has finally been removed.
Introduce GET_IO_SERVICE macro that based on boost version uses
old get_io_service() interface (boost < 1.70), or get_executor().context()
for boost 1.70+.
Commit based idea seen in monero-project/monero@17769db946
2019-04-18 12:35:54 +02:00
Tatsuhiro Tsujikawa
e86d1378da
Bump up version number to 1.39.0-DEV
2019-04-18 15:12:39 +09:00
Tatsuhiro Tsujikawa
4a9d200554
Update manual pages
2019-04-18 15:08:36 +09:00
Tatsuhiro Tsujikawa
acf6a9229d
Bump up version number to 1.38.0, LT revision to 31:3:17
2019-04-18 14:57:20 +09:00
Tatsuhiro Tsujikawa
4ff4582132
Update AUTHORS
2019-04-18 14:55:09 +09:00
Tatsuhiro Tsujikawa
42dce01ec1
Merge branch 'nghttpx-fix-backend-selection-on-retry'
2019-04-16 22:38:55 +09:00
Tatsuhiro Tsujikawa
a35059e3f1
nghttpx: Fix bug that altered authority and path affect backend selection
...
Fix bug that altered authority and path by per-pattern mruby script
affect backend selection on retry.
2019-04-16 22:18:30 +09:00
Tatsuhiro Tsujikawa
5a30fafdda
Merge branch 'nghttpx-fix-chunked-request-stall'
2019-04-16 00:26:18 +09:00
Tatsuhiro Tsujikawa
dce91ad37c
Merge branch 'nghttpx-dont-log-authorization'
2019-04-16 00:26:12 +09:00
Tatsuhiro Tsujikawa
2cff8b43cf
nghttpx: Fix bug that chunked request stalls
2019-04-15 23:58:30 +09:00
Tatsuhiro Tsujikawa
be96654d56
nghttpx: Don't log authorization request header field value with -LINFO
2019-04-15 22:59:26 +09:00
Tatsuhiro Tsujikawa
ce962c3fdf
Merge branch 'update-http-parser'
2019-04-15 22:33:14 +09:00
Tatsuhiro Tsujikawa
f931504e1c
Update http-parser to v2.9.1
...
http-parser c5c45636b85e7598223adede6ba2d8cb8fe03ebe
2019-04-15 22:23:03 +09:00
Tatsuhiro Tsujikawa
d978f351da
Fix bug that on_header callback is still called after stream is closed
2019-04-11 10:17:01 +09:00
Tatsuhiro Tsujikawa
ec519f22dc
Merge pull request #1270 from baitisj/master
...
Fix for compilation against modern LibreSSL
2019-03-13 20:52:50 +09:00
Tatsuhiro Tsujikawa
e8b213e367
Bump up version number to 1.38.0-DEV
2019-03-08 21:26:37 +09:00
Tatsuhiro Tsujikawa
cfb47d30a5
Take into account larger frame size for prioritization
...
Larger frame size just destroys multiplexing and prioritization does
not work.
2019-03-08 00:23:02 +09:00
Tatsuhiro Tsujikawa
dbbe4e017a
Remove unused field
2019-03-08 00:22:45 +09:00
Tatsuhiro Tsujikawa
371bc3a8f7
clang-format
2019-03-08 00:19:34 +09:00
Tatsuhiro Tsujikawa
5e7889c5ef
Update manual pages
2019-03-07 23:22:06 +09:00
Tatsuhiro Tsujikawa
b1b2ad5017
Bump up version number to 1.37.0, LT revision to 31:2:17
2019-03-07 23:18:49 +09:00
Tatsuhiro Tsujikawa
e043ca83c5
Update AUTHORS
2019-03-07 23:16:58 +09:00
Tatsuhiro Tsujikawa
c2434dfbbc
Simplify stream_less
2019-03-04 23:30:03 +09:00
Tatsuhiro Tsujikawa
816ad2102f
Reuse name when indexing header by referencing dynamic table
2019-03-04 23:30:03 +09:00
Tatsuhiro Tsujikawa
f5feb16ef4
Merge pull request #1295 from bratkartoffel/fix-compile-boringssl
...
Fix compilation with boringssl
2019-02-20 00:13:00 +09:00
Tatsuhiro Tsujikawa
adf09f2124
Merge pull request #1303 from donny-dont/fix-shared-install
...
Explicitly set install location when building shared libs
2019-02-20 00:10:50 +09:00
Don
2591960e2f
Explicitly set install location when building shared libs
2019-02-06 10:26:30 -08:00
Tatsuhiro Tsujikawa
d93842db3e
nghttpx: Fix backend stall if header and request body are sent in 2 packets
2019-01-23 17:57:12 +09:00
Tatsuhiro Tsujikawa
8dc2b263ba
nghttpx: Use std::priority_queue
2019-01-22 00:01:17 +09:00
Tatsuhiro Tsujikawa
8d842701b5
Update manual pages
2019-01-21 23:05:09 +09:00
Tatsuhiro Tsujikawa
de85b0fda5
Update README
2019-01-21 23:03:10 +09:00
Tatsuhiro Tsujikawa
5d6beed590
Merge branch 'nghttpx-backend-weight'
2019-01-21 22:59:39 +09:00
Tatsuhiro Tsujikawa
1ff9de4c87
nghttpx: Backend address selection with weight
2019-01-21 22:23:19 +09:00
Simon Frankenberger
34482ed4df
Fix compilation with boringssl
2019-01-18 20:12:57 +01:00
Tatsuhiro Tsujikawa
9b6ced66f3
Bump up version number to 1.37.0-DEV
2019-01-18 23:22:47 +09:00
Tatsuhiro Tsujikawa
e7e8ee5fe6
Update bash_completion
2019-01-18 21:21:12 +09:00
Tatsuhiro Tsujikawa
b3b4e33535
Update manual pages
2019-01-18 21:20:47 +09:00
Tatsuhiro Tsujikawa
bd93d90a89
Don't treat text as option if it matches -[0-9]
...
-[0-9] is valid option, but we don't use them so far and don't want to
mark integer -1 as option.
2019-01-18 21:18:18 +09:00
Tatsuhiro Tsujikawa
ea69c84b33
Bump up version number to 1.36.0
2019-01-18 21:12:46 +09:00
Tatsuhiro Tsujikawa
783b649bb1
Update AUTHORS
2019-01-18 21:10:49 +09:00
Tatsuhiro Tsujikawa
eb21e6f8f7
Merge branch 'update-http-parser'
2019-01-17 23:35:50 +09:00
Tatsuhiro Tsujikawa
ab2aa5672b
Fix test failure
...
Now http_parser_parse_url returns nonzero if empty URI is given.
2019-01-17 23:16:49 +09:00
Tatsuhiro Tsujikawa
ff87a54202
Use http-parser 0d0a24e19eb5ba232d2ea8859aba2a7cc6c42bc4
2019-01-17 23:08:27 +09:00
Tatsuhiro Tsujikawa
439dbce679
Merge branch 'nghttpx-h1-connection-pool-per-addr'
2019-01-14 22:29:20 +09:00
Tatsuhiro Tsujikawa
e9c9838cdc
nghttpx: Pool h1 backend connection per address
...
Pool HTTP/1.1 backend connection per address and reuse it only when
the next round robin index refers to this address. Previously if
there is a pooled connection, there is no round robin selection.
2019-01-14 22:20:58 +09:00
Tatsuhiro Tsujikawa
803d4ba948
Merge branch 'nghttpx-randomize-roundrobin-order'
2019-01-14 22:17:12 +09:00
Tatsuhiro Tsujikawa
732245e562
make clang-format
2019-01-12 00:11:31 +09:00
Tatsuhiro Tsujikawa
9e8d5433e7
Use clang-format-7
2019-01-12 00:11:19 +09:00
Tatsuhiro Tsujikawa
fdcdb21c38
nghttpx: Randomize backend address round robin order per thread
2019-01-11 22:36:45 +09:00
Tatsuhiro Tsujikawa
11d0533cfc
nghttpx: Ensure that cert serial does not exceed 20 bytes
2019-01-05 10:03:44 +09:00
Tatsuhiro Tsujikawa
dbb5f00d68
Merge pull request #1287 from rckclmbr/fix_serial_size
...
Fix getting long serial numbers for openssl < 1.1
2019-01-05 09:48:36 +09:00
Tatsuhiro Tsujikawa
9cc412e2fd
Merge pull request #1285 from staticinvocation/master
...
Add a CMake option to disable shared library
2019-01-05 09:40:54 +09:00
Josh Braegger
5b2efc0a12
Fix getting long serial numbers for openssl < 1.1
...
From https://www.ietf.org/rfc/rfc5280.txt
> As noted in Section 4.1.2.2, serial numbers can be expected to
> contain long integers. Certificate users MUST be able to handle
> serialNumber values up to 20 octets in length. Conforming CAs MUST
> NOT use serialNumber values longer than 20 octets.
Without this, nghttpx will fatal.
jbraeg$ openssl x509 -in ~/test_certs/client.crt -serial -noout
serial=E0CFDFC7CEA10DF8AAF715C37FAEB410
jbraeg$ curl -k --key ~/test_certs/client.key --cert ~/test_certs/client.crt https://192.168.98.100:3000/ ; echo
curl: (56) Unexpected EOF
...
Assertion failed: n == b.size() (shrpx_tls.cc: get_x509_serial: 2051)
2019-01-03T20:25:21.289Z 1 1 f84316ae NOTICE (shrpx_log.cc:895) Worker process: [9] exited abnormally with status 0x06; exit status 0; signal Aborted(6)
2019-01-03T20:25:21.290Z 1 1 f84316ae NOTICE (shrpx.cc:4311) Shutdown momentarily
2019-01-03 13:20:29 -08:00
Brendan Heinonen
7e4c48a461
Disable shared library if ENABLE_SHARED_LIB is OFF
...
Signed-off-by: Brendan Heinonen <brendan@heinonen.co >
2018-12-27 13:06:02 -05:00
Tatsuhiro Tsujikawa
082e162f3c
Merge pull request #1282 from alagoutte/travis
...
Travis: Update to Xenial
2018-12-26 20:44:39 +09:00
Alexis La Goutte
7cc7c06c7b
.travis(.yml): no longer need llvm-toolchain-trusty-7
...
clang-7 is enable by default
2018-12-26 10:18:54 +00:00
Alexis La Goutte
12ebeb30d0
.travis(.yml): Update to Xenial
...
Xenial is now available with Travis CI
https://blog.travis-ci.com/2018-11-08-xenial-release
2018-12-25 18:35:54 +00:00
Tatsuhiro Tsujikawa
c78abbe1d2
Update mruby to 2.0.0
2018-12-26 00:03:40 +09:00
Tatsuhiro Tsujikawa
124c7848c0
nghttpx: Add missing return
2018-12-11 22:52:34 +09:00
Tatsuhiro Tsujikawa
ce9667c4f5
Merge branch 'nghttpx-fix-trailing-slash-handling'
2018-12-09 17:47:28 +09:00
Tatsuhiro Tsujikawa
f3f40840b3
nghttpx: Fix broken trailing slash handling
...
nghttpx allows a pattern with trailing slash to match a request path
without it. Previously, under certain pattern registration, this does
not work.
2018-12-09 17:07:28 +09:00
Jeff 'Raid' Baitis
2c1570595e
Fix for compilation against modern LibreSSL
2018-12-02 13:30:42 -08:00
Tatsuhiro Tsujikawa
302abf1b46
h2load: Fix compile error with gcc
2018-11-23 14:39:51 +09:00
Tatsuhiro Tsujikawa
089a03be42
h2load: Write log file with write(2)
2018-11-23 13:08:38 +09:00
Tatsuhiro Tsujikawa
de4fe72861
Merge branch 'pyos-master'
2018-11-23 12:11:21 +09:00
dawg
d1b3a83f59
h2load: add an option to write per-request logs
2018-11-23 12:11:00 +09:00
Tatsuhiro Tsujikawa
eb6792533d
Merge branch 'puscas-port_in_use'
2018-11-23 11:00:39 +09:00
Pedro Santos
6800d317e7
added access to the number of the current server port
2018-11-23 10:56:21 +09:00
Tatsuhiro Tsujikawa
c98362eab1
Bump up version number to 1.36.0-DEV
2018-11-23 10:33:29 +09:00
Tatsuhiro Tsujikawa
e520469b3e
Update manual pages
2018-11-23 10:07:33 +09:00
Tatsuhiro Tsujikawa
54067256eb
Bump up version number to 1.35.0
2018-11-23 10:04:04 +09:00
Tatsuhiro Tsujikawa
c4d2eeeec7
Update AUTHORS
2018-11-23 10:01:20 +09:00
Tatsuhiro Tsujikawa
f51e696e4a
asio: Add stop() to listen_and_serve doc
2018-11-18 17:30:35 +09:00
Tatsuhiro Tsujikawa
a433b132fc
Merge pull request #1260 from nghttp2/h2load-non-final-response
...
h2load: Handle HTTP/1 non-final response
2018-11-15 17:32:15 +09:00
Tatsuhiro Tsujikawa
cf48a56d2e
Merge pull request #1238 from jktjkt/cmake-fix-libevent-detection
...
cmake: Fix libevent version detection
2018-11-15 17:11:02 +09:00
Tatsuhiro Tsujikawa
6cad1b243b
nghttpx: Write mruby send_info early
2018-11-15 10:17:47 +09:00
Tatsuhiro Tsujikawa
3c393dca58
nghttpx: Fix assertion failure on mruby send_info with HTTP/1 frontend
2018-11-15 10:17:41 +09:00
Tatsuhiro Tsujikawa
172924457f
h2load: Handle HTTP/1 non-final response
2018-11-15 10:13:19 +09:00
Tatsuhiro Tsujikawa
f6644a92af
make clang-format
2018-11-09 22:29:18 +09:00
Tatsuhiro Tsujikawa
48998f7239
Merge pull request #1222 from donny-dont/fix/declspec
...
Use __has_declspec_attribute for shared builds
2018-11-09 22:18:06 +09:00
Tatsuhiro Tsujikawa
15ff52f9fb
Update README
2018-11-02 18:28:00 +09:00
Tatsuhiro Tsujikawa
6c03bb142b
Upgrade travis toolchain
2018-11-02 17:57:16 +09:00
Tatsuhiro Tsujikawa
524b439221
Fix travis build failure
2018-11-02 17:56:53 +09:00
Tatsuhiro Tsujikawa
859bf2bc41
Update manual pages
2018-11-02 15:44:57 +09:00
Tatsuhiro Tsujikawa
b5619fb156
h2load: Clarify that time for connect includes TLS handshake
2018-11-02 15:43:35 +09:00
Tatsuhiro Tsujikawa
dcbe0c690f
nghttpx: Simplify move ctor and operator
2018-11-02 15:40:53 +09:00
Tatsuhiro Tsujikawa
2996c28456
nghttpx: Cleanup
2018-11-02 15:16:36 +09:00
Tatsuhiro Tsujikawa
42e8ceb656
nghttpx: Convert API status code to enum class
2018-11-02 14:14:48 +09:00
Tatsuhiro Tsujikawa
1daf9ce8b7
nghttpx: Convert WorkerEventType to enum class
2018-11-02 14:14:48 +09:00
Tatsuhiro Tsujikawa
d68edf56c0
nghttpx: Convert MemcachedStatusCode to enum class
2018-11-02 14:14:48 +09:00
Tatsuhiro Tsujikawa
0c4e9fef29
nghttpx: Convert memcached op to enum class
2018-11-02 14:14:48 +09:00
Tatsuhiro Tsujikawa
571404c6e8
nghttpx: Convert MemcachedParseState to enum class
2018-11-02 14:14:48 +09:00
Tatsuhiro Tsujikawa
4d562b773b
nghttpx: Convert LogFragmentType to enum class
2018-11-02 14:14:48 +09:00
Tatsuhiro Tsujikawa
e62258713e
nghttpx: Convert connection check status to enum class
2018-11-02 14:14:48 +09:00
Tatsuhiro Tsujikawa
4bd075defd
nghttpx: Convert Http2Session state to enum class
2018-11-02 14:14:48 +09:00
Tatsuhiro Tsujikawa
b46a324943
nghttpx: Convert FreelistZone to enum class
2018-10-17 14:19:58 +09:00
Tatsuhiro Tsujikawa
4bd44b9cdf
nghttpx: Convert dispatch state to enum class
2018-10-17 14:19:58 +09:00
Tatsuhiro Tsujikawa
1b42110d4f
nghttpx: Make Downstream state enum class
2018-10-17 14:19:58 +09:00
Tatsuhiro Tsujikawa
0735ec55f3
nghttpx: Convert shrpx_connect_proto to enum class
2018-10-17 14:19:58 +09:00
Tatsuhiro Tsujikawa
00554779e1
nghttpx: Convert DNSResolverStatus to enum class
2018-10-17 14:19:58 +09:00
Tatsuhiro Tsujikawa
0963f38935
nghttpx: Convert SerialEventType to enum class
2018-10-17 14:19:58 +09:00
Tatsuhiro Tsujikawa
1abfa3ca5f
nghttpx: Make TLS handshake state enum class
2018-10-17 08:52:27 +09:00
Tatsuhiro Tsujikawa
f2159bc2c1
nghttpx: Convert UpstreamAltMode to enum class
2018-10-17 08:38:55 +09:00
Tatsuhiro Tsujikawa
b0eb68ee9e
nghttpx: Convert shrpx_forwarded_node_type to enum class
2018-10-16 23:10:17 +09:00
Tatsuhiro Tsujikawa
e7b7b037f6
nghttpx: Convert shrpx_cookie_secure to enum class
2018-10-16 23:06:59 +09:00
Tatsuhiro Tsujikawa
5e4f434fd8
nghttpx: Convert shrpx_session_affinity to enum class
2018-10-16 23:03:17 +09:00
Tatsuhiro Tsujikawa
20ea964f2f
nghttpx: Convert shrpx_proto to enum class
2018-10-16 22:59:34 +09:00
Tatsuhiro Tsujikawa
d105619bc3
src: Remove extra braces if possible
2018-10-15 23:46:33 +09:00
Tatsuhiro Tsujikawa
ec5729b1fa
Use std::make_unique
2018-10-15 23:02:44 +09:00
Tatsuhiro Tsujikawa
6c9196953e
Use C++14
2018-10-15 22:35:05 +09:00
Tatsuhiro Tsujikawa
46576178a3
Don't send Transfer-Encoding to pre-HTTP/1.1 clients
2018-10-14 22:57:54 +09:00
Tatsuhiro Tsujikawa
5e925f873e
Update doc
2018-10-14 22:57:11 +09:00
Tatsuhiro Tsujikawa
153531d4d0
nghttpx: Use the same type as standard stream operator<<
2018-10-07 22:19:00 +09:00
Tatsuhiro Tsujikawa
f7287df03f
Bump up version number to 1.35.0-DEV
2018-10-04 12:38:10 +09:00
Tatsuhiro Tsujikawa
2b085815b7
Update manual pages
2018-10-04 12:31:06 +09:00
Tatsuhiro Tsujikawa
986fa30264
Bump up version number to 1.34.0, LT revision to 31:1:17
2018-10-04 12:30:18 +09:00
Tatsuhiro Tsujikawa
7c8cb3a0ce
nghttpx: Improve CONNECT response status handling
2018-10-04 12:04:15 +09:00
Tatsuhiro Tsujikawa
334c439ce0
Fix bug that regular CONNECT does not work
2018-10-04 12:02:46 +09:00
Jan Kundrát
6c17ed7e61
cmake: Fix libevent version detection
...
On my x86_64 Gentoo Linux, the CMake build won't find libevent because
Gentoo wraps include files via multilib-aware wrappers. This means that
the "real" include file lives in
/usr/include/x86_64-pc-linux-gnu/event2/event-config.h , and that
there's a proxy file at /usr/include/event2/event-config.h which check
the compile target's architecture and includes the real file from a
correct directory.
In other words, nghttp2's CMake FindLibevent.cmake reads a wrong file
and ends up not detecting the libevent's version.
This patch fixes it by simply using the version reported by pkg-config
as the libevent's version if the original method fails. I will be happy
to change this patch to always check version from pkg-config if you're
OK with that.
Signed-off-by: Jan Kundrát <jan.kundrat@cesnet.cz >
2018-10-03 17:38:17 +02:00
Tatsuhiro Tsujikawa
6700626c30
Rule out content-length in the successful response to CONNECT
2018-10-03 23:24:32 +09:00
Tatsuhiro Tsujikawa
15162addc4
Update manual pages
2018-10-02 01:34:32 +09:00
Tatsuhiro Tsujikawa
9327077741
Merge pull request #1235 from nghttp2/backend-conn-timeout
...
nghttpx: Add read/write-timeout parameters to backend option
2018-09-30 13:17:24 +09:00
Tatsuhiro Tsujikawa
aeb92bbbe2
nghttpx: Add read/write-timeout parameters to backend option
2018-09-30 12:32:43 +09:00
Tatsuhiro Tsujikawa
fc7489e044
nghttpx: Fix mruby parameter validation
2018-09-30 12:30:19 +09:00
Tatsuhiro Tsujikawa
87ac872fdc
nghttpx: Update doc
2018-09-30 12:28:43 +09:00
Tatsuhiro Tsujikawa
c278adde7a
nghttpx: Log error when mruby file cannot be opened
2018-09-30 12:23:01 +09:00
Tatsuhiro Tsujikawa
f94d720909
Merge pull request #1234 from nghttp2/nghttpx-rfc8441
...
nghttpx: Implement RFC 8441 Bootstrapping WebSocket with HTTP/2
2018-09-29 11:54:47 +09:00
Tatsuhiro Tsujikawa
9b9baa6bd9
Update doc
2018-09-29 11:46:11 +09:00
Tatsuhiro Tsujikawa
02566ee383
nghttpx: Update doc
2018-09-29 11:42:37 +09:00
Tatsuhiro Tsujikawa
3002f31b1f
src: Add debug output for SETTINGS_ENABLE_CONNECT_PROTOCOL
2018-09-29 11:39:49 +09:00
Tatsuhiro Tsujikawa
d2a594a753
nghttpx: Implement RFC 8441 Bootstrapping WebSocket with HTTP/2
2018-09-29 11:35:41 +09:00
Tatsuhiro Tsujikawa
651e147711
Allow client sending :protocol optimistically
2018-09-28 00:12:02 +09:00
Tatsuhiro Tsujikawa
a42faf1cc2
nghttpx: Write TLS alert during handshake
2018-09-23 18:01:38 +09:00
Tatsuhiro Tsujikawa
4aac05e193
Merge pull request #1231 from nghttp2/ws-lib-only
...
Implement RFC 8441
2018-09-23 17:34:53 +09:00
Tatsuhiro Tsujikawa
b80dfaa8a0
Adjustment for RFC 8441
2018-09-23 11:22:30 +09:00
Tatsuhiro Tsujikawa
a19d8f5d31
Deal with :protocol pseudo header
2018-09-23 10:36:30 +09:00
Tatsuhiro Tsujikawa
33f6e90a56
Add NGHTTP2_TOKEN__PROTOCOL
2018-09-23 10:36:30 +09:00
Tatsuhiro Tsujikawa
ed7fabcbc2
Add SETTINGS_ENABLE_CONNECT_PROTOCOL
2018-09-23 10:36:30 +09:00
Tatsuhiro Tsujikawa
8753b6da14
Update doc
2018-09-17 16:12:15 +09:00
Tatsuhiro Tsujikawa
f2de733bdf
Update neverbleed to fix OpenSSL 1.1.1 issues
2018-09-16 22:55:07 +09:00
Tatsuhiro Tsujikawa
88ff8c69a0
Update mruby 1.4.1
2018-09-16 22:54:09 +09:00
Tatsuhiro Tsujikawa
a63558a1eb
nghttpx: Call OCSP_response_get1_basic only when OCSP status is successful
2018-09-16 22:19:27 +09:00
Tatsuhiro Tsujikawa
3575a1325e
nghttpx: Fix crash with plain text HTTP
2018-09-15 12:16:23 +09:00
Tatsuhiro Tsujikawa
e2de2fee69
Update bash_completion
2018-09-15 11:15:22 +09:00
Tatsuhiro Tsujikawa
9f415979fb
Update manual pages
2018-09-15 11:15:04 +09:00
Tatsuhiro Tsujikawa
4bfc0cd196
Merge pull request #1230 from nghttp2/nghttpx-faster-logging
...
nghttpx: Get rid of std::stringstream from Log
2018-09-14 23:13:03 +09:00
Tatsuhiro Tsujikawa
9c824b87fe
nghttpx: Get rid of std::stringstream from Log
2018-09-14 22:58:48 +09:00
Tatsuhiro Tsujikawa
a1ea1696be
Make VALID_HD_NAME_CHARS and VALID_HD_VALUE_CHARS const qualified
2018-09-13 23:50:31 +09:00
Tatsuhiro Tsujikawa
dfc0f248c6
Make static_table const qualified
2018-09-13 23:48:53 +09:00
Tatsuhiro Tsujikawa
ed7c9db2a6
nghttpx: Add mruby env.tls_handshake_finished
2018-09-09 22:59:35 +09:00
Tatsuhiro Tsujikawa
5b42815afb
nghttpx: Strip incoming Early-Data header field by default
2018-09-09 22:37:22 +09:00
Tatsuhiro Tsujikawa
cfe7fa9a75
nghttpx: Add --tls13-ciphers and --tls-client-ciphers options
2018-09-09 16:35:47 +09:00
Tatsuhiro Tsujikawa
cb8a9d58fd
src: Remove TLSv1.3 ciphers from DEFAULT_CIPHER_LIST
...
TLSv1.3 ciphers are treated differently from the ciphers for TLSv1.2
or earlier.
2018-09-09 15:53:04 +09:00
Tatsuhiro Tsujikawa
023b94480b
Merge branch 'tls13-early-data'
2018-09-09 15:48:25 +09:00
Tatsuhiro Tsujikawa
9b03c64f68
nghttpx: Should postpone early data by default
2018-09-08 19:22:30 +09:00
Tatsuhiro Tsujikawa
b8eccec62d
nghttpx: Disable OpenSSL anti-replay
2018-09-08 19:10:59 +09:00
Tatsuhiro Tsujikawa
9f21258720
Specify SSL_CTX_set_max_early_data and add an option to change max value
2018-09-08 17:59:28 +09:00
Tatsuhiro Tsujikawa
47f6012407
nghttpx: Add an option to postpone early data processing
2018-09-08 17:57:21 +09:00
Tatsuhiro Tsujikawa
770e44de4d
Implement draft-ietf-httpbis-replay-02
...
nghttpx sends early-data header field when forwarding requests which
are received in TLSv1.3 early data, and the TLS handshake is still in
progress.
2018-09-08 17:54:35 +09:00
Tatsuhiro Tsujikawa
2ab319c137
Don't hide error code from openssl
2018-09-08 17:54:35 +09:00
Tatsuhiro Tsujikawa
3992302432
Remove SSL_ERROR_WANT_WRITE handling
2018-09-08 17:54:35 +09:00
Tatsuhiro Tsujikawa
b30f312a70
Honor SSL_read semantics
2018-09-08 17:54:35 +09:00
Tatsuhiro Tsujikawa
c5cdb78a95
nghttpx: Add TLSv1.3 0-RTT early data support
2018-09-08 17:54:35 +09:00
Don
d82811303b
Use __has_declspec_attribute for shared builds
2018-09-05 10:01:50 -07:00
Tatsuhiro Tsujikawa
f79a58120e
Bump up version number to 1.34.0
2018-09-02 15:55:08 +09:00
Tatsuhiro Tsujikawa
9d843334d6
Update bash_completion
2018-09-02 15:34:33 +09:00
Tatsuhiro Tsujikawa
23cb3f38a6
Update manual pages
2018-09-02 15:33:58 +09:00
Tatsuhiro Tsujikawa
1d682dcdae
Bump up version number to 1.33.0, LT revision to 31:0:17
2018-09-02 15:24:28 +09:00
Tatsuhiro Tsujikawa
601fbbb4ae
Update doc
2018-09-02 15:24:12 +09:00
Tatsuhiro Tsujikawa
f44aa2466f
Update AUTHORS
2018-09-02 15:15:52 +09:00
Tatsuhiro Tsujikawa
dd74a6dd34
Update manual pages
2018-09-02 14:59:38 +09:00
Tatsuhiro Tsujikawa
e959e7338e
src: Refactor utos
2018-09-01 22:29:11 +09:00
Tatsuhiro Tsujikawa
fb9a204de2
nghttpx: Fix compile error without mruby
2018-08-31 21:58:35 +09:00
Tatsuhiro Tsujikawa
cd096802bd
Update doc
2018-08-28 17:58:18 +09:00
Tatsuhiro Tsujikawa
7417fd71a4
nghttpx: Per-pattern not per-backend
2018-08-28 17:50:01 +09:00
Tatsuhiro Tsujikawa
2d1a981c81
Merge branch 'akonskarm-master'
2018-08-27 21:34:41 +09:00
Tatsuhiro Tsujikawa
45acc922eb
clang-format
2018-08-27 21:34:18 +09:00
Tatsuhiro Tsujikawa
214d089910
Merge branch 'master' of https://github.com/akonskarm/nghttp2 into akonskarm-master
2018-08-27 21:30:36 +09:00
Tatsuhiro Tsujikawa
31fd707d0c
nghttpx: Fix broken healthmon frontend
2018-08-27 21:21:55 +09:00
Alexandros Konstantinakis-Karmis
9a2e38e058
fix code for reuse addr on asio client
2018-08-27 10:53:14 +03:00
Tatsuhiro Tsujikawa
d24527e7e6
Bump up LT revision due to v1.32.1 release
2018-08-25 17:01:22 +09:00
Tatsuhiro Tsujikawa
6195d747ce
nghttpx: Share mruby context if it is compiled from same file
2018-08-24 23:11:21 +09:00
Tatsuhiro Tsujikawa
fb97f596e1
nghttpx: Allocate mruby file because fopen requires NULL terminated string
2018-08-24 23:08:15 +09:00
Tatsuhiro Tsujikawa
0ccc7a770d
nghttpx: Move blocked request data to request buffer for API request
2018-08-24 23:07:43 +09:00
Tatsuhiro Tsujikawa
32826466f5
nghttpx: Fix crash with API request
2018-08-24 23:07:16 +09:00
Tatsuhiro Tsujikawa
0422f8a844
nghttpx: Fix worker process crash with neverbleed write error
2018-08-24 22:22:53 +09:00
Tatsuhiro Tsujikawa
e329479a99
Merge pull request #1215 from nghttp2/mruby-per-backend
...
nghttpx: Support per-backend mruby script
2018-08-23 18:41:40 +09:00
Tatsuhiro Tsujikawa
f80a7873ba
Merge branch 'akonskarm-reuse_addr'
2018-08-23 18:19:46 +09:00
Alexandros Konstantinakis-Karmis
866ac6ab27
add option reuse addr in local endpoint configuration of asio client
2018-08-23 18:19:10 +09:00
Tatsuhiro Tsujikawa
b574ae6aa2
nghttpx: Support per-backend mruby script
2018-08-23 18:13:29 +09:00
Tatsuhiro Tsujikawa
de4fd7cd35
doc: Update doc
2018-08-23 11:01:12 +09:00
Tatsuhiro Tsujikawa
32d7883c47
nghttpx: Downstream::request_buf_full: take into account blocked_request_buf_
2018-08-23 10:55:42 +09:00
Tatsuhiro Tsujikawa
9b24e19763
nghttpx: Choose h1 protocol if headers have been sent to backend on retry
2018-08-22 23:20:13 +09:00
Tatsuhiro Tsujikawa
13ffece12d
Merge pull request #1214 from nghttp2/fix-rst-without-dconn
...
Fix stream reset if data from client is arrived before dconn is attached
2018-08-22 23:05:01 +09:00
Tatsuhiro Tsujikawa
9d5b781df6
Fix stream reset if data from client is arrived before dconn is attached
2018-08-22 22:32:25 +09:00
Tatsuhiro Tsujikawa
11d822c2a7
Merge pull request #1211 from nghttp2/stream-user-data
...
Tweak nghttp2_session_set_stream_user_data
2018-08-19 21:01:08 +09:00
Tatsuhiro Tsujikawa
4098512b5d
Tweak nghttp2_session_set_stream_user_data
...
nghttp2_session_set_stream_user_data now works for a stream which is
not created yet, but the request which creates the stream is queued.
2018-08-18 17:38:58 +09:00
Tatsuhiro Tsujikawa
7e06ac1072
Merge branch 'akonskarm-master'
2018-08-02 16:18:51 +09:00
Alexandros Konstantinakis-Karmis
c6d8c4013c
support definition of local endpoint for cleartext client session
2018-08-02 16:18:23 +09:00
Tatsuhiro Tsujikawa
e5b3f9addd
Compile with clang-6.0
2018-06-09 16:27:43 +09:00
Tatsuhiro Tsujikawa
880f948684
Enable IndentPPDirectives
2018-06-09 16:21:30 +09:00
Tatsuhiro Tsujikawa
bda7e079e2
Update .clang-format
2018-06-09 16:20:27 +09:00
Tatsuhiro Tsujikawa
fc94018b97
clang-format-6.0
2018-06-09 16:02:26 +09:00
Tatsuhiro Tsujikawa
159c5e446a
Merge pull request #1184 from PiotrSikora/max_streams
...
Fix handling of SETTINGS_MAX_CONCURRENT_STREAMS.
2018-06-05 22:02:02 +09:00
Tatsuhiro Tsujikawa
bfd4d8b052
Merge pull request #1183 from PiotrSikora/spdy
...
Remove remaining SPDY code from the integration tests.
2018-06-03 13:14:25 +09:00
Tatsuhiro Tsujikawa
388e785822
Fix typo
2018-06-03 13:10:32 +09:00
Piotr Sikora
2ba1389993
Fix handling of SETTINGS_MAX_CONCURRENT_STREAMS.
...
The maximum number of outgoing concurrent streams is initially
limited to 100 to avoid issues when the local endpoint submits
lots of requests before receiving initial SETTINGS frame from
the remote endpoint, since sending them at once to the remote
endpoint could lead to rejection of some of the requests.
This initial limit is overwritten with the value advertised in
SETTINGS_MAX_CONCURRENT_STREAMS setting by the remote endpoint,
but previously, it wasn't lifted if the remote endpoint didn't
advertise that setting (implying no limits), in which case the
limit of 100 was retained, even though it was never advertised
by the remote endpoint.
Signed-off-by: Piotr Sikora <piotrsikora@google.com >
2018-05-30 20:24:00 -07:00
Piotr Sikora
d65a417306
Remove remaining SPDY code from the integration tests.
...
Signed-off-by: Piotr Sikora <piotrsikora@google.com >
2018-05-30 17:45:20 -07:00
Tatsuhiro Tsujikawa
575bc309b9
Fix typo
2018-05-12 13:07:52 +09:00
Tatsuhiro Tsujikawa
00909d0742
Update doc
2018-05-12 13:07:04 +09:00
Tatsuhiro Tsujikawa
a7e38724e7
Merge pull request #1177 from nghttp2/origin-frame
...
ORIGIN frame
2018-05-12 13:03:12 +09:00
Tatsuhiro Tsujikawa
325612bcde
nghttp: Receive ORIGIN frame
2018-05-12 12:35:08 +09:00
Tatsuhiro Tsujikawa
8034221525
Implement ORIGIN frame
2018-05-12 12:35:08 +09:00
Tatsuhiro Tsujikawa
2e6593e5a5
Bump up version number to 1.33.0-DEV
2018-05-08 22:36:31 +09:00
Tatsuhiro Tsujikawa
572735e496
Update manual pages
2018-05-08 22:18:42 +09:00
Tatsuhiro Tsujikawa
e8d693c395
Bump up version number to 1.32.0, LT revision to 30:2:16
2018-05-08 22:12:43 +09:00
Tatsuhiro Tsujikawa
f44dfcd9dc
Update AUTHORS
2018-05-08 22:11:06 +09:00
Tatsuhiro Tsujikawa
1f1b0d93d4
Update manual pages
2018-05-07 21:43:13 +09:00
Tatsuhiro Tsujikawa
ce8c749b77
Merge pull request #1173 from nghttp2/asio-client-sni
...
asio: Support client side SNI
2018-05-04 10:26:31 +09:00
Tatsuhiro Tsujikawa
3e4f257b91
asio: Support client side SNI
2018-05-03 20:29:16 +09:00
Tatsuhiro Tsujikawa
86fab997b4
Upgrade neverbleed to the latest master
2018-05-03 14:51:59 +09:00
Tatsuhiro Tsujikawa
c3ecd44592
Merge pull request #1171 from nghttp2/h2load-rate-and-duration
...
h2load: -r and --duration are mutually exclusive
2018-04-28 01:23:22 +09:00
Tatsuhiro Tsujikawa
c65ca20a49
h2load: -r and --duration are mutually exclusive
2018-04-28 00:30:43 +09:00
Tatsuhiro Tsujikawa
a5c408c5e3
Ignore all input after calling session_terminate_session
2018-04-22 14:42:28 +09:00
Tatsuhiro Tsujikawa
06379b2861
Fix treatment of padding
2018-04-22 14:42:28 +09:00
Tatsuhiro Tsujikawa
e04de48ed9
Merge pull request #1162 from nghttp2/libressl
...
Libressl
2018-04-14 23:57:20 +09:00
Tatsuhiro Tsujikawa
009646421c
Use LIBRESSL_IN_USE instead of defined(LIBRESSL_VERSION_NUMBER)
2018-04-14 18:31:57 +09:00
Tatsuhiro Tsujikawa
8d0b4544f8
libressl 2.7 has X509_VERIFY_PARAM_*
2018-04-14 18:31:57 +09:00
Tatsuhiro Tsujikawa
d8a34131e1
libressl 2.7 has SSL_CTX_get0_certificate
2018-04-14 18:31:57 +09:00
Tatsuhiro Tsujikawa
5db17d0af9
Compile with libressl 2.7.2
2018-04-14 18:09:47 +09:00
Tatsuhiro Tsujikawa
1bf69b5662
Define LIBRESSL_LEGACY_API and LIBRESSL_2_7_API
...
LIBRESSL_LEGACY_API is drop-in replacement for LIBRESSL_IN_USE. In
the upcoming commits, we will add changes to support libressl 2.7.
2018-04-14 18:09:47 +09:00
Tatsuhiro Tsujikawa
3febaef1fa
Bump up LT revision to 30:1:16 due to v1.31.1 release
2018-04-13 00:24:13 +09:00
Tatsuhiro Tsujikawa
b1bd6035e8
Fix frame handling
2018-04-07 00:27:55 +09:00
Tatsuhiro Tsujikawa
b48bcb214a
examples: Use C style comment in .c files
2018-04-03 22:08:24 +09:00
Tatsuhiro Tsujikawa
6f3ce2c72d
examples: Remove unused lambda capture
2018-04-03 22:07:02 +09:00
Tatsuhiro Tsujikawa
2f9121cf44
Merge branch 'Sp1l-Sp1l/allow-no-npn'
2018-04-03 21:42:17 +09:00
Tatsuhiro Tsujikawa
e65e7711ca
Add comment on #endif
2018-04-03 21:39:44 +09:00
Tatsuhiro Tsujikawa
636ef51b0f
Fix compile error with -Wunused-function
2018-04-03 21:33:09 +09:00
Bernard Spil
400934e5a3
[PATCH] Allow building without NPN
...
NPN has been superseeded by ALPN. OpenSSL provides a configure
option to disable npn (no-npn) which results in an OpenSSL
installation that defines OPENSSL_NO_NEXTPROTONEG in opensslconf.h
The #ifdef's look safe here (as the next_proto is initialized as
nullptr). Alteratively, macros could be defined for the used npn
methods that return a 0 for next_proto.
Signed-off-by: Bernard Spil <brnrd@FreeBSD.org >
2018-03-25 18:27:23 +02:00
Tatsuhiro Tsujikawa
4c3a3acf9b
Merge pull request #1146 from vszakats/cmakestaticlib
...
cmake: add ENABLE_STATIC_LIB option to build static lib
2018-03-13 23:06:29 +09:00
Tatsuhiro Tsujikawa
9aa6002c37
Merge pull request #1144 from hellojaewon/master
...
Fix typo
2018-03-13 23:04:05 +09:00
Viktor Szakats
f342260bfe
cmake: add ENABLE_STATIC_LIB option to build static lib
...
When using the ENABLE_LIB_ONLY option, only the shared
library was built. This new option allows to build the
static library as well.
2018-03-12 22:41:37 +00:00
jwchoi
a6dd497016
Fix typo
2018-03-12 09:19:19 +09:00
Tatsuhiro Tsujikawa
842509dab6
Don't allow 101 HTTP status code because HTTP/2 removes HTTP Upgrade
2018-03-11 15:37:30 +09:00
Tatsuhiro Tsujikawa
4add618a3f
Bump up version number to 1.32.0-DEV
2018-02-27 22:32:00 +09:00
Tatsuhiro Tsujikawa
6e74466231
Update bash_completion
2018-02-27 21:18:50 +09:00
Tatsuhiro Tsujikawa
478eac099f
Update manual pages
2018-02-27 21:18:05 +09:00
Tatsuhiro Tsujikawa
88e2029e37
Bump up version number to 1.31.0, LT revision to 30:0:16
2018-02-27 21:15:26 +09:00
Tatsuhiro Tsujikawa
45d76cf501
nghttpx: Close listening socket on graceful shutdown
2018-02-26 22:40:24 +09:00
Tatsuhiro Tsujikawa
54573f28a8
Merge pull request #1137 from nghttp2/session-set-user-data
...
Add nghttp2_session_set_user_data() public API function
2018-02-25 18:26:43 +09:00
Tatsuhiro Tsujikawa
17793e99dc
Add nghttp2_session_set_user_data() public API function
2018-02-22 21:02:16 +09:00
Tatsuhiro Tsujikawa
5eac3c9025
Update manual pages
2018-02-22 16:14:34 +09:00
Tatsuhiro Tsujikawa
e70195ae91
nghttpx: Update doc
2018-02-22 16:12:38 +09:00
Tatsuhiro Tsujikawa
fe51e7fa1a
Merge pull request #1130 from nghttp2/avoid-inet_pton-macro
...
src: Define nghttp2_inet_pton wrapper to avoid inet_pton macro
2018-02-17 22:58:37 +09:00
Tatsuhiro Tsujikawa
eb951c2ce4
src: Define nghttp2_inet_pton wrapper to avoid inet_pton macro
2018-02-12 16:22:47 +09:00
Tatsuhiro Tsujikawa
39f0ce7c25
Merge pull request #1126 from nghttp2/nghttpx-expired-client-cert
...
nghttpx: Add an option to accept expired client certificate
2018-02-10 16:00:43 +09:00
Tatsuhiro Tsujikawa
65157811d4
Merge pull request #1123 from nghttp2/mruby-client-cert-not-before-after
...
nghttpx: Add mruby tls_client_not_before, and tls_client_not_after
2018-02-10 16:00:29 +09:00
Tatsuhiro Tsujikawa
e8af7afc65
nghttpx: Add an option to accept expired client certificate
2018-02-08 16:51:23 +09:00
Tatsuhiro Tsujikawa
38abfd1863
nghttpx: Add mruby tls_client_not_before, and tls_client_not_after
2018-02-08 16:25:31 +09:00
Tatsuhiro Tsujikawa
ff3edc09ed
nghttpx: Fix potential memory leak
2018-02-03 18:21:42 +09:00
Tatsuhiro Tsujikawa
0bb1540682
Bump up version number to 1.31.0-DEV
2018-02-02 22:17:47 +09:00
Tatsuhiro Tsujikawa
f0836c7e39
Update manual pages
2018-02-02 21:19:16 +09:00
Tatsuhiro Tsujikawa
25db178b7d
Bump up version number to 1.30.0, LT revision to 29:2:15
2018-02-02 21:15:03 +09:00
Tatsuhiro Tsujikawa
1b6713e6ec
Update AUTHORS
2018-02-02 21:12:40 +09:00
Tatsuhiro Tsujikawa
c1a496cf4e
nghttpx: Fix bug that h1 backend idle timeout expires sooner
2018-02-02 21:09:04 +09:00
Tatsuhiro Tsujikawa
e098a21132
mruby: Fix bug that response header is unexpectedly overwritten
...
The bug is the same bug fixed by
6deee2037d , but in response handler.
2018-01-28 19:41:45 +09:00
Tatsuhiro Tsujikawa
0ba4bf51e4
Merge pull request #1120 from dylanplecki/issue-1119-mruby-header-overwrite
...
Fix #1119 : Overwrite of first header on mruby call to env.req.set_header(..)
2018-01-28 19:35:20 +09:00
Dylan Plecki
6deee2037d
Fix #1119 : Stop overwrite of first header on mruby call to env.req.set_header(..)
2018-01-26 18:49:08 -08:00
Tatsuhiro Tsujikawa
6761a933fe
Merge pull request #1105 from nghttp2/nghttpx-upgrade-scheme
...
nghttpx: Add upgrade-scheme parameter to backend option
2018-01-14 23:44:00 +09:00
Tatsuhiro Tsujikawa
5cc3d159e1
nghttpx: Add upgrade-scheme parameter to backend option
...
If "upgrade-scheme" parameter is present in backend option along with
"tls" paramter, HTTP/2 :scheme pseudo header field is changed to
"https" from "http" when forwarding a request to this particular
backend. This is a workaround for a server which requests "https"
scheme on HTTP/2 connection encrypted by TLS.
2018-01-08 18:08:01 +09:00
Tatsuhiro Tsujikawa
652f57e79d
Merge pull request #1104 from nghttp2/allow-ping-after-goaway
...
Allow PING frame to be sent after GOAWAY
2018-01-08 17:26:47 +09:00
Tatsuhiro Tsujikawa
acd6b40e4c
Allow PING frame to be sent after GOAWAY
2018-01-08 17:03:48 +09:00
Tatsuhiro Tsujikawa
0fbb46edd6
Merge pull request #1101 from nghttp2/remember-pushed-links
...
nghttpx: Remember which resource is pushed
2018-01-04 23:15:35 +09:00
Tatsuhiro Tsujikawa
6ad629de47
Merge pull request #1102 from nghttp2/fix-missing-alpn-validation
...
nghttpx: Fix missing ALPN validation (--npn-list)
2018-01-04 23:15:10 +09:00
Tatsuhiro Tsujikawa
74754982f1
nghttpx: Fix missing ALPN validation (--npn-list)
...
This commit fixes the bug that ALPN validation does not occur when
ALPN list is not sent from client.
2018-01-04 22:43:47 +09:00
Tatsuhiro Tsujikawa
a31a2e3b2c
nghttpx: Remember which resource is pushed
...
Remember which resource is pushed in order to conform to the semantics
described in RFC 8297.
2018-01-04 22:35:22 +09:00
Tatsuhiro Tsujikawa
a776b0dbcc
Merge pull request #1092 from nghttp2/define-103
...
src: Define 103 status code
2017-12-20 20:39:22 +09:00
Tatsuhiro Tsujikawa
cfd926f09b
src: Define 103 status code
2017-12-20 19:30:55 +09:00
Tatsuhiro Tsujikawa
72f52716ae
Bump up version number to 1.30.0-DEV
2017-12-19 23:37:09 +09:00
Tatsuhiro Tsujikawa
439b9b6c6a
Update manual pages
2017-12-19 23:18:56 +09:00
Tatsuhiro Tsujikawa
4849845292
Bump up version number to v1.29.0, LT revision to 29:1:15
2017-12-19 23:16:34 +09:00
Tatsuhiro Tsujikawa
d30f38163c
Update manual pages
2017-12-17 14:16:53 +09:00
Tatsuhiro Tsujikawa
cff9ebe1dd
Merge pull request #1091 from nghttp2/remove-spdy
...
Remove SPDY
2017-12-17 14:14:14 +09:00
Tatsuhiro Tsujikawa
4d1139f653
Remove SPDY
2017-12-17 13:28:44 +09:00
Tatsuhiro Tsujikawa
48f574076c
nghttpx: Update doc
2017-12-16 00:13:27 +09:00
Tatsuhiro Tsujikawa
c1f14d73c7
Update manual pages
2017-12-14 22:25:07 +09:00
Tatsuhiro Tsujikawa
216f4dad83
nghttpx: Remove redundant check
2017-12-14 21:39:22 +09:00
Tatsuhiro Tsujikawa
a4e27d766b
Revert "nghttpx: Use an existing h2 backend connection as much as possible"
...
This reverts commit f507b5eee4 .
Balancing load is more important at the moment.
2017-12-14 21:34:04 +09:00
Tatsuhiro Tsujikawa
96df14d2ec
Merge pull request #1084 from dvetutnev/cmake_module_path
...
Fix CMAKE_MODULE_PATH
2017-12-14 21:19:34 +09:00
Dmitriy Vetutnev
2365f12e39
Fix CMAKE_MODULE_PATH
2017-12-06 20:48:52 +03:00
Tatsuhiro Tsujikawa
96ea9cdaf7
Merge pull request #1083 from nghttp2/nghttpx-api-tmp-file
...
nghttpx: Write API request body in temporary file
2017-12-03 16:43:54 +09:00
Tatsuhiro Tsujikawa
03f7ec0f60
nghttpx: Write API request body in temporary file
2017-12-03 16:19:57 +09:00
Tatsuhiro Tsujikawa
a941699962
Merge pull request #1082 from nghttp2/nghttpx-increase-api-max-request-body
...
nghttpx: Increase api-max-request-body
2017-12-02 14:55:45 +09:00
Tatsuhiro Tsujikawa
2056e812bd
nghttpx: Increase api-max-request-body
2017-12-02 13:49:42 +09:00
Tatsuhiro Tsujikawa
04348ff20e
Merge pull request #1081 from nghttp2/nghttpx-faster-parse-config
...
nghttpx: Faster configuration loading with lots of backends
2017-12-01 23:47:34 +09:00
Tatsuhiro Tsujikawa
d8e378fea9
Merge pull request #1080 from nghttp2/nghttpx-fix-crash-with-backend-http-proxy-uri
...
nghttpx: Fix crash with --backend-http-proxy-uri option
2017-12-01 23:07:38 +09:00
Tatsuhiro Tsujikawa
1ebb6810a1
nghttpx: Faster configuration loading with lots of backends
2017-12-01 23:06:06 +09:00
Tatsuhiro Tsujikawa
2a694b270a
Merge pull request #1077 from nghttp2/refused-stream
...
Use NGHTTP2_REFUSED_STREAM for streams which are closed by GOAWAY
2017-12-01 22:36:09 +09:00
Tatsuhiro Tsujikawa
a3ebeeafba
nghttpx: Fix crash with --backend-http-proxy-uri option
2017-12-01 22:28:16 +09:00
Tatsuhiro Tsujikawa
422ad1be32
Use NGHTTP2_REFUSED_STREAM for streams which are closed by GOAWAY
...
The error code NGHTTP2_REFUSED_STREAM is passed to
nghttp2_on_stream_close callback when a stream is closed because its
stream ID is strictly larger than incoming or outgoing GOAWAY.
2017-11-30 23:10:57 +09:00
Tatsuhiro Tsujikawa
97f1735cf5
Bump up version number to 1.29.0
2017-11-25 23:04:03 +09:00
Tatsuhiro Tsujikawa
939ad5ddbe
Update manual pages
2017-11-25 22:19:11 +09:00
Tatsuhiro Tsujikawa
24d92b979d
Add deprecation warning when spdylay support is enabled
2017-11-25 22:16:23 +09:00
Tatsuhiro Tsujikawa
4c92ff1843
Bump up version number to 1.28.0, LT revision to 29:0:15
2017-11-25 22:10:02 +09:00
Tatsuhiro Tsujikawa
280db5c6ba
Update neverbleed
2017-11-25 21:27:14 +09:00
Tatsuhiro Tsujikawa
7fbcb2d005
Merge pull request #1074 from nghttp2/fix-doc
...
Fix doc
2017-11-24 22:59:04 +09:00
Tatsuhiro Tsujikawa
53aeb2c3d7
Fix doc
2017-11-24 22:26:29 +09:00
Tatsuhiro Tsujikawa
ff200bfcf3
clang-format-5.0
2017-11-23 14:19:12 +09:00
Tatsuhiro Tsujikawa
fee3151fd2
Switch to clang-format-5.0
2017-11-23 14:16:42 +09:00
Tatsuhiro Tsujikawa
99a85159ae
Update manual pages
2017-11-21 23:27:02 +09:00
Tatsuhiro Tsujikawa
2a981a3f56
Merge pull request #1066 from nghttp2/nghttpx-add-affinity-cookie-secure
...
nghttpx: Add affinity-cookie-secure parameter to backend option
2017-11-21 23:24:40 +09:00
Tatsuhiro Tsujikawa
0028275d7b
nghttpx: Add affinity-cookie-secure parameter to backend option
2017-11-21 22:29:22 +09:00
Tatsuhiro Tsujikawa
ee8bfddfc9
Merge pull request #1063 from nghttp2/error_callback2
...
Error callback2
2017-11-21 21:25:53 +09:00
Tatsuhiro Tsujikawa
194acb1f2c
src: Use nghttp2_error_callback2
2017-11-19 16:51:52 +09:00
Tatsuhiro Tsujikawa
43a2a70ae7
Add nghttp2_error_callback2
...
nghttp2_error_callback2 is an extended version of the existing
nghttp2_error_callback by adding error code parameter. This
deprecates nghttp2_error_callback.
2017-11-19 16:51:52 +09:00
Tatsuhiro Tsujikawa
73344ae9aa
nghttpx: Use plain hex string format for client serial
2017-11-17 00:04:23 +09:00
Tatsuhiro Tsujikawa
c479f6122f
Merge pull request #1060 from nghttp2/nghttpx-add-client-serial
...
Nghttpx add client serial
2017-11-16 23:26:35 +09:00
Tatsuhiro Tsujikawa
eca0a3025b
nghttpx: Add $tls_client_serial log variable
2017-11-16 22:53:54 +09:00
Tatsuhiro Tsujikawa
4720c5cb3d
nghttpx: Make client serial available in mruby script
2017-11-16 22:53:54 +09:00
Tatsuhiro Tsujikawa
cd55ab28ab
nghttpx: Add function to get serial number from certificate
2017-11-16 22:53:54 +09:00
Tatsuhiro Tsujikawa
d402cfdf16
Merge pull request #1057 from nghttp2/nghttpx-add-tls-client-issuer-name
...
Add tls_client_issuer_name log variable and expose it to mruby
2017-11-16 01:16:11 +09:00
Tatsuhiro Tsujikawa
22502182d0
Add tls_client_issuer_name log variable and expose it to mruby
2017-11-15 23:41:47 +09:00
Tatsuhiro Tsujikawa
05e1fd5e77
Update manual pages
2017-11-04 17:53:51 +09:00
Tatsuhiro Tsujikawa
943d7923f9
Add Session Affinity section to nghttpx howto
2017-11-04 17:49:09 +09:00
Tatsuhiro Tsujikawa
568ecbfb28
doc: Add missing port
2017-11-04 17:48:46 +09:00
Tatsuhiro Tsujikawa
f5ddd7f43b
nghttpx: Make initial_addr_idx_ unsigned
2017-11-04 17:30:56 +09:00
Tatsuhiro Tsujikawa
88abbce7e7
nghttpx: Fix compile error with gcc
2017-11-04 17:30:27 +09:00
Tatsuhiro Tsujikawa
16e9036568
nghttpx: Fix affinity retry
2017-11-04 17:13:45 +09:00
Tatsuhiro Tsujikawa
fa7945c627
nghttpx: Refactor
2017-11-04 15:55:25 +09:00
Tatsuhiro Tsujikawa
daca43f0dd
nghttpx: Fix stalled backend connection on retry
2017-11-04 15:46:08 +09:00
Tatsuhiro Tsujikawa
16bc11e670
nghttpx: Remove duplicated util::make_socket_nodelay
2017-11-04 13:00:17 +09:00
Tatsuhiro Tsujikawa
6f7e94cdba
Merge pull request #1047 from PiotrSikora/go_vet
...
integration: Fix issues reported by the `go vet` tool.
2017-11-03 23:02:37 +09:00
Piotr Sikora
61efa15a14
integration: Fix issues reported by the go vet tool.
...
Signed-off-by: Piotr Sikora <piotrsikora@google.com >
2017-11-02 21:13:25 -07:00
Tatsuhiro Tsujikawa
8c0ea56bb8
Merge pull request #1036 from nghttp2/nghttpx-affinity-cookie
...
nghttpx: Cookie based session affinity
2017-11-01 22:45:38 +09:00
Tatsuhiro Tsujikawa
549053710b
nghttpx: Refactor
2017-11-01 22:33:49 +09:00
Tatsuhiro Tsujikawa
6010d39325
integration: Add tests
2017-11-01 22:18:03 +09:00
Tatsuhiro Tsujikawa
be5c39a1cf
src: Add tests
2017-11-01 22:18:03 +09:00
Tatsuhiro Tsujikawa
b8fda6808b
nghttpx: Cookie based session affinity
2017-11-01 22:18:03 +09:00
Tatsuhiro Tsujikawa
e29b9c1261
Merge pull request #1045 from nghttp2/nghttpx-sha1-fingerprint
...
Nghttpx sha1 fingerprint
2017-10-31 23:07:39 +09:00
Tatsuhiro Tsujikawa
539e27812b
nghttpx: Add tls_client_fingerprint_sha1 to mruby and accesslog
...
Also tls_client_fingerprint is renamed to
tls_client_fingerprint_sha256.
2017-10-31 21:41:40 +09:00
Tatsuhiro Tsujikawa
7008afd40e
nghttpx: Refactor get_x509_fingerprint to accept hash function
2017-10-31 21:28:16 +09:00
Tatsuhiro Tsujikawa
77a41756db
Merge pull request #1041 from nghttp2/fix-examples-client-server
...
examples: Make client and server work with libevent-2.1.8
2017-10-30 17:30:20 +09:00
Tatsuhiro Tsujikawa
b15045d60e
Merge pull request #1040 from nghttp2/nghttpx-mruby-add-more-tls-vars
...
nghttpx: Add more TLS related attributes to mruby Env object
2017-10-29 23:14:16 +09:00
Tatsuhiro Tsujikawa
03084f7517
examples: Make client and server work with libevent-2.1.8
2017-10-29 23:09:23 +09:00
Tatsuhiro Tsujikawa
60baca27e4
nghttpx: Add more TLS related attributes to mruby Env object
...
The added attributes are:
* tls_cipher
* tls_protocol
* tls_session_id
* tls_session_reused
* alpn
2017-10-29 22:42:30 +09:00
Tatsuhiro Tsujikawa
86990db236
Merge pull request #1038 from nghttp2/nghttpx-add-more-logging-vars
...
nghttpx: Add client fingerprint and subject name to accesslog
2017-10-29 22:21:10 +09:00
Tatsuhiro Tsujikawa
cb376bcd80
nghttpx: Add client fingerprint and subject name to accesslog
2017-10-29 21:47:00 +09:00
Tatsuhiro Tsujikawa
f2b8edd1e2
nghttpx: Fix memory leak
2017-10-29 21:46:12 +09:00
Tatsuhiro Tsujikawa
c4f8afcfde
nghttpx: Get TLS info only when it is necessary when writing accesslog
2017-10-29 21:22:33 +09:00
Tatsuhiro Tsujikawa
1a1a216d5a
Merge pull request #1037 from nghttp2/nghttpx-mruby-tls-client-vars
...
nghttpx: Add client fingerprint and subject name to mruby env
2017-10-29 21:13:20 +09:00
Tatsuhiro Tsujikawa
9f80a82c1a
nghttpx: Add client fingerprint and subject name to mruby env
2017-10-29 19:54:42 +09:00
Tatsuhiro Tsujikawa
c573c80bd3
nghttpx: Pass a pointer to SSL instead of TLSSessionInfo to LogSpec
2017-10-29 19:47:39 +09:00
Tatsuhiro Tsujikawa
3cd6817e21
Fix typos
2017-10-29 16:54:21 +09:00
Tatsuhiro Tsujikawa
d4a69658a1
Add another warning about mruby
2017-10-29 16:18:20 +09:00
Tatsuhiro Tsujikawa
8e06fe4971
Fix typo
2017-10-29 16:14:30 +09:00
Tatsuhiro Tsujikawa
aaeeec8f1c
Fix typos
2017-10-28 22:25:42 +09:00
Tatsuhiro Tsujikawa
66d5e24606
Bump up version number to 1.28.0-DEV
2017-10-25 21:20:16 +09:00
Tatsuhiro Tsujikawa
e8907a073f
Update manual pages
2017-10-24 23:10:37 +09:00
Tatsuhiro Tsujikawa
9656ac0254
Fix sphinx warnings
2017-10-24 23:10:23 +09:00
Tatsuhiro Tsujikawa
75624617ce
Bump up version number to 1.27.0
2017-10-24 22:51:17 +09:00
Tatsuhiro Tsujikawa
1a8f6578b3
Update AUTHORS
2017-10-24 22:49:51 +09:00
Tatsuhiro Tsujikawa
4f0548b018
travis: Compile mruby and neverbleed in make distcheck
...
gcc is upgraded to gcc-7.
2017-10-24 21:41:10 +09:00
Tatsuhiro Tsujikawa
5119e82b93
src: Fix memory leak in unit test
2017-10-24 21:40:30 +09:00
Tatsuhiro Tsujikawa
3be5856c82
nghttpx: Fix unused function warnings
2017-10-24 21:40:30 +09:00
Tatsuhiro Tsujikawa
a319143901
nghttpx: Fix bug that header fields are missing in HTTP/1.0 response
2017-10-22 01:11:32 +09:00
Tatsuhiro Tsujikawa
17c88d60c7
Compile with g++ 7.2.1
2017-10-19 23:04:12 +09:00
Tatsuhiro Tsujikawa
7601511fdf
Merge pull request #1029 from lazyhamster/master
...
Fixed accidental compiler flags concatenation for MSVC.
2017-10-19 21:21:46 +09:00
Tatsuhiro Tsujikawa
f507b5eee4
nghttpx: Use an existing h2 backend connection as much as possible
...
h2load measurement reveals that this strategy is 3 times faster than
the previous implementations.
2017-10-19 21:15:08 +09:00
LazyHamster
93821165be
Fixed accidental compiler flags concatenation for MSVC.
2017-10-18 15:25:17 +03:00
Tatsuhiro Tsujikawa
aaa0b858e4
Amend some macro comments
2017-10-14 11:50:16 +09:00
Tatsuhiro Tsujikawa
5fa1938691
clang-format
2017-10-14 11:45:41 +09:00
Tatsuhiro Tsujikawa
56ee3d4820
Merge pull request #1027 from dermojo/mingw
...
Support for Windows / MinGW
2017-10-14 11:44:57 +09:00
Daniel Evers
c2d9a1ed6f
Support for Windows / MinGW
2017-10-12 18:15:12 +02:00
Tatsuhiro Tsujikawa
fcf9ab2798
Merge pull request #1023 from nckx/fix-fuzz-typo
...
fuzz: Fix typo (‘-fsanitize=adres’) in README.rst
2017-10-12 21:00:18 +09:00
Tobias Geerinckx-Rice
35e445bd04
fuzz: Fix typo (‘-fsanitize=adres’) in README.rst
2017-10-10 22:14:25 +02:00
Tatsuhiro Tsujikawa
88ce3c31b7
Merge pull request #1020 from FireBurn/master
...
Reduce libxml2 version requirement to 2.6.26
2017-10-07 21:17:33 +09:00
Mike Lothian
16320a0f81
Reduce libxml2 version requirement to 2.6.26
...
It's currently set at 2.7.7 but reducing this down to 2.6.26 allows
nghttp2 to be built on RHEL5
2017-10-04 14:25:12 +01:00
Tatsuhiro Tsujikawa
8c72fb3539
Merge pull request #1018 from nghttp2/h2load-verbose-h2-headers
...
h2load: Print out h2 header fields with --verbose option
2017-10-01 12:49:13 +09:00
Tatsuhiro Tsujikawa
8ffe389daa
h2load: Print out h2 header fields with --verbose option
2017-09-22 18:12:20 +09:00
Tatsuhiro Tsujikawa
189a4516a1
Merge pull request #1016 from nghttp2/nghttpx-non-final-response
...
nghttpx: Send non-final response to HTTP/1.1 or HTTP/2 client only
2017-09-21 22:28:51 +09:00
Tatsuhiro Tsujikawa
2576855ded
nghttpx: Send non-final response to HTTP/1.1 or HTTP/2 client only
2017-09-21 21:42:56 +09:00
Tatsuhiro Tsujikawa
7d4d48a35e
Add timing-based load-testing section to h2load howto
2017-09-21 17:57:32 +09:00
Tatsuhiro Tsujikawa
cc6f759190
src: Add static to constexpr char[]
2017-09-20 23:54:10 +09:00
Tatsuhiro Tsujikawa
c23fc86a23
Bump up version number to 1.27.0-DEV
2017-09-20 22:52:43 +09:00
Tatsuhiro Tsujikawa
d2324bdda1
Update bash_completion
2017-09-20 22:42:14 +09:00
Tatsuhiro Tsujikawa
6f0ae9d49a
Update manual pages
2017-09-20 22:41:56 +09:00
Tatsuhiro Tsujikawa
0389af5724
Bump up version number to 1.26.0
2017-09-20 22:29:38 +09:00
Tatsuhiro Tsujikawa
1766e25f45
Update AUTHORS
2017-09-20 22:28:43 +09:00
Tatsuhiro Tsujikawa
323001238a
clang-format
2017-09-20 22:08:22 +09:00
Tatsuhiro Tsujikawa
91f062f873
src: Fix compile error
2017-09-20 22:08:08 +09:00
Tatsuhiro Tsujikawa
650a0cfbff
Merge pull request #1013 from marcbachmann/patch-1
...
Fix some typos in the nghttpx how-to doc
2017-09-13 23:59:07 +09:00
Marc Bachmann
e6b8b3d1d3
docs: Fix some typos in the nghttpx how-to
2017-09-11 22:10:03 +02:00
Tatsuhiro Tsujikawa
a170023f23
nghttpx: Verify OCSP response using trusted CA certificates
2017-09-01 21:35:38 +09:00
Tatsuhiro Tsujikawa
4be4c0cddc
Revert "nghttpx: Verify OCSP response using trusted CA certificates"
...
This reverts commit 59c78d5809 .
2017-08-30 22:27:02 +09:00
Tatsuhiro Tsujikawa
0de9d374df
Merge pull request #1002 from GitaiQAQ/master
...
Just fix unreachable links and remove ndk...
2017-08-26 22:39:24 +09:00
Tatsuhiro Tsujikawa
0df199198a
Merge pull request #1001 from rlei/master
...
Fix OCSP related error when building with BoringSSL
2017-08-26 22:00:56 +09:00
Gitai
7646e376e0
Fix unreachable
2017-08-26 12:54:03 +08:00
Rick Lei
5996798a34
Fix OCSP related error when building with BoringSSL
...
BoringSSL has no "openssl/ocsp.h" nor most OCSP related APIs used in
shrpx_tls.cc. This commit add ifdefs to disable related code to allow
building nghttp2 with BoringSSL (again).
It's possible to use !defined(OPENSSL_IS_BORINGSSL), but since BoringSSL
defines OPENSSL_NO_OCSP which is more specific, I chose to go with the
latter one.
2017-08-24 11:56:46 -04:00
Tatsuhiro Tsujikawa
6fec532012
Merge pull request #998 from nghttp2/h2load-fix-timing-script-stall
...
Fix bug that timing script stalls with -m1
2017-08-24 21:17:43 +09:00
Tatsuhiro Tsujikawa
15713e0b7c
h2load: Ignore -n for timing-based mode instead of requiring -n=0
2017-08-23 20:35:01 +09:00
Tatsuhiro Tsujikawa
a6a561af47
Fix bug that timing script stalls with -m1
2017-08-23 20:10:23 +09:00
Tatsuhiro Tsujikawa
09c468a4b4
Merge branch 'sohamm17-master'
2017-08-23 19:22:44 +09:00
Tatsuhiro Tsujikawa
bcda1c2409
Fix assertion failure
2017-08-23 19:22:23 +09:00
Tatsuhiro Tsujikawa
afcd8d9ab1
clang-format
2017-08-23 19:19:00 +09:00
Tatsuhiro Tsujikawa
c9b1c91944
Fix compile error
2017-08-23 19:18:27 +09:00
Tatsuhiro Tsujikawa
5d9434eb09
Merge branch 'master' of https://github.com/sohamm17/nghttp2 into sohamm17-master
2017-08-23 19:16:40 +09:00
Tatsuhiro Tsujikawa
1a44b5d52a
Merge pull request #984 from nghttp2/h2load-reservoir-sampling
...
h2load: Reservoir sampling
2017-08-23 19:00:28 +09:00
Tatsuhiro Tsujikawa
6635ca5e26
Merge pull request #988 from dvetutnev/refactoring_include_directories
...
Refactoring include directories
2017-08-23 18:59:28 +09:00
Tatsuhiro Tsujikawa
9c6c78833b
Bump up version number to 1.26.0-DEV
2017-08-18 23:19:36 +09:00
Tatsuhiro Tsujikawa
9a9ab0813c
Update manual pages
2017-08-18 23:00:58 +09:00
Tatsuhiro Tsujikawa
0ccaaa48ce
Bump up version number to 1.25.0, LT revision to 28:0:14
2017-08-18 22:38:10 +09:00
Tatsuhiro Tsujikawa
3f2fe98dd1
Update AUTHORS
2017-08-18 22:11:11 +09:00
Tatsuhiro Tsujikawa
0d91e9c255
Update doc
2017-08-18 22:06:43 +09:00
Dmitriy Vetutnev
af926fbe1f
Refactoring include directories for build as CMake subdirectory (add_subdirectory(nghttp2))
2017-08-16 21:28:12 +03:00
Tatsuhiro Tsujikawa
83039ae2d4
h2load: Reservoir sampling
2017-08-14 20:25:02 +09:00
Tatsuhiro Tsujikawa
4c53da6961
Merge pull request #983 from addaleax/static-rcbuf
...
lib: add nghttp2_rcbuf_is_static()
2017-08-13 09:10:41 +09:00
Anna Henningsen
eb306f463e
lib: add nghttp2_rcbuf_is_static()
...
Add a `nghttp2_rcbuf_is_static()` method to tell whether a rcbuf
is statically allocated.
This can be useful for language bindings that wish to avoid
creating duplicate strings for these buffers; concretely, I am
planning to use this in the Node HTTP/2 module that is being
introduced.
2017-08-12 17:48:14 +02:00
Tatsuhiro Tsujikawa
788835c5fd
Merge pull request #980 from nghttp2/fix-forwarded-for-with-proxyprotocol
...
Fix bug that forwarded for is not affected by proxy protocol
2017-08-09 23:34:43 +09:00
Tatsuhiro Tsujikawa
4d76606fa2
Fix bug that forwarded for is not affected by proxy protocol
2017-08-09 22:44:14 +09:00
Soham Sinha
1baf7d34b3
Duration watcher and warmup watcher is initialised in Worker constructor. Statistic calculation is removed from duration watcher call_back, it's done in free_client.
2017-08-08 17:26:37 -04:00
Soham Sinha
c78159469a
Added a function to free a client from Worker's list of client, if the client is destroyed
2017-08-07 18:58:12 -04:00
Soham Sinha
b72ca0289c
formatting issue
2017-08-04 14:20:00 -04:00
Soham Sinha
46f670f8a2
concurrent connections are created in timing-based mode. Some safety asserts added.
2017-08-03 16:15:14 -04:00
Soham Sinha
4b44362b9f
minor style changes
2017-08-01 20:22:20 -04:00
Soham Sinha
d068a29798
removed unnecessary code
2017-08-01 19:51:47 -04:00
Soham Sinha
0836a51408
Handling requests starting in warm-up phase and ending in MAIN_DURATION
2017-08-01 18:29:00 -04:00
Soham Sinha
566cee8fe7
MAIN_DURATION is initiliazed in Worker constructor, MAIN_DURATION check is removed from two functions because those functions are needed in warm-up phase as well.
2017-08-01 17:45:52 -04:00
Soham Sinha
e85698e131
MAIN_DURATION is initiliazed in Worker constructor, MAIN_DURATION check is removed from two functions because those functions are needed in warm-up phase as well.
2017-08-01 17:45:18 -04:00
Soham Sinha
5f3c541c4c
enabled --duration option.
2017-07-28 17:31:13 -04:00
Soham Sinha
3c43e00d8a
Timing ( #1 )
...
* Adding timing-sensitive load test option in h2load.
* more checks added for parameters
* A worker thread can control its clients' warmup and main duration.
* Changed warmup to an enum variable.
* removed unnecessary call to ev_timer_stop
* assertion is done before starting main measurement phase
* phase variable is implemented only inside the Worker class
* enum to enum class
* else indentation corrected
* check added for timing-based test when duration CB is called explicitly
* New argument is introduced for timing-based benchmarking.
* styling corrections
* duration watcher initialization is pushed back into warmup timeout
* Warmup and Duration timer is moved to Worker instead of clients. Now both timers and phase belongs to the Workers.
* some client functions are modified to return if it's not main_duration phase. client is not destructed but sessions are terminated
* outputs are adjusted for thread.
* Needed to check if a session exist before terminating
* formatting
* more formatting
* formatting
2017-07-28 17:08:20 -04:00
Tatsuhiro Tsujikawa
92d686d356
Merge branch 'mruby-1.3.0'
2017-07-28 00:51:48 +09:00
Tatsuhiro Tsujikawa
0f69e9c825
Fix typo
2017-07-28 00:51:34 +09:00
Tatsuhiro Tsujikawa
217d979458
Update mruby to 1.3.0
...
Fix compile error with mruby 1.3.0
2017-07-28 00:23:25 +09:00
Tatsuhiro Tsujikawa
cc289972fc
Merge pull request #958 from sebdeckers/patch-1
...
fix: typo
2017-07-15 11:44:14 +09:00
Sebastiaan Deckers
c601e603c2
fix: typo
...
Came up in downstream code review by @lucaslago https://github.com/nodejs/node/pull/14239#discussion_r127539852
2017-07-15 07:46:26 +08:00
Tatsuhiro Tsujikawa
1002c6da1c
src: Use llround instead of round
2017-07-12 23:23:47 +09:00
Tatsuhiro Tsujikawa
0911337689
Bump up version number to 1.25.0-DEV
2017-07-02 17:51:24 +09:00
Tatsuhiro Tsujikawa
3bcc416e13
Update manual pages
2017-07-02 13:40:21 +09:00
Tatsuhiro Tsujikawa
65837806f5
Bump up version number to 1.24.0
2017-07-02 13:37:53 +09:00
Tatsuhiro Tsujikawa
b0772dcc66
Update AUTHORS
2017-07-02 13:31:47 +09:00
Tatsuhiro Tsujikawa
c6d65aad3b
Merge branch 'nghttp-not-upgrade-without-reason-phrase'
2017-06-28 21:36:13 +09:00
Tatsuhiro Tsujikawa
18dd20ce55
nghttp: Fix bug that upgrade fails if reason-phrase is missing
2017-06-28 01:01:39 +09:00
Tatsuhiro Tsujikawa
0f6d76a501
Merge pull request #947 from bassosimone/patch-1
...
README.rst: fix typo
2017-06-23 00:33:00 +09:00
Simone Basso
0f1320109f
README.rst: fix typo
2017-06-22 17:03:05 +02:00
Tatsuhiro Tsujikawa
defa28c618
Merge pull request #945 from benjaminp/trailer-grammar
...
fix up grammar in submit_trailer docs
2017-06-20 00:35:46 +09:00
Benjamin Peterson
b7c95be47c
fix up grammar in submit_trailer docs
2017-06-18 23:55:53 -07:00
Tatsuhiro Tsujikawa
a18d154e0e
Merge pull request #943 from nghttp2/nghttpx-verify-ocsp-resp-with-cacerts
...
nghttpx: Verify OCSP response using trusted CA certificates
2017-06-15 20:56:44 +09:00
Tatsuhiro Tsujikawa
52195a12ee
Merge pull request #941 from nghttp2/nghttpx-tls-min-proto
...
nghttpx: Set default minimum TLS version to TLSv1.2
2017-06-13 23:01:54 +09:00
Tatsuhiro Tsujikawa
59c78d5809
nghttpx: Verify OCSP response using trusted CA certificates
2017-06-13 23:00:26 +09:00
Tatsuhiro Tsujikawa
be164fc8f9
nghttpx: Set default minimum TLS version to TLSv1.2
...
Previously, the default minimum TLS version was TLSv1.1, but the
default cipher list didn't include any compatible ciphers with it.
This made handshake fail if TLSv1.1 was negotiated because there was
no shared ciphers. To make the default settings consistent, the
default minimum TLS version is now TLSv1.2.
2017-06-12 23:54:12 +09:00
Tatsuhiro Tsujikawa
5833ef1efc
Merge pull request #938 from benjaminp/fix-clean
...
fix cleaning in out-of-tree builds
2017-06-12 00:21:10 +09:00
Benjamin Peterson
28f88d46f3
fix cleaning in out-of-tree builds
...
The altered previously failed if the rst sources hadn't been copied over.
2017-06-11 00:03:36 -07:00
Tatsuhiro Tsujikawa
6ec7683991
nghttpx: Use nocopy version to send trailer headers to backend
...
It looks like we can use nocopy version here. We use nocopy version
in frontend in day 1.
2017-06-02 22:38:39 +09:00
Tatsuhiro Tsujikawa
fb2d8f79d6
Update doc
2017-06-02 22:22:44 +09:00
Tatsuhiro Tsujikawa
8f7fa1b1bf
nghttpx: Fix crash in OCSP response verification
2017-05-30 23:52:38 +09:00
Tatsuhiro Tsujikawa
e5889ce622
Bump up version number to 1.24.0-DEV
2017-05-26 23:07:50 +09:00
Tatsuhiro Tsujikawa
3a6f83394c
Update bash_completion
2017-05-26 22:17:10 +09:00
Tatsuhiro Tsujikawa
acf36f3d1a
Update manual pages
2017-05-26 22:16:51 +09:00
Tatsuhiro Tsujikawa
63e6a8bab2
Bump up version number to 1.23.0, LT revision to 27:3:13
2017-05-26 21:37:28 +09:00
Tatsuhiro Tsujikawa
5361cc6bd1
Update authors
2017-05-26 21:34:43 +09:00
Tatsuhiro Tsujikawa
cabac55394
Merge pull request #925 from sohamm17/patch-1
...
spelling mistake in arguments to build nghttp apps
2017-05-25 23:38:54 +09:00
Tatsuhiro Tsujikawa
db7483ef10
Merge branch 'nghttpx-verify-ocsp'
2017-05-25 23:37:34 +09:00
Tatsuhiro Tsujikawa
4b51ccbefe
examples: Attempt to fix OpenSSL link error
2017-05-25 23:24:44 +09:00
Tatsuhiro Tsujikawa
74c2f1257a
nghttpx: Add --no-verify-ocsp to disable OCSP response verification
2017-05-25 23:14:58 +09:00
Tatsuhiro Tsujikawa
1428a5e3ae
nghttpx: Verify OCSP response
...
At least we should make sure that the OCSP response is targeted to the
expected certificate. This is important because we pass the file path
to the external script, and if the file is replaced because of
renewal, and nghttpx has not reloaded its configuration, the
certificate nghttpx has loaded and the one included in the file
differ. Verifying the OCSP response detects this, and avoids to send
wrong OCSP response.
2017-05-25 23:14:57 +09:00
Tatsuhiro Tsujikawa
fe021c1524
Merge branch 'memchunk-no-unique-ptr'
2017-05-25 00:53:13 +09:00
Tatsuhiro Tsujikawa
c57bf21306
src: memchunks: Don't use std::unique_ptr to avoid potential SO
2017-05-25 00:23:51 +09:00
Soham Sinha
1743b7d92d
spelling mistake in arguments to build nghttp apps
2017-05-22 17:20:30 -04:00
Tatsuhiro Tsujikawa
7f31278c4c
Update doc
2017-05-22 22:53:49 +09:00
Tatsuhiro Tsujikawa
8401e16a15
nghttpx: Fix compile error with gcc
2017-05-22 22:10:55 +09:00
Tatsuhiro Tsujikawa
07fb5854f3
nghttpx: Compile with openssl 1.0.2
2017-05-22 22:09:34 +09:00
Tatsuhiro Tsujikawa
b56a99bfba
Update bash_completion
2017-05-21 11:43:00 +09:00
Tatsuhiro Tsujikawa
b91e4e4df1
Update manual pages
2017-05-21 11:42:46 +09:00
Tatsuhiro Tsujikawa
52a4d6ac31
Merge branch 'nghttpx-fix-cert-selection'
2017-05-21 11:26:12 +09:00
Tatsuhiro Tsujikawa
796ab87b14
nghttpx: Fix certificate selection based on pub key algorithm
2017-05-21 11:12:47 +09:00
Tatsuhiro Tsujikawa
ed1fad3bd4
nghttpx: Call ERR_clear_error()
...
Call ERR_clear_error() before the OpenSSL function if we use
SSL_get_error() to examine error stack.
2017-05-21 10:32:12 +09:00
Tatsuhiro Tsujikawa
9c1876f542
nghttpx: Fix certificate indexing bug
2017-05-21 00:19:33 +09:00
Tatsuhiro Tsujikawa
7d111d9963
Merge pull request #923 from nghttp2/compile-with-disable-assert
...
Compile with --disable-assert
2017-05-18 23:49:41 +09:00
Tatsuhiro Tsujikawa
8c2ce0cf3f
Merge pull request #922 from nghttp2/nghttpx-ocsp-startup
...
nghttpx: Run OCSP at startup
2017-05-18 23:49:23 +09:00
Tatsuhiro Tsujikawa
1b442cb16f
Compile with --disable-assert
2017-05-18 23:10:44 +09:00
Tatsuhiro Tsujikawa
2bf3680d87
Merge pull request #919 from projectgus/fix_ndebug_compile
...
nghttp2_session: Allow for compiling library with -DNDEBUG set
2017-05-18 22:37:51 +09:00
Tatsuhiro Tsujikawa
0d4f0f0db5
nghttpx: Run OCSP at startup
...
With --ocsp-startup option, nghttpx starts accepting connections after
initial attempts to get OCSP responses finish. It does not matter
some of the attempts fail. This feature is useful if OCSP responses
must be available before accepting connections.
2017-05-18 22:33:49 +09:00
Angus Gratton
e17ff8fd32
nghttp2_session: Allow for compiling library with -DNDEBUG set
2017-05-17 14:43:06 +10:00
Tatsuhiro Tsujikawa
14edd12304
nghttpx: Refactor the code for the anti-replay
2017-05-14 17:45:35 +09:00
Tatsuhiro Tsujikawa
e6ffdb23a4
nghttpx: Share session_cache_ssl_ctx across threads
2017-05-14 17:43:11 +09:00
Tatsuhiro Tsujikawa
98fdedac06
Merge pull request #917 from Tapanito/patch-1
...
Update docs
2017-05-13 10:27:22 +09:00
Tapanito
255037264a
updated docs
2017-05-12 16:35:44 +01:00
Tatsuhiro Tsujikawa
d3fcbe9a02
Merge branch 'invalid-header-field-error'
2017-05-12 21:37:20 +09:00
Tatsuhiro Tsujikawa
bcdd588c6e
Merge branch 'nghttpx-wildcard-path-match'
2017-05-11 23:50:56 +09:00
Tatsuhiro Tsujikawa
b5007d45f7
nghttpx: Wildcard path matching
...
This commit adds wildcard path matching. If path pattern given in
backend option ends with "*", it is considered as wildcard path. "*"
must match at least one character. All paths which include wildcard
path without last "*" as prefix, and are strictly longer than wildcard
path without last "*" are matched.
2017-05-11 22:15:28 +09:00
Tatsuhiro Tsujikawa
a584cf5a4f
Use clang-format-4.0
2017-04-30 15:45:53 +09:00
Tatsuhiro Tsujikawa
77f7a2fa7f
Update doc
2017-04-29 22:21:21 +09:00
Tatsuhiro Tsujikawa
f2c539dc70
Clarify the effect of nghttp2_option_set_no_http_messaging
2017-04-29 21:00:20 +09:00
Tatsuhiro Tsujikawa
78d7160a99
Treat incoming invalid regular header field as stream error
...
Previously, the incoming invalid regular header field was ignored by
default. With this commit, they are now treated as stream error, and
the stream is reset by default. The error code used is now
PROTOCOL_ERROR, instead of INTERNAL_ERROR.
2017-04-28 23:46:06 +09:00
Tatsuhiro Tsujikawa
196673bbce
nghttp: Remove unused short option 'g'
2017-04-28 22:39:12 +09:00
Tatsuhiro Tsujikawa
794d13082c
Merge branch 'nghttp-no-verify-peer'
2017-04-28 22:36:23 +09:00
Tatsuhiro Tsujikawa
5f5cf4107e
nghttpx: Reseve rcbufs_
2017-04-28 22:31:09 +09:00
Tatsuhiro Tsujikawa
6f3ec54b9f
nghttp: Add -y, --no-verify-peer option to suppress peer verify warn
2017-04-28 09:53:37 +09:00
Tatsuhiro Tsujikawa
58043a6b04
nghttpx: Guard the presence of TLS1_3_VERSION
2017-04-27 23:13:15 +09:00
Tatsuhiro Tsujikawa
a885315ef5
Merge branch 'nghttpx-unrecognized-sni'
2017-04-27 22:57:54 +09:00
Tatsuhiro Tsujikawa
d7581525ac
nghttpx: Update TLSv1.3 TLS record overhead
2017-04-27 22:57:06 +09:00
Tatsuhiro Tsujikawa
385068eb91
Merge branch 'altsvc-invalid-callback'
2017-04-27 22:35:25 +09:00
Tatsuhiro Tsujikawa
1085f68018
nghttpx: Return SSL_TLSEXT_ERR_NOACK if server name is not recognized
...
With this commit, SSL_TLSEXT_ERR_NOACK is returned from
servername_callback, which removes server_name extension from
ServerHello. CertLookupTree is now used even if the number of server
certificate is one. It is better to exercise it regularly.
2017-04-27 22:25:58 +09:00
Tatsuhiro Tsujikawa
21af775ce0
Call nghttp2_on_invalid_frame_callback if altsvc validation fails
2017-04-27 18:53:43 +09:00
Tatsuhiro Tsujikawa
bf16fee6e9
Merge pull request #903 from nghttp2/nghttpx-forward-multiple-header-fields
...
nghttpx: Forward multiple via, xff, and xfp header fields
2017-04-26 22:32:33 +09:00
Tatsuhiro Tsujikawa
2358a2137a
Refactor predicate functions
2017-04-26 22:31:43 +09:00
Tatsuhiro Tsujikawa
66baa7dc25
Estimate header block size after predicate function succeeds
2017-04-26 22:15:53 +09:00
Tatsuhiro Tsujikawa
d63b4c1034
nghttpx: Forward multiple via, xff, and xfp header fields
...
Previously, for Via, X-Forwarded-For, and X-Forwarded-Proto header
field, nghttpx only forwarded the last header field of each. With
this commit, nghttpx forwards all of them if it is configured to do
so.
2017-04-26 21:23:13 +09:00
Tatsuhiro Tsujikawa
963e220a1c
Bump up version number to 1.23.0-DEV
2017-04-24 22:34:13 +09:00
Tatsuhiro Tsujikawa
2f146e4d4c
Update manual pages
2017-04-24 21:41:15 +09:00
Tatsuhiro Tsujikawa
f796eede5a
Bump up version number to 1.22.0, LT revision to 27:2:13
2017-04-24 21:32:18 +09:00
Tatsuhiro Tsujikawa
c89453be95
Update AUTHORS
2017-04-24 21:29:12 +09:00
Tatsuhiro Tsujikawa
c3f5f5ca36
nghttpx: Clarify --conf option behaviour
2017-04-20 22:25:38 +09:00
Tatsuhiro Tsujikawa
911d12f7c4
nghttpx: Add log when loading configuration file
2017-04-20 22:22:29 +09:00
Tatsuhiro Tsujikawa
34d3c45d35
Update manual pages
2017-04-19 23:03:08 +09:00
Tatsuhiro Tsujikawa
17614312e0
Merge pull request #892 from nghttp2/nghttpx-sni-fwd
...
nghttpx: SNI based backend server selection
2017-04-19 21:22:15 +09:00
Tatsuhiro Tsujikawa
977779ae8d
Merge pull request #896 from nghttp2/nghttpx-add-tls-sni-log-var
...
nghttpx: Add $tls_sni access log variable
2017-04-19 21:21:01 +09:00
Tatsuhiro Tsujikawa
a2e35a0757
nghttpx: Add $tls_sni access log variable
2017-04-18 22:44:26 +09:00
Tatsuhiro Tsujikawa
a4a2b6403b
nghttpx: Use SHRPX_LOGF_TLS_* instead of SHRPX_LOGF_SSL_*
2017-04-18 22:34:08 +09:00
Tatsuhiro Tsujikawa
8ce8e289c9
Merge pull request #895 from nghttp2/nghttpx-rename-ssl-log-vars
...
nghttpx: Rename ssl_* log variables as tls_*
2017-04-18 22:31:44 +09:00
Tatsuhiro Tsujikawa
03be97e437
nghttpx: Rename ssl_* log variables as tls_*
...
The exiting ssl_* log variables still work for backward compatibility.
2017-04-18 22:11:05 +09:00
Tatsuhiro Tsujikawa
2c5cf5a82a
Merge pull request #894 from nghttp2/nghttpx-fix-path-match
...
nghttpx: Fix path matching bug
2017-04-18 21:28:21 +09:00
Tatsuhiro Tsujikawa
0a2d1965df
nghttpx: Fix path matching bug
...
Previously, if path is empty or path does not start with "/", nghttpx
did not try to match with wildcard pattern. This commit fixes it.
2017-04-18 21:03:50 +09:00
Tatsuhiro Tsujikawa
c8a5f1e335
nghttpx: SNI based backend server selection
2017-04-16 23:47:10 +09:00
Tatsuhiro Tsujikawa
5e00cf9620
Update doc
2017-04-14 00:55:31 +09:00
Tatsuhiro Tsujikawa
ce6370e25c
Merge pull request #886 from lstefani/patch-1
...
Update nghttp2_session.c
2017-04-14 00:16:06 +09:00
Tatsuhiro Tsujikawa
3f8c1e4b34
tests: Fix failmalloc tests
2017-04-14 00:00:36 +09:00
lstefani
25cda200be
Update nghttp2_session.c
...
Add missing free call on error in inflight_settings_new().
2017-04-13 10:00:15 -04:00
Tatsuhiro Tsujikawa
a1bc83a2ba
Merge pull request #881 from mway/dev/request-priority
...
Support specifying stream priority via session::submit()
2017-04-12 23:36:40 +09:00
Matt Way
bc3949db9e
Support specifying stream priority via session::submit()
2017-04-12 10:07:16 -04:00
Tatsuhiro Tsujikawa
6cfa885207
nghttpx: Remove unused lambda capture
2017-04-12 22:09:44 +09:00
Tatsuhiro Tsujikawa
899588e0b5
Update bash_completion
2017-04-09 16:10:07 +09:00
Tatsuhiro Tsujikawa
49af52a68d
Update manual pages
2017-04-09 16:09:44 +09:00
Tatsuhiro Tsujikawa
ec908af19c
integration: Use nip.io instead of xip.io
2017-04-09 16:06:37 +09:00
Tatsuhiro Tsujikawa
e61ac4682e
Merge branch 'nghttpx-xfp-take2'
2017-04-09 16:02:53 +09:00
Tatsuhiro Tsujikawa
4d10dce61d
nghttpx: Only send SCT for leaf certificate
2017-04-09 14:38:18 +09:00
Tatsuhiro Tsujikawa
c569830dfc
Merge branch 'nghttpx-tls13-sct'
2017-04-09 14:24:00 +09:00
Tatsuhiro Tsujikawa
2d9fd87029
nghttpx: Enable signed_certificate_timestamp extension for TLSv1.3
2017-04-09 14:11:49 +09:00
Tatsuhiro Tsujikawa
2670bfb8ba
integration: Add tests for X-Forwarded-Proto handling
2017-04-08 18:46:37 +09:00
Tatsuhiro Tsujikawa
cc9190ab37
nghttpx: Add options for X-Forwarded-Proto header field
...
This commit adds 2 new options to handle X-Forwarded-Proto header
field. The --no-add-x-forwarded-proto option makes nghttpx not to
append X-Forwarded-Proto value. The
--no-strip-incoming-x-forwarded-proto option prevents nghttpx from
stripping the header field from client.
Previously, nghttpx always strips incoming header field, and set its
own header field. This commit preserves this behaviour, and adds
additional knobs.
2017-04-08 18:46:36 +09:00
Tatsuhiro Tsujikawa
980570de71
Revert "nghttpx: Add options for X-Forwarded-Proto header field"
...
This reverts commit 8c0b2c684a .
2017-04-08 18:37:54 +09:00
Tatsuhiro Tsujikawa
ef92b54db3
Revert "integration: Add tests for X-Forwarded-Proto handling"
...
This reverts commit 6aa581d2f0 .
2017-04-08 18:34:10 +09:00
Tatsuhiro Tsujikawa
0130124cea
Revert "doc: Add migration doc for nghttpx"
...
This reverts commit 82b326e684 .
2017-04-08 18:34:07 +09:00
Tatsuhiro Tsujikawa
e2a7e867f9
integration: Add more tests for 204 status code
2017-04-07 22:36:46 +09:00
Tatsuhiro Tsujikawa
32ce0ce5d9
Merge branch 'nghttpx-fix-204-handling'
2017-04-07 22:11:39 +09:00
Tatsuhiro Tsujikawa
28082ff5f5
integration: Add tests for 204 status code
2017-04-07 21:46:33 +09:00
Tatsuhiro Tsujikawa
46ccc4332c
nghttpx: Fix bug that 204 from h1 backend is always treated as error
2017-04-07 21:45:13 +09:00
Tatsuhiro Tsujikawa
3a1217e667
Update bash_completion
2017-04-06 20:26:32 +09:00
Tatsuhiro Tsujikawa
39fd0c1278
Update manual pages
2017-04-06 20:26:08 +09:00
Tatsuhiro Tsujikawa
4e6bd54dd1
Merge branch 'nghttpx-single-process'
2017-04-06 20:18:33 +09:00
Tatsuhiro Tsujikawa
5c9f46a6b0
Merge branch 'nghttp-verify-server-certificate'
2017-04-06 20:17:29 +09:00
Tatsuhiro Tsujikawa
7d53866157
Update doc
2017-04-06 20:14:49 +09:00
Tatsuhiro Tsujikawa
9a2e948c42
Update doc
...
Add section to promote the build from tar archives.
2017-04-06 20:13:00 +09:00
Tatsuhiro Tsujikawa
223e971c7e
nghttpx: Add --single-process option
...
With --single-process option, nghttpx will run in a single process
mode where master and worker are unified into one process. nghttpx
still spawns additional process for neverbleed. In the single process
mode, signal handling is disabled.
2017-04-06 20:02:57 +09:00
Tatsuhiro Tsujikawa
df814223ff
Merge branch 'nghttpx-xfp'
2017-04-06 19:36:27 +09:00
Tatsuhiro Tsujikawa
82b326e684
doc: Add migration doc for nghttpx
2017-04-06 19:24:02 +09:00
Tatsuhiro Tsujikawa
6aa581d2f0
integration: Add tests for X-Forwarded-Proto handling
2017-04-06 19:20:08 +09:00
Tatsuhiro Tsujikawa
8c0b2c684a
nghttpx: Add options for X-Forwarded-Proto header field
...
This commit adds 2 new options to handle X-Forwarded-Proto header
field. The --add-x-forwarded-proto option makes nghttpx append
X-Forwarded-Proto value. The --strip-incoming-x-forwarded-proto
option makes nghttpx to strip the header field from client.
Previously, nghttpx always strips incoming header field, and set its
own header field. This commit changes this behaviour. Now nghttpx
does not strip, and append X-Forwarded-Proto header field by default.
The X-Forwarded-For, and Forwarded header fields are also handled in
the same way. To recover the old behaviour, use
--add-x-forwarded-proto and --strip-incoming-x-forwarded-proto
options.
2017-04-06 19:17:36 +09:00
Tatsuhiro Tsujikawa
62324781bd
integration: Close channel instead of writing struct
2017-04-05 23:57:33 +09:00
Tatsuhiro Tsujikawa
7ae0b2dc09
nghttp: Verify server certificate and show warning if it fails
2017-04-01 17:49:57 +09:00
Tatsuhiro Tsujikawa
058122b804
nghttpx: Rename shrpx_ssl.{h,cc} as shrpx_tls.{h,cc}
...
The namespace shrpx::ssl was also renamed as shrpx::tls.
2017-04-01 15:12:28 +09:00
Tatsuhiro Tsujikawa
69f63c529d
src: Rename ssl.{h,cc} as tls.{h,cc}
...
nghttp2::ssl namespace was also renamed as nghttp2::tls.
2017-04-01 15:12:28 +09:00
Tatsuhiro Tsujikawa
e17a6b29b6
nghttpx: Use 502 as server error code
2017-04-01 14:04:55 +09:00
Tatsuhiro Tsujikawa
b12c2a13c0
nghttpx: Fail handshake if server certificate verification fails
...
Previously, we drop connection if server certificate verification
fails after handshake. With this commit, we fail handshake if that
happens.
2017-04-01 13:41:41 +09:00
Tatsuhiro Tsujikawa
236c835abc
nghttpx: Don't enable SSL_MODE_AUTO_RETRY since we do non-blocking I/O
2017-04-01 12:05:07 +09:00
Tatsuhiro Tsujikawa
b41a5afe04
Merge branch 'fix-asio-client-ping'
2017-03-31 22:20:07 +09:00
Tatsuhiro Tsujikawa
ad338bfa44
asio: Fix crash if connect takes longer time than ping interval
2017-03-31 21:17:57 +09:00
Tatsuhiro Tsujikawa
a899522679
asio: Fix compile error
2017-03-31 21:14:08 +09:00
Tatsuhiro Tsujikawa
b9b58c781e
nghttpx: Avoid extra TLS handshake calls
2017-03-30 22:23:55 +09:00
Tatsuhiro Tsujikawa
aa1eec4642
nghttpx: Cache client side session inside openssl callback
2017-03-30 21:07:58 +09:00
Tatsuhiro Tsujikawa
0c8d9469ea
nghttpx: Use SSL_CTX_set_early_data_enabled with boringssl
2017-03-27 23:58:49 +09:00
Tatsuhiro Tsujikawa
079e1bdffc
Revert "nghttpx: Use SSL_CTX_set_early_data_enabled with boringssl"
...
This reverts commit b4337d1b54 .
2017-03-27 23:47:24 +09:00
Tatsuhiro Tsujikawa
b4337d1b54
nghttpx: Use SSL_CTX_set_early_data_enabled with boringssl
2017-03-27 23:29:28 +09:00
Tatsuhiro Tsujikawa
e6a11c5e12
Bump up version number to 1.22.0-DEV
2017-03-27 23:13:56 +09:00
Tatsuhiro Tsujikawa
dbe287ff5e
nghttpx: Print version number with -v option
2017-03-27 22:49:53 +09:00
Tatsuhiro Tsujikawa
61dc1a7c62
Update man pages
2017-03-27 22:48:00 +09:00
Tatsuhiro Tsujikawa
dc1e0c0195
Bump up version number to 1.21.0, LT revision to 27:1:13
2017-03-27 22:45:23 +09:00
Tatsuhiro Tsujikawa
041531458b
Merge pull request #858 from nghttp2/nghttpx-ai-addrconfig
...
nghttpx: Retry getaddrinfo without AI_ADDRCONFIG
2017-03-27 22:37:07 +09:00
Tatsuhiro Tsujikawa
1374bb81fd
nghttpx: Enable X25519 with boringssl
2017-03-27 21:18:44 +09:00
Tatsuhiro Tsujikawa
f41ac103d3
nghttpx: Retry getaddrinfo without AI_ADDRCONFIG
2017-03-27 00:20:42 +09:00
Tatsuhiro Tsujikawa
f6301714db
nghttpx: Avoid copy of std::mt19937 which is huge
2017-03-26 21:14:34 +09:00
Tatsuhiro Tsujikawa
7dc39b1ee9
nghttpx: Failing to listen on server socket is fatal error
2017-03-26 11:04:45 +09:00
Tatsuhiro Tsujikawa
696a7ce407
Merge pull request #856 from nghttp2/escape-access-log
...
Escape access log
2017-03-25 23:36:02 +09:00
Tatsuhiro Tsujikawa
d28d788623
Merge pull request #853 from PiotrSikora/ssl_ctx_set_proto_versions
...
src: BoringSSL supports SSL_CTX_set_{min,max}_proto_version.
2017-03-25 19:45:12 +09:00
Tatsuhiro Tsujikawa
99122ee7bb
nghttpx: Find illegal character in path for SPDY CONNECT method
2017-03-25 19:18:35 +09:00
Tatsuhiro Tsujikawa
19ee7ec794
nghttpx: Escape certain characters in access log
...
The certain characters coming from client are now escaped with "\xNN"
where NN is the ascii code of the character in hex notation.
2017-03-25 19:17:24 +09:00
Piotr Sikora
cd9ec0d20f
src: BoringSSL supports SSL_CTX_set_{min,max}_proto_version.
...
Signed-off-by: Piotr Sikora <piotrsikora@google.com >
2017-03-23 19:26:49 -07:00
Tatsuhiro Tsujikawa
e77883e980
nghttpx: Fix typo
2017-03-22 22:53:46 +09:00
Tatsuhiro Tsujikawa
0994c92550
nghttpx: Don't cache session server side if TLS version is 1.3
2017-03-22 21:34:13 +09:00
Tatsuhiro Tsujikawa
465c7208cc
nghttpx: Don't look up session ID if length is 0
2017-03-22 21:33:31 +09:00
Tatsuhiro Tsujikawa
4f9f181f07
Merge pull request #848 from nghttp2/asio-client-ping
...
asio: client: Send PING after 30 seconds idle
2017-03-22 21:20:23 +09:00
Tatsuhiro Tsujikawa
b7e7a4bf26
asio: client: Send PING after 30 seconds idle
2017-03-20 18:37:56 +09:00
Tatsuhiro Tsujikawa
c7df65309b
nghttpx: Ignore further input if connection is going to close
2017-03-19 13:24:12 +09:00
Tatsuhiro Tsujikawa
26900262f3
Revert "nghttpx: Attempt to avoid TCP RST on socket closure on Linux"
...
This reverts commit f69b52b1aa .
2017-03-18 22:43:30 +09:00
Tatsuhiro Tsujikawa
9b5ce36368
nghttpx: Reset write timer on write
2017-03-18 21:33:00 +09:00
Tatsuhiro Tsujikawa
f69b52b1aa
nghttpx: Attempt to avoid TCP RST on socket closure on Linux
2017-03-18 00:59:26 +09:00
Tatsuhiro Tsujikawa
1e1d908c12
nghttpx: Eliminate global std::random_device
2017-03-17 22:25:10 +09:00
Tatsuhiro Tsujikawa
6c69d675da
nghttpx: Should take reference
2017-03-17 22:24:32 +09:00
Tatsuhiro Tsujikawa
feabd6f739
nghttpx: Delete unused delete_bio_method
2017-03-15 23:37:39 +09:00
Tatsuhiro Tsujikawa
1ea590c364
nghttpx: Return new BIO_METHOD object with OpenSSL < 1.1.0
2017-03-15 23:36:38 +09:00
Tatsuhiro Tsujikawa
b21779e685
nghttpx: Use raw pointer for apis
2017-03-15 23:33:07 +09:00
Tatsuhiro Tsujikawa
12a4e7c3a2
src: Use raw pointer for ssl_global_locks
2017-03-15 23:24:28 +09:00
Tatsuhiro Tsujikawa
799a76de74
nghttpx: Lesser usage of DIE
2017-03-15 23:14:07 +09:00
Tatsuhiro Tsujikawa
b1fee8ff63
nghttpx: Use raw pointer for config
2017-03-15 23:13:14 +09:00
Tatsuhiro Tsujikawa
9cc223d419
nghttpx: Use constexpr
2017-03-15 23:12:50 +09:00
Tatsuhiro Tsujikawa
20edd64301
nghttpx: Handle return value of write(2)
2017-03-15 21:28:53 +09:00
Tatsuhiro Tsujikawa
9aee518352
nghttpx: Effectively revert ff64f64e1d
2017-03-15 00:07:57 +09:00
Tatsuhiro Tsujikawa
6ca515ea70
Fix sphinx warning about README markup
2017-03-12 23:46:21 +09:00
Tatsuhiro Tsujikawa
51b933c5f0
src: Use "Modern compatibility" ciphers by default
2017-03-11 23:58:52 +09:00
Tatsuhiro Tsujikawa
3f13d33543
Merge branch 'eliminate-u-macro'
2017-03-11 18:56:23 +09:00
Tatsuhiro Tsujikawa
85a12429ee
Eliminate _U_ macro
...
Instead use (void)VAR for better compiler compatibility.
2017-03-11 18:45:49 +09:00
Tatsuhiro Tsujikawa
3e0e3f5459
src: Fix typo
2017-03-10 23:10:13 +09:00
Tatsuhiro Tsujikawa
801869a5d5
Merge branch 'fix-nghttp2_session_want_write'
2017-03-07 23:33:58 +09:00
Tatsuhiro Tsujikawa
54f4b85beb
Fix nghttp2_session_want_write
...
This commit fixes the bug in nghttp2_session_want_write. Previously,
it may return 0 if there is pending frames after GOAWAY frame is
submitted.
To avoid the situation that nghttp2_session_want_write keeps returning
nonzero after GOAWAY and the number of active streams is 0 (e.g., keep
receiving SETTINGS or PING), nghttp2_session_mem_recv now just
swallows the input data without parsing in this case.
2017-03-07 22:55:39 +09:00
Tatsuhiro Tsujikawa
fa074145a4
Merge pull request #788 from nghttp2/nghttpx-h2-proxy-pattern-match
...
nghttpx: Enable backend pattern matching with http2-proxy
2017-03-06 21:22:34 +09:00
Tatsuhiro Tsujikawa
b2d6550179
src: BoringSSL only requires CRYPTO_library_init
2017-03-05 21:36:52 +09:00
Tatsuhiro Tsujikawa
62dd1f5177
src: OpenSSL 1.1.0 does not require explicit initialization
2017-03-05 19:57:06 +09:00
Tatsuhiro Tsujikawa
dc7c12d474
Document pkg-config path usage
2017-03-02 23:09:56 +09:00
Tatsuhiro Tsujikawa
a6dda5f91c
nghttpx: Log rstatus in hex
2017-03-01 23:21:11 +09:00
Tatsuhiro Tsujikawa
c1f7795dd6
nghttpx: Set close-on-exec flag on listener in worker process
2017-03-01 23:20:36 +09:00
Tatsuhiro Tsujikawa
4989e6e419
nghttpx: Don't call functions which are not async-signal-safe
...
.. after fork but before execv in multithreaded process.
2017-03-01 22:42:30 +09:00
Tatsuhiro Tsujikawa
d4963bcd32
Merge pull request #823 from alagoutte/gcc7
...
nghtt2_gzip: fix this statement may fall through [-Werror=implicit-fa…
2017-02-28 23:21:29 +09:00
Alexis La Goutte
d725255784
nghttp2_gzip: fix this statement may fall through [-Werror=implicit-fallthrough=] found by gcc7
2017-02-27 21:38:55 +01:00
Tatsuhiro Tsujikawa
5f4159a0d7
tests: Fix uninitialized bug
2017-02-27 21:26:12 +09:00
Tatsuhiro Tsujikawa
0a2a5e6604
Bump up version number to 1.21.0-DEV
2017-02-26 19:16:33 +09:00
Tatsuhiro Tsujikawa
acd05f2aa5
Update bash_completion
2017-02-26 18:36:15 +09:00
Tatsuhiro Tsujikawa
bb7718a64a
Update man pages
2017-02-26 18:35:58 +09:00
Tatsuhiro Tsujikawa
e59fc725ab
Bump up version number to 1.20.0, and LT revision to 27:0:13
2017-02-26 18:32:23 +09:00
Tatsuhiro Tsujikawa
4fcd0fc144
Update AUTHORS
2017-02-26 18:29:27 +09:00
Tatsuhiro Tsujikawa
373be22d7e
nghttpx: Simpler
2017-02-23 22:32:04 +09:00
Tatsuhiro Tsujikawa
b647a7c5b7
nghttpx: Simplify code using parse_uint
2017-02-23 22:22:49 +09:00
Tatsuhiro Tsujikawa
46ba9e080d
Update doc
2017-02-22 21:06:45 +09:00
Tatsuhiro Tsujikawa
e1b8317ae8
nghttpx: Strip version number from server header field
2017-02-22 20:56:40 +09:00
Tatsuhiro Tsujikawa
ea67864e08
Remove SPDY build instruction for android
2017-02-21 22:32:14 +09:00
Tatsuhiro Tsujikawa
6b286e0d94
Add SPDY support deprecation warning in README
2017-02-21 22:31:51 +09:00
Tatsuhiro Tsujikawa
d10ea5ea06
Disable spdylay detection by default
2017-02-21 22:31:23 +09:00
Tatsuhiro Tsujikawa
2af57c3cfc
nghttpx: Add --single-worker option
...
Previously, nghttpx will use only one single thread inside the worker
process if --workers=1 (this is default). If --workers=N, N > 1, we
use additional threads for accepting connections, or API request
processing, etc.
With this commit, we use the same processing model for N > 1 even if N
== 1. To restore the original single thread execution mode,
--single-worker option is added. If threading is disabled
--single-worker is always true.
2017-02-21 22:19:34 +09:00
Tatsuhiro Tsujikawa
0c8b1a4f74
nghttpx: Fix bug that send_reply does not participate graceful shutdown
2017-02-21 21:27:57 +09:00
Tatsuhiro Tsujikawa
9d16292fe4
nghttpx: Add --frontend-max-requests option
2017-02-20 23:36:50 +09:00
Tatsuhiro Tsujikawa
e2b9590c0f
nghttpx: Enable stream-write-timeout by default
2017-02-20 22:18:49 +09:00
Tatsuhiro Tsujikawa
24fb640a55
nghttpx: Fix stream wtimer handling
2017-02-20 22:08:39 +09:00
Tatsuhiro Tsujikawa
e6a05cb66d
Update bash_completion
2017-02-20 00:17:00 +09:00
Tatsuhiro Tsujikawa
12f9b09845
Update man pages
2017-02-20 00:16:44 +09:00
Tatsuhiro Tsujikawa
102b98813f
Merge branch 'nghttpx-configrevision-api'
2017-02-20 00:15:33 +09:00
Tatsuhiro Tsujikawa
1f55e5d34d
nghttpx: Document configrevision API
2017-02-19 23:40:06 +09:00
Tatsuhiro Tsujikawa
5618e1bbc9
integration: Add configrevision API tests
2017-02-19 23:40:06 +09:00
Tatsuhiro Tsujikawa
450ffaa6f0
nghttpx: Add configrevision API endpoint
...
This commit adds configuration revision, which is considered opaque
string, and changes after reloading configuration with SIGHUP. This
revision is returned as a response to configrevision API endpoint.
This allows external application to know whether nghttpx has finished
reloading new configuration or not. Note that this revision does not
change on backendconfig API calls.
2017-02-19 23:40:06 +09:00
Tatsuhiro Tsujikawa
dc15832030
nghttpx: Refactor API downstream connection to allow more endpoints
2017-02-19 22:49:53 +09:00
Tatsuhiro Tsujikawa
0797e89a90
Merge pull request #819 from nghttp2/nghttpx-https-redirect
...
nghttpx: Redirect to HTTPS URI with redirect-if-no-tls parameter in backend option
2017-02-19 21:02:32 +09:00
Tatsuhiro Tsujikawa
9f1543f81e
integration: Add https redirect tests
2017-02-18 22:32:45 +09:00
Tatsuhiro Tsujikawa
a7c780a732
nghttpx: Redirect to HTTPS URI with redirect-if-not-tls param
...
This commit removes frontend-tls parameter, and adds
redirect-if-not-tls parameter parameter to --backend option. nghttpx
now responds to the request with 308 status code to redirect the
request to https URI if frontend connection is not TLS encrypted, and
redirect-if-no-tls parameter is used in --backend option. The port
number in Location header field is 443 by default (thus omitted), but
it can be configurable using --redirect-https-port option.
2017-02-18 22:32:27 +09:00
Tatsuhiro Tsujikawa
1bd6893084
integration: Fix deprecation warnings
2017-02-18 22:29:59 +09:00
Tatsuhiro Tsujikawa
ae21130b13
integration: Redirect nghttpx stdout/stderr to test driver's stdout/stderr
2017-02-18 22:29:25 +09:00
Tatsuhiro Tsujikawa
e06ed85747
nghttpx: Fix travis gcc compile error
2017-02-17 00:42:25 +09:00
Tatsuhiro Tsujikawa
83fd72c97e
nghttpx: Use std::chrono::duration_cast
2017-02-17 00:33:26 +09:00
Tatsuhiro Tsujikawa
ace40f298d
nghttpx: Update log time stamp in millisecond interval
2017-02-17 00:18:07 +09:00
Tatsuhiro Tsujikawa
1133cc0bbc
nghttpx: Don't call get_config() repeatedly
2017-02-16 23:41:23 +09:00
Tatsuhiro Tsujikawa
6960039aee
nghttpx: C++ style cast
2017-02-16 23:02:19 +09:00
Tatsuhiro Tsujikawa
bf5eeb831b
nghttpx: Better error message when private key and certificate are missing
2017-02-16 23:00:25 +09:00
Tatsuhiro Tsujikawa
e5b84fad09
nghttpx: Fix bug that old config is used during reloading config
2017-02-16 22:46:22 +09:00
Tatsuhiro Tsujikawa
cfb39171a7
nghttpx: Remove redundant StringRef ctor invocation
2017-02-16 22:45:55 +09:00
Tatsuhiro Tsujikawa
2f6e1ac336
Merge pull request #816 from nghttp2/tls13
...
Add TLSv1.3 support
2017-02-15 23:23:25 +09:00
Tatsuhiro Tsujikawa
9e8d9d658a
src: Enable TLSv1.3 if OpenSSL supports it
...
If OpenSSL supports TLSv1.3, enable it by default for all applications
under src. BoringSSL can work at the moment although it does not
unlock all the features nghttpx offers. OpenSSL's TLSv1.3 support is
still WIP at the time of writing.
2017-02-15 22:34:53 +09:00
Tatsuhiro Tsujikawa
6ecfac6954
nghttpx: Parse default TLS min and max versions from string
2017-02-15 21:28:40 +09:00
Tatsuhiro Tsujikawa
368775c2ed
Merge pull request #814 from alagoutte/pvs
...
nghttp2_session: fix The 'then' statement is equivalent to the subseq…
2017-02-15 21:15:43 +09:00
Tatsuhiro Tsujikawa
1e9a094edd
Merge pull request #811 from nghttp2/nghttp2_option_no_closed_streams
...
Add nghttp2_option_no_closed_streams
2017-02-15 21:11:17 +09:00
Alexis La Goutte
ceb4dcf3b2
nghttp2_session: fix The 'then' statement is equivalent to the subsequent code fragment found by PVS Studio (V523)
2017-02-14 17:40:51 +01:00
Tatsuhiro Tsujikawa
d2ef80fe3a
Update bash_completion
2017-02-14 22:36:11 +09:00
Tatsuhiro Tsujikawa
79ae5aed67
Update man pages
2017-02-14 22:35:54 +09:00
Tatsuhiro Tsujikawa
56e86cd944
src: h2 requires >= TLSv1.2
2017-02-14 22:21:35 +09:00
Tatsuhiro Tsujikawa
19a311ad62
Merge branch 'nghttpx-tls-min-max-proto-version'
2017-02-14 22:17:13 +09:00
Tatsuhiro Tsujikawa
b36e53cccd
nghttpx: Specify TLS protocol by version range
...
This commit deprecates --tls-proto-list option, and adds 2 new
options: --tls-min-proto-version and --tls-max-proto-version to
specify minimum and maximum protocol version respectively. Versions
between the two are enabled. The deprecated --tls-proto-list has
empty default value, and acts like enabling only specific protocol
versions in the range for now.
2017-02-14 00:01:09 +09:00
Tatsuhiro Tsujikawa
f3a5a0a0ec
Add nghttp2_option_no_closed_streams
...
nghttp2_option_no_closed_streams controls whether closed streams are
retained or not. If nonzero is passed to that function's parameter
val, a session does not retain closed streams. It may hurt the shape
of priority tree, but can save memory.
2017-02-13 22:33:29 +09:00
Tatsuhiro Tsujikawa
001d45efad
Merge branch 'nghttpx-graceful-sigusr2'
2017-02-12 23:52:03 +09:00
Tatsuhiro Tsujikawa
56c455bca4
nghttpx: Send SIGQUIT to the original master process
...
Previously, after sending SIGUSR2 to the original master process, and
the new master process gets ready, user has to send SIGQUIT to the
original master process to shut it down gracefully. With this commit,
the new master process sends SIGQUIT to the original master process
when it is ready to serve requests, eliminating for user to send
SIGQUIT manually.
This works nicely with systemd, because now you can replace nghttpx
binary with new one by "systemctl kill -s USR2 --kill-who=main
nghttpx".
2017-02-12 23:29:44 +09:00
Tatsuhiro Tsujikawa
4bf3cb2cc0
Revert "nghttpx: Don't capitalize h1 header fields"
...
This reverts commit f994664934 .
2017-02-12 23:27:38 +09:00
Tatsuhiro Tsujikawa
c78528d54b
nghttpx: Restrict HTTP major and minor in 0 or 1
2017-02-11 18:42:29 +09:00
Tatsuhiro Tsujikawa
f994664934
nghttpx: Don't capitalize h1 header fields
2017-02-11 18:41:52 +09:00
Tatsuhiro Tsujikawa
44e290da66
clang-format
2017-02-11 13:08:08 +09:00
Tatsuhiro Tsujikawa
8aed101585
Merge pull request #805 from pakdel/graceful_stop
...
graceful stop of nghttp2::asio_http2::server::http2
2017-02-11 13:07:10 +09:00
Tatsuhiro Tsujikawa
54ba1bebf2
Update doc
2017-02-10 22:40:57 +09:00
Tatsuhiro Tsujikawa
e44c58282e
Drop privilege of neverbleed daemon first
2017-02-10 17:43:19 +09:00
Tatsuhiro Tsujikawa
c02b1041d9
nghttpx: Use nullptr instead of NULL
2017-02-10 17:14:47 +09:00
Tatsuhiro Tsujikawa
0d20e07436
Show SYSTEMD_CFLAGS in summary
2017-02-10 17:13:34 +09:00
Tatsuhiro Tsujikawa
b7f956c967
Add --with-systemd option to configure
2017-02-10 17:13:16 +09:00
Tatsuhiro Tsujikawa
786f52a81c
Document about systemd support in README
2017-02-10 17:02:52 +09:00
Tatsuhiro Tsujikawa
23209baaf5
clang-format
2017-02-10 17:02:46 +09:00
Tatsuhiro Tsujikawa
9d2503f9c0
Merge pull request #802 from zdzichu/master
...
nghttpx: add systemd support
2017-02-10 16:17:01 +09:00
Amir Pakdel
1c31213aef
More graceful stop of nghttp2::asio_http2::server::http2
...
Explicit io_service::stop() will prevent running streams from
finishing their task. That means if there are already reposnes
that we have called end(std::string) on them and they have not
finished sending back their data, they will be closed with a
NGHTTP2_INTERNAL_ERROR
Instead, we can stop accepting connections and destroy all
io_service::work objects to signals end of work.
2017-02-09 23:34:19 -05:00
Tomasz Torcz
fdb75ba5fe
nghttpx: add systemd support
...
Add systemd's Type=notify support by sending information about
master process PID around forks.
Add some hardening option to service unit.
2017-02-09 18:58:00 +01:00
Tatsuhiro Tsujikawa
8f888b29bd
clang-format
2017-02-09 21:00:47 +09:00
clemahieu
298808f276
Holding more shared_ptrs instead of raw ptrs to make sure called objects don't get deleted.
2017-02-09 21:00:11 +09:00
Tatsuhiro Tsujikawa
a231874e1e
Merge branch 'nghttpx-certs-per-sigalg'
2017-02-08 23:36:23 +09:00
Tatsuhiro Tsujikawa
2101f4ae3f
Merge branch 'mruby-send-1xx'
2017-02-08 22:18:11 +09:00
Tatsuhiro Tsujikawa
4a06f9684f
nghttpx: Fix crash on SIGHUP with multi thread configuration
2017-02-08 22:14:23 +09:00
Tatsuhiro Tsujikawa
5f31c09410
Mention about nghttp2_data_source_read_length_callback
2017-02-08 00:40:47 +09:00
Tatsuhiro Tsujikawa
9a85c5264a
nghttpx: Send 1xx non-final response using mruby script
2017-02-08 00:30:03 +09:00
Tatsuhiro Tsujikawa
fd475e4b2f
Merge branch 'oss-fuzz'
2017-02-07 00:28:24 +09:00
Tatsuhiro Tsujikawa
5dc1d116c9
fuzz: Add README
2017-02-06 23:13:23 +09:00
Tatsuhiro Tsujikawa
c566d3f475
Add fuzzer for oss-fuzz
2017-02-06 22:14:49 +09:00
Tatsuhiro Tsujikawa
68a724cf7b
nghttpx: Select certificate by client's supported signature algo
...
nghttpx supports multiple certificates using --subcert option.
Previously, SNI hostname is used to select certificate. With this
commit, signature algorithm presented by client is also taken into
consideration. nghttpx now accepts certificates which share the same
hostname (CN, SAN), but have different signature algorithm (e.g.,
ECDSA+SHA256, RSA+SHA256).
Currently, this feature requires OpenSSL >= 1.0.2. BoringSSL, and
LibreSSL do not work since they lack required APIs.
2017-02-04 23:37:24 +09:00
Tatsuhiro Tsujikawa
779ec50e73
Merge pull request #795 from clemahieu/close_stream_iterator
...
close_stream erases from streams_ while it's being iterated over.
2017-02-04 11:37:43 +09:00
Tatsuhiro Tsujikawa
aad3e275d1
Merge branch 'clemahieu-acceptor_infinite_loop'
2017-02-04 11:35:43 +09:00
Tatsuhiro Tsujikawa
1649948e78
asio: Add curly brackets to avoid possible well known issue
2017-02-04 11:33:21 +09:00
clemahieu
6d3e010ae7
Infinite loop in acceptor handler.
2017-02-04 11:31:12 +09:00
Tatsuhiro Tsujikawa
7dddac081e
clang-format
2017-02-04 11:29:10 +09:00
Tatsuhiro Tsujikawa
588dd33241
Merge branch 'worenga-github-pr-preload'
2017-02-04 11:28:53 +09:00
clemahieu
f0b6b9508d
close_stream erases from streams_ while it's being iterated over.
...
The destructor will already clean this structure up.
2017-02-03 01:36:18 -06:00
Benedikt Christoph Wolters
14ccb24be5
add support for link rel="preload" for --get-assets
2017-02-01 15:54:15 +01:00
Tatsuhiro Tsujikawa
025ec85144
Merge pull request #790 from nghttp2/nghttpx-backend-frontend-tls-parameter
...
nghttpx: Add frontend-tls parameter to backend to require client TLS
2017-01-31 21:49:51 +09:00
Tatsuhiro Tsujikawa
bd97886d8e
nghttpx: Use stack allocated buffer instead of making std::string
2017-01-29 22:11:33 +09:00
Tatsuhiro Tsujikawa
0b1ddad62b
nghttpx: Add frontend-tls parameter to backend to require client TLS
2017-01-28 22:19:14 +09:00
Tatsuhiro Tsujikawa
540853bde8
nghttpx: Fix typo
2017-01-28 22:18:17 +09:00
Tatsuhiro Tsujikawa
c757f7d848
nghttpx: Recommend POST for backendconfig API request
2017-01-28 17:54:00 +09:00
Tatsuhiro Tsujikawa
052f3a3871
Update doc
2017-01-26 23:40:12 +09:00
Tatsuhiro Tsujikawa
2ae83e871b
Merge branch 'Sp1l-master'
2017-01-26 20:36:57 +09:00
Tatsuhiro Tsujikawa
1cc08c0a51
nghttpx: Show warning if PSK options are used but not supported
2017-01-26 20:34:58 +09:00
Bernard Spil
16be89f9cc
nghttpx: Don't build PSK features with LibreSSL
...
LibreSSL removed PSK
Signed-off-by: Bernard Spil <brnrd@FreeBSD.org >
2017-01-26 20:21:55 +09:00
Tatsuhiro Tsujikawa
3ddc446ba2
nghttpx: Enable backend pattern matching with http2-proxy
2017-01-26 01:04:27 +09:00
Tatsuhiro Tsujikawa
b72c5f104e
h2load: Fix wrong req_stat updates
2017-01-26 00:26:35 +09:00
Tatsuhiro Tsujikawa
7e6eb7e02a
h2load: Explicitly count the number of requests left and inflight
2017-01-26 00:16:12 +09:00
Tatsuhiro Tsujikawa
712b08e8ed
Bump up version number to 1.20.0-DEV
2017-01-25 20:50:21 +09:00
Tatsuhiro Tsujikawa
fbf156d22d
Update man pages
2017-01-25 20:30:16 +09:00
Tatsuhiro Tsujikawa
965a0e87e5
Bump up version number to 1.19.0, LT revision to 26:4:12
2017-01-25 20:23:37 +09:00
Tatsuhiro Tsujikawa
2b55ca1ce6
Update AUTHORS
2017-01-25 20:22:05 +09:00
Tatsuhiro Tsujikawa
534c01896c
Update bash_completion
2017-01-24 23:05:53 +09:00
Tatsuhiro Tsujikawa
c25197ac40
Update man pages
2017-01-24 23:05:39 +09:00
Tatsuhiro Tsujikawa
becae65257
Fix leak
2017-01-24 22:59:01 +09:00
Tatsuhiro Tsujikawa
ba9f2c3ae2
Compile with Android NDK r13b using clang
2017-01-23 00:32:51 +09:00
Tatsuhiro Tsujikawa
0387525b77
Update doc
2017-01-23 00:30:56 +09:00
Tatsuhiro Tsujikawa
5311185333
nghttpx: Define the maximum number of digits in uint64_t
2017-01-22 22:33:52 +09:00
Tatsuhiro Tsujikawa
2fc2a27ac1
nghttpx: Use char instead of char[] if possible
2017-01-22 22:28:14 +09:00
Tatsuhiro Tsujikawa
db938afd66
nghttpx: Increase default backlog
2017-01-20 23:06:24 +09:00
Tatsuhiro Tsujikawa
89ddc47616
nghttpx: More constexpr
2017-01-20 23:04:48 +09:00
Tatsuhiro Tsujikawa
90b7849af1
Merge branch 'nghttpx-optimize-accesslog'
2017-01-20 23:03:52 +09:00
Tatsuhiro Tsujikawa
3176e872b3
nghttpx: Efficient access.log writer
...
Write integer to log buffer directly to improve efficiency. Remove
unused function templates. Use [first, last) style arguments for
copy() function templates.
2017-01-20 22:42:41 +09:00
Tatsuhiro Tsujikawa
16206d5f67
nghttp: Use std::unique_ptr for html_parser
2017-01-18 00:34:39 +09:00
Tatsuhiro Tsujikawa
0f33749790
nghttp: Take into account scheme and port when parsing HTML links
...
Previously, when parsing HTML links, we only take into account
overridden host. But we actually need more variables to consider. In
this commit, we take into account overridden scheme, host, and port to
parse HTML links.
2017-01-18 00:29:51 +09:00
Tatsuhiro Tsujikawa
5e7e4c0cc0
nghttp: config.headers should be inspected rather than req->req_nva
2017-01-17 23:00:37 +09:00
Tatsuhiro Tsujikawa
25503ad763
Merge branch 'worenga-fix-get-assets'
2017-01-17 21:15:40 +09:00
Benedikt Christoph Wolters
8f513fceca
Fix authority for --get-assets if IP adress is used in conjunction with user-defined :authority header
2017-01-17 21:14:36 +09:00
Tatsuhiro Tsujikawa
91af4ed70d
Merge branch 'nghttpx-accesslog-write-early'
2017-01-14 11:39:58 +09:00
Tatsuhiro Tsujikawa
685e926494
nghttpx: Add --accesslog-write-early option
...
--accesslog-write-early option is analogous to HAProxy's logasap. If
used, nghttpx writes access log when response header fields are
received from backend rather than when request transaction finishes.
2017-01-13 22:12:21 +09:00
Tatsuhiro Tsujikawa
a2afd393ed
nghttpx: Remove field from LogSpec which can be got from Downstream
2017-01-11 22:30:12 +09:00
Tatsuhiro Tsujikawa
4e9098bccf
Merge branch 'nghttpx-accesslog-timestamp'
2017-01-11 21:14:12 +09:00
Tatsuhiro Tsujikawa
33aa327ef5
nghttpx: Fix access.log timestamp
...
access.log timestamp is now when request header fields are received,
rather than when access log is written.
2017-01-11 20:47:17 +09:00
Tatsuhiro Tsujikawa
9067ff5eee
nghttp: Use nghttp2::ssl::DEFAULT_CIPHER_LIST
2017-01-09 23:50:38 +09:00
Tatsuhiro Tsujikawa
efeede4192
nghttpx: Fix typo
2017-01-09 23:49:10 +09:00
Tatsuhiro Tsujikawa
6a8749873f
nghttpx: Add detailed TLS connection logging
2017-01-09 23:32:35 +09:00
Tatsuhiro Tsujikawa
b1b8308555
Update doc
2017-01-09 22:22:04 +09:00
Tatsuhiro Tsujikawa
9b574a5a76
nghttpx: Fix typo
2017-01-09 22:19:19 +09:00
Tatsuhiro Tsujikawa
0567f1f038
Add constexpr to StringRef(const CharT *, size_t)
2017-01-09 21:15:53 +09:00
Tatsuhiro Tsujikawa
4be5de1163
src: Move log related functions from util.cc to shrpx_log.cc
2017-01-09 19:34:40 +09:00
Tatsuhiro Tsujikawa
9db1c9467c
src: Add constexpr to long_options
2017-01-09 19:28:00 +09:00
Tatsuhiro Tsujikawa
3444b42d44
src: Add more constexpr
2017-01-09 17:17:48 +09:00
Tatsuhiro Tsujikawa
6595ae26ea
src: Add constexpr to const objects
2017-01-09 17:11:37 +09:00
Tatsuhiro Tsujikawa
41d8a3ac09
Document PROX protocol and PSK in nghttpx howto
2017-01-09 16:33:51 +09:00
Tatsuhiro Tsujikawa
175001a8d9
Add migration section from nghttpx v1.18.x
2017-01-09 16:09:30 +09:00
Tatsuhiro Tsujikawa
7cf9e00283
Update bash_completion
2017-01-09 14:56:03 +09:00
Tatsuhiro Tsujikawa
8a3eb3f066
Update man pages
2017-01-09 14:55:51 +09:00
Tatsuhiro Tsujikawa
7e1a0d204b
h2load: Show default cipher list in -h
2017-01-09 14:47:32 +09:00
Tatsuhiro Tsujikawa
cbca2e35b5
nghttpx: Show default cipher list in -h
2017-01-09 14:43:13 +09:00
Tatsuhiro Tsujikawa
fc9bdf024f
src: Make DEFAULT_CIPHER_LIST constexpr char[]
2017-01-09 14:42:40 +09:00
Tatsuhiro Tsujikawa
3f97e6cd3a
Merge pull request #776 from nghttp2/nghttpx-memchunkbuffer
...
nghttpx: Use Memchunk based read buffer for frontend connection
2017-01-09 13:08:23 +09:00
Tatsuhiro Tsujikawa
4fa150c494
nghttpx: Use Memchunk based read buffer for frontend connection
...
Previously, we have dedicated read buffer for each frontend
connection. With this commit, the buffer spaces are only used when
needed, and pooled if they are not used. This reduces memory usage
for idle client connections.
2017-01-08 23:20:14 +09:00
Tatsuhiro Tsujikawa
e8b2508036
nghttpx: Rename confusing names in HttpDownstreamConnection
2017-01-08 23:09:00 +09:00
Tatsuhiro Tsujikawa
ac399e41ac
nghttpx: Update doc
...
Mention client-ciphers, and no-http2-cipher-black-list options in
psk-secrets and client-psk-secrets options.
2017-01-08 23:04:07 +09:00
Tatsuhiro Tsujikawa
95dd908834
Merge branch 'nghttpx-more-tls-options'
2017-01-08 22:57:21 +09:00
Tatsuhiro Tsujikawa
9c7e54d9b5
nghttpx: Add client-ciphers option
...
Previously, ciphers option sets cipher list for both frontend and
backend TLS connections. With this commit, ciphers option only sets
cipher list for frontend connections. The new client-ciphers option
sets cipher list for backend connection.
2017-01-08 22:40:58 +09:00
Tatsuhiro Tsujikawa
3c03024881
nghttpx: Add client-no-http2-cipher-black-list option
...
This commit adds client-no-http2-cipher-black-list option to disable
enforcement of HTTP/2 cipher black list on backend HTTP/2 connection.
Previously, existing no-http2-cipher-black-list option disables it for
both frontend and backend connections. Now no-http2-cipher-black-list
option only disables it for frontend connection.
2017-01-08 22:33:19 +09:00
Tatsuhiro Tsujikawa
36dfc0a56a
nghttpx: Reorganize client side TLS configuration
2017-01-08 22:25:30 +09:00
Tatsuhiro Tsujikawa
55bf6cdb15
Merge branch 'nghttpx-psk'
2017-01-08 21:10:07 +09:00
Tatsuhiro Tsujikawa
0abc220013
nghttpx: Fix the bug that no-http2-cipher-black-list does not work
...
Because of the redundant check in backend HTTP/2 session,
no-http2-cipher-black-list does not work on backend HTTP/2 connection.
This commit fixes it.
2017-01-08 19:43:24 +09:00
Tatsuhiro Tsujikawa
c28900990a
h2load: Show custom server temp key such as X25519
2017-01-08 17:58:19 +09:00
Tatsuhiro Tsujikawa
5108193d7b
h2load: Fix incorrect return value from spdylay_send_callback
2017-01-08 17:32:35 +09:00
Tatsuhiro Tsujikawa
79a24f5dd9
nghttpx: Add --client-psk-secret option to enable PSK in backend
2017-01-08 00:35:55 +09:00
Tatsuhiro Tsujikawa
83c759572c
nghttpx: Add --psk-secret option to enable PSK in frontend connection
2017-01-08 00:35:54 +09:00
Tatsuhiro Tsujikawa
1a07fb000b
nghttpx: Enable SCT with OpenSSL 1.1.0
2017-01-06 21:29:04 +09:00
Tatsuhiro Tsujikawa
4aab15999d
Merge pull request #769 from alagoutte/pvs
...
Fix issue reporting by PVS Studio
2017-01-04 20:27:55 +09:00
Tatsuhiro Tsujikawa
441982674f
Merge pull request #768 from makovich/master
...
Update README file
2017-01-04 20:24:04 +09:00
Alexis La Goutte
8256c6e070
libevent-client: fix Incorrect format found by PVS Studio (V576)
...
Consider checking the fourth actual argument of the 'fprintf' function. The SIGNED integer type argument is expected.
2017-01-03 22:03:53 +01:00
Alexis La Goutte
ae87a44b94
nghttp2_hd: fix It is odd that the body of 'hd_get_num_table_entries' function is fully equivalent to the body of 'get_max_index' function found by PVS Studio (V524)
2017-01-03 22:03:53 +01:00
Alexis La Goutte
87d1692e27
nghttp2_submit: fix Parameter 'flags' is always rewritten in function body before being used found by PVS Studio (V763)
2017-01-03 22:03:53 +01:00
makovich
1d2f008656
Update README file
2017-01-03 23:00:32 +03:00
Tatsuhiro Tsujikawa
b064d8a9ff
Merge branch 'nghttpx-fronend-proxyproto'
2017-01-03 17:28:20 +09:00
Tatsuhiro Tsujikawa
528af200b6
Merge branch 'nghttpx-fix-libev-assertion-error'
2017-01-03 17:26:05 +09:00
Tatsuhiro Tsujikawa
c6827a7dac
nghttpx: Fix assertion error in libev ev_io_start
2017-01-03 16:43:49 +09:00
Tatsuhiro Tsujikawa
55ecb082ee
nghttpx: Handle c-ares success without result
2017-01-03 14:35:05 +09:00
Tatsuhiro Tsujikawa
5f2cf461e6
integration: Avoid nghttpx accept-proxy-protocol option
2017-01-03 14:14:37 +09:00
Tatsuhiro Tsujikawa
b313386988
nghttpx: Add proxyproto to frontend option to accept PROXY protocol
...
Previously, global accept-proxy-protocol option enables PROXY protocol
support for all frontend listeners, but this was inflexible. To fix
this issue, accept-proxy-protocol option is now deprecated, and
instead proxyproto parameter in frontend option enables PROXY protocol
support per frontend.
2017-01-03 12:47:03 +09:00
Tatsuhiro Tsujikawa
3933280d29
src: Fix assertion error with boringssl
...
boringssl says:
/* It is an error to clear any bits that have already been set. (We can't try
* to get a second close_notify or send two.) */
assert((SSL_get_shutdown(ssl) & mode) == SSL_get_shutdown(ssl));
2017-01-02 11:48:38 +09:00
Tatsuhiro Tsujikawa
2b6073900f
Merge branch 'nghttpx-dns-timeout-fix'
2016-12-30 11:39:28 +09:00
Tatsuhiro Tsujikawa
d1ba43a69f
nghttpx: Fix bug that DNS timeout was erroneously disabled
2016-12-30 11:09:02 +09:00
Tatsuhiro Tsujikawa
a0779edec4
nghttpx: Fix bug that DNS timeout was ignored
2016-12-30 11:08:26 +09:00
Tatsuhiro Tsujikawa
d70fefe72f
Bump up version number to 1.19.0-DEV
2016-12-27 20:55:00 +09:00
Tatsuhiro Tsujikawa
b52db072f1
Update bash_completion
2016-12-27 20:43:30 +09:00
Tatsuhiro Tsujikawa
ab0b98db61
Update man pages
2016-12-27 20:42:46 +09:00
Tatsuhiro Tsujikawa
4245d98653
Bump up version number to 1.18.0, LT revision to 26:3:12
2016-12-27 20:35:31 +09:00
Tatsuhiro Tsujikawa
93b4866f5b
Merge branch 'nghttpx-dont-write-after-failure'
2016-12-26 00:49:45 +09:00
Tatsuhiro Tsujikawa
25df164219
nghttpx: Don't write again after failure
...
Plain write(2) is OK, but SSL_write requires same arguments on retry.
It would be better to avoid calling them again.
2016-12-26 00:35:38 +09:00
Tatsuhiro Tsujikawa
ba03c082e9
Merge branch 'nghttpx-retry-h1-backend-request'
2016-12-25 23:05:29 +09:00
Tatsuhiro Tsujikawa
bcfa333322
nghttpx: Refactor h1 backend retry code
2016-12-25 22:19:51 +09:00
Tatsuhiro Tsujikawa
c4aeadd57d
nghttpx: Retry h1 backend request if first write fails
2016-12-25 22:19:51 +09:00
Tatsuhiro Tsujikawa
e6b4454e48
Merge branch 'nghttpx-better-early-final-response-handling'
2016-12-24 23:02:52 +09:00
Tatsuhiro Tsujikawa
3226d21609
Merge pull request #755 from nghttp2/nghttpx-h1-frontend-keep-alive-timeout
...
nghttpx: Add frontend-keep-alive-timeout option
2016-12-24 23:01:17 +09:00
Tatsuhiro Tsujikawa
3d20c2dce6
nghttpx: Feed read event rather than calling on_read
...
on_read may fail, but we failed to check its return value most of the
places. This is because failure means deletion of ClientHandler, but
because of architecture, we cannot delete it. Feeding read event is
better since we can move call on_read from libev callback. We can
delete ClientHandler form there.
2016-12-24 22:57:59 +09:00
Tatsuhiro Tsujikawa
cd83d70e7b
nghttpx: Don't reset stream if we have already received response
2016-12-24 22:54:22 +09:00
Tatsuhiro Tsujikawa
a0ce5ea9ab
nghttpx: Keep reading after backend write failed
...
Because of bidirectional nature of TCP, we may fail write(2), but have
still pending read in TCP buffer, which may contain response body. To
forward them, we should keep reading until get EOF from backend.
To avoid stalling HTTP/1 upload when request buffer is full, and we
have received complete response from backend, drop connection in that
case.
2016-12-24 22:50:02 +09:00
Tatsuhiro Tsujikawa
3c600c103f
nghttpx: Add frontend-keep-alive-timeout option
2016-12-23 11:01:29 +09:00
Tatsuhiro Tsujikawa
841ac75c3e
nghttpx: Clarify that backend-keep-alive-timeout applies to h1 only
2016-12-23 10:49:39 +09:00
Tatsuhiro Tsujikawa
80a96817aa
Add c-ares to android build guide
2016-12-21 23:47:34 +09:00
Tatsuhiro Tsujikawa
ecc05e0a1a
Add git submodule to required build step
2016-12-21 23:34:28 +09:00
Tatsuhiro Tsujikawa
359730af54
Fix regression in ff64f64e1d
2016-12-21 23:19:10 +09:00
Tatsuhiro Tsujikawa
e9cb19c80e
Merge branch 'nghttpx-new-errorlog-format'
2016-12-20 23:14:18 +09:00
Tatsuhiro Tsujikawa
049e064e28
nghttpx: New error log format
...
To debug multi threaded configuration easier, we added current PID and
thread ID to error log. Previously, we didn't add date and time if
log level is NOTICE. In this change, we always write date and time
regardless of log level.
2016-12-20 23:13:19 +09:00
Tatsuhiro Tsujikawa
0463928a1e
nghttpx: Fix uninitialized errors found by coverity scan
2016-12-18 22:16:52 +09:00
Tatsuhiro Tsujikawa
02d34c8c4c
nghttpx: Fix dead code found by coverity scan
2016-12-18 22:14:26 +09:00
Tatsuhiro Tsujikawa
46acf32c41
Merge pull request #748 from nghttp2/pkg-config-libxml2
...
Use pkg-config to detect libxml2
2016-12-18 00:46:22 +09:00
Tatsuhiro Tsujikawa
cab0a76795
Use pkg-config to detect libxml2
2016-12-18 00:20:30 +09:00
Tatsuhiro Tsujikawa
0c76cebbfc
Merge branch 'travis-make-distcheck'
2016-12-17 22:54:12 +09:00
Tatsuhiro Tsujikawa
5029b85b25
Add -f option to rm rst files not to pause travis build
2016-12-17 22:27:14 +09:00
Tatsuhiro Tsujikawa
0b71d9b828
travis: Do make distcheck for autotools build
2016-12-17 22:18:43 +09:00
Tatsuhiro Tsujikawa
464d7c4ec6
Update doc
2016-12-16 22:09:00 +09:00
Tatsuhiro Tsujikawa
ed21b631ae
Update doc
2016-12-16 21:31:26 +09:00
Tatsuhiro Tsujikawa
950e2d9954
Mention dynamic hostname lookup in nghttpx how-to
2016-12-16 21:30:13 +09:00
Tatsuhiro Tsujikawa
71c054a789
Merge pull request #745 from nghttp2/remove-tiny-nghttpd
...
examples: Delete tiny-nghttpd
2016-12-15 00:18:33 +09:00
Tatsuhiro Tsujikawa
d2f456e5b1
Remove tiny-nghttpd from cmake build system
2016-12-14 23:56:02 +09:00
Tatsuhiro Tsujikawa
30a44b26d3
examples: Delete tiny-nghttpd
...
nghttpd does the better job in this area.
2016-12-14 23:26:52 +09:00
Tatsuhiro Tsujikawa
7dff758f8b
Merge pull request #743 from nghttp2/fix-fetch-ocsp-response-with-openssl-1-1-0
...
Fix bug that fetch-ocsp-response does not work with OpenSSL 1.1.0
2016-12-12 22:59:40 +09:00
Tatsuhiro Tsujikawa
bd3ececdd8
Fix bug that fetch-ocsp-response does not work with OpenSSL 1.1.0
...
The syntax of openssl ocsp -header option has been changed in OpenSSL
1.1.0. And it now does not require -header option anymore. It looks
like that it is workaround for 1.0.x versions.
2016-12-12 21:22:48 +09:00
Tatsuhiro Tsujikawa
77416b0ac2
Update man pages
2016-12-11 17:01:16 +09:00
Tatsuhiro Tsujikawa
fce9efd341
Mention that non-numeric host is allowed in API call if "dns" is used
2016-12-11 17:00:33 +09:00
Tatsuhiro Tsujikawa
928fda1d70
Update bash_completion
2016-12-11 16:52:14 +09:00
Tatsuhiro Tsujikawa
2d9d654507
Update man pages
2016-12-11 16:52:03 +09:00
Tatsuhiro Tsujikawa
7398e57174
Merge pull request #740 from nghttp2/backend-dns
...
nghttpx: Dynamic DNS
2016-12-11 16:48:28 +09:00
Tatsuhiro Tsujikawa
503ec82f4d
Merge pull request #737 from alagoutte/win
...
Add Windows CI via AppVeyor
2016-12-11 16:38:46 +09:00
Tatsuhiro Tsujikawa
22bd9fb530
nghttpx: Set DNS cache expire date for error and ok statuses only
2016-12-11 11:49:24 +09:00
Tatsuhiro Tsujikawa
e007b6b031
Add DNS integration tests
2016-12-11 11:32:38 +09:00
Tatsuhiro Tsujikawa
c487cd888f
nghttpx: Periodically remove expired DNS cache entries
2016-12-11 10:42:54 +09:00
Tatsuhiro Tsujikawa
fd403a85c8
nghttpx: Just return DNS_STATUS_ERROR
...
At the moment, we use both resolvers, and if either one is not
DNS_STATUS_IDLE, the other one is also not DNS_STATUS_IDLE. This may
change if we are going to configure DNS so that either A or AAAA
lookup is done. In that case, it is better to just return
DNS_STATUS_ERROR in the diff. This is because the calling side does
not expect DNS_STATUS_IDLE in that case.
2016-12-11 10:39:19 +09:00
Tatsuhiro Tsujikawa
a06a8c36a4
nghttpx: Add --dns-lookup-timeout and --dns-max-try options
2016-12-11 00:50:16 +09:00
Tatsuhiro Tsujikawa
0967ee9cb9
nghttpx: Better logging for DNS resolver
2016-12-10 23:10:18 +09:00
Tatsuhiro Tsujikawa
d66d34f9b9
Add libc-ares detection to cmake
2016-12-10 22:40:18 +09:00
Tatsuhiro Tsujikawa
264a98d106
nghttpx: Call c-ares initialization/cleanup functions
2016-12-10 21:41:03 +09:00
Tatsuhiro Tsujikawa
7c11d2d9bb
Require c-ares >= 1.7.5
2016-12-10 21:40:50 +09:00
Tatsuhiro Tsujikawa
b58d7b406f
Try c-ares 1.7.5 because it is the latest version travis offers
2016-12-10 21:32:37 +09:00
Tatsuhiro Tsujikawa
5ed9e4c83b
Document that c-ares is a required library for nghttpx
2016-12-10 21:09:51 +09:00
Tatsuhiro Tsujikawa
e7da2a669e
.travis.yml: Add libc-ares-dev
2016-12-10 21:09:51 +09:00
Tatsuhiro Tsujikawa
d66377d4b6
nghttpx: Add dns-cache-timeout option
...
This option controls how long cached DNS entries remain valid.
2016-12-10 21:09:51 +09:00
Tatsuhiro Tsujikawa
77a324fa46
nghttpx: Backend API call allows non-numeric host with dns parameter
2016-12-10 21:09:50 +09:00
Tatsuhiro Tsujikawa
38b5cad4e3
nghttpx: Lookup backend host name dynamically
...
We have added "dns" parameter to backend option. If specified, name
lookup is done dynamically. If not, name lookup is done at start up,
or configuration reloading. nghttpx caches DNS result including error
case in 30 seconds in this commit. Later commit makes this
configurable.
DNS resolution is done asynchronously using c-ares library.
2016-12-10 21:09:50 +09:00
Alexis La Goutte
29014643a9
Add Windows CI via AppVeyor
2016-12-08 21:17:02 +01:00
Tatsuhiro Tsujikawa
0872f6babe
Merge pull request #736 from nghttp2/accept-204-content-length-0
...
Accept content-length: 0 in 204 response
2016-12-04 13:27:30 +09:00
Tatsuhiro Tsujikawa
b6a9cf9ffa
nghttpx: Accept and ignore content-length: 0 in 204 response for now
2016-12-03 14:57:48 +09:00
Tatsuhiro Tsujikawa
5645cad577
Accept and ignore content-length: 0 in 204 response for now
2016-12-03 14:57:16 +09:00
Tatsuhiro Tsujikawa
85ba33c08f
nghttpx: Wait for child process to exit
...
Normally, we don't have wait for child process to exit, since init can
take care of them. But in containerized environment, pid 0 init might
not be available, and defunct processes can be piled up. This commit
ensures that OCSP and neverbleed processes are waited for before
worker process exits.
2016-11-30 22:59:02 +09:00
Tatsuhiro Tsujikawa
ff64f64e1d
nghttpx: Faster HTTP/1 frontend
2016-11-29 20:42:27 +09:00
Tatsuhiro Tsujikawa
bdd3425028
Bump up version number to 1.18.0-DEV
2016-11-27 14:09:30 +09:00
Tatsuhiro Tsujikawa
70e02cddd3
Update man pages
2016-11-27 10:56:36 +09:00
Tatsuhiro Tsujikawa
d1c0a17cc2
Bump up version number to 1.17.0, LT revision to 26:2:12
2016-11-27 10:53:28 +09:00
Tatsuhiro Tsujikawa
35c5cbbc21
Update AUTHORS
2016-11-27 10:51:03 +09:00
Tatsuhiro Tsujikawa
2ff31bdd2b
nghttpx: Remove redundant check
2016-11-26 22:34:24 +09:00
Tatsuhiro Tsujikawa
2fa3d34af1
nghttpx: Use Connection::again_rt() in MemcachedConnection
2016-11-26 19:45:23 +09:00
Tatsuhiro Tsujikawa
fa3452ec68
nghttpx: Use Connection::again_rt() in LiveCheck
2016-11-26 19:45:23 +09:00
Tatsuhiro Tsujikawa
7451f2f212
nghttpx: Fix frequent crash with --backend-http-proxy-uri
2016-11-26 19:45:23 +09:00
Tatsuhiro Tsujikawa
e9ab75a386
nghttpx: Robust backend read timeout
2016-11-26 19:45:23 +09:00
Tatsuhiro Tsujikawa
d83949bc88
asio: server: Call on_close callback on connection close
2016-11-21 22:43:23 +09:00
Tatsuhiro Tsujikawa
50f42a80c9
nghttpx: Fix bug that mishandles response header from h1 backend
2016-11-18 22:33:29 +09:00
Tatsuhiro Tsujikawa
00bd76fc3d
Update man pages
2016-11-13 22:26:56 +09:00
Tatsuhiro Tsujikawa
93ea6b581e
Update LT revision due to v1.16.1 release
2016-11-13 22:24:31 +09:00
Tatsuhiro Tsujikawa
8e52a5c7f3
Add test for the bug that shift goes beyond 32 bits in decode_length
2016-11-12 23:05:16 +09:00
Tatsuhiro Tsujikawa
0aa35e574a
Merge branch 'ruds-master'
2016-11-12 22:55:28 +09:00
Matt Rudary
5a81f2441f
Prevent undefined behavior in decode_length
2016-11-11 11:12:43 -05:00
Tatsuhiro Tsujikawa
2b75aff32e
nghttpx: Fix bug that zero-length POST is not forwarded
2016-11-11 00:48:32 +09:00
Tatsuhiro Tsujikawa
f4474d57ec
nghttpx: Fix compile error with gcc
2016-11-07 23:11:52 +09:00
Tatsuhiro Tsujikawa
d0310c8aee
integration: Add te header field test
2016-11-07 22:56:36 +09:00
Tatsuhiro Tsujikawa
8471c9e92e
nghttpx: Parse te header field a bit more properly
2016-11-07 22:47:48 +09:00
Tatsuhiro Tsujikawa
f5a4c9d971
nghttpx: Don't copy non-final nva since they are backed by Downstream
2016-11-04 22:06:01 +09:00
Tatsuhiro Tsujikawa
a0dd8918eb
nghttpx: Don't mutate *_key_prev_ in add_header
2016-11-04 22:04:42 +09:00
Tatsuhiro Tsujikawa
baa9b1cac0
nghttpx: Remove optional reason-phrase from SPDY :status
2016-11-04 21:16:45 +09:00
Tatsuhiro Tsujikawa
38443d2195
nghttpx: Small optimization
2016-11-04 21:13:22 +09:00
Tatsuhiro Tsujikawa
208d71561a
src: Add missing mandatory SP after status code
2016-11-04 02:19:37 +09:00
Tatsuhiro Tsujikawa
25fbc7b435
nghttpx: Reset flags as well
2016-11-04 02:00:50 +09:00
Tatsuhiro Tsujikawa
6bd95d885d
Merge pull request #723 from nghttp2/strict-http-framing
...
Strict http framing
2016-11-03 23:30:38 +09:00
Tatsuhiro Tsujikawa
c171097dea
Document that libnghttp2's behaviour about Content-Length
2016-11-03 23:09:30 +09:00
Tatsuhiro Tsujikawa
6bcdb178a5
nghttpx: Header key and value must be string in mruby script
2016-11-03 22:58:45 +09:00
Tatsuhiro Tsujikawa
5e10cc4cad
nghttpx: Use gc save/restore around downcase method
2016-11-03 22:47:52 +09:00
Tatsuhiro Tsujikawa
95e6c875f0
nghttpx: Use mrb_ary_ref instead of mrb_ary_entry
2016-11-03 22:44:42 +09:00
Tatsuhiro Tsujikawa
6eb2829ee8
nghttpx: Strip content-length with 204 or 200 to CONNECT in mruby
2016-11-03 22:25:15 +09:00
Tatsuhiro Tsujikawa
6ad9ddcdea
Disallow content-length in 1xx, 204, or 200 to a CONNECT request
2016-11-03 17:26:32 +09:00
Tatsuhiro Tsujikawa
e082b7be72
nghttpx: Strict handling for Content-Length or Transfer-Encoding in h1
...
We now treat Content-Length or Transfer-Encoding as error if they come
with 204 or 1xx status code, or 200 to a CONNECT request in HTTP/1
response.
2016-11-03 17:00:05 +09:00
Tatsuhiro Tsujikawa
da01d8dedb
nghttpx: Delete outdated comment
2016-11-03 16:48:24 +09:00
Tatsuhiro Tsujikawa
ca6f6511f2
Avoid memcpy against NULL src
2016-11-01 23:54:21 +09:00
Tatsuhiro Tsujikawa
ee8440408c
Merge branch 'remoe-add_cmake_win_version'
2016-10-28 22:24:51 +09:00
Remo E
9cd695a1db
MSVC version resource support
2016-10-28 22:24:22 +09:00
Tatsuhiro Tsujikawa
4b45906f46
Merge branch 'dalf-boringssl'
2016-10-28 00:06:06 +09:00
dalf
d448eb54f9
Fix compilation with BoringSSL
2016-10-27 10:00:52 +00:00
Tatsuhiro Tsujikawa
65739fe754
Bump up version number to 1.17.0-DEV
2016-10-24 21:21:24 +09:00
Tatsuhiro Tsujikawa
0344c962f8
Add missing nghttp2_set_debug_vprintf_callback.rst to APIDOCS
2016-10-24 21:14:15 +09:00
Tatsuhiro Tsujikawa
46d1e6bb55
nghttpx: Increase block size of connection wide allocator to 512
2016-10-24 21:06:37 +09:00
Tatsuhiro Tsujikawa
04606b9339
Update man pages
2016-10-24 20:40:51 +09:00
Tatsuhiro Tsujikawa
7bb083e69e
Bump up version number to 1.16.0, LT revision to 26:0:12
2016-10-24 20:37:56 +09:00
Tatsuhiro Tsujikawa
3a831fa95c
nghttpx: Fix file descriptor leak in read_tls_sct_from_dir
2016-10-24 20:30:30 +09:00
Tatsuhiro Tsujikawa
5b9cacc2d7
nghttpx: Discard iaddrs early
2016-10-23 19:55:58 +09:00
Tatsuhiro Tsujikawa
10a84f3e3d
nghttpx: Rename errbuf for neverbleed as nb_errbuf for clarification
2016-10-23 19:26:22 +09:00
Tatsuhiro Tsujikawa
c42715ed6a
nghttpx: Fix compile error with --disable-threads
2016-10-23 19:26:22 +09:00
Tatsuhiro Tsujikawa
177d51ddab
nghttpx: Use thread_local if it is available
2016-10-23 19:26:22 +09:00
Tatsuhiro Tsujikawa
6c882e1ece
asio: Avoid repeated call of io_service::post
2016-10-20 22:12:31 +09:00
Tatsuhiro Tsujikawa
f09c5c4bf9
xsi_strerror: Use stddef.h so that we can use size_t
2016-10-19 23:50:28 +09:00
Tatsuhiro Tsujikawa
08a9a2eca9
asio: Fix bug when end() is called outside nghttp2 callback
2016-10-19 23:17:43 +09:00
Tatsuhiro Tsujikawa
19f1785cde
nghttpx: Avoid extra allocation on look up host key
2016-10-18 22:19:53 +09:00
Tatsuhiro Tsujikawa
109de15c1f
doc: Mention --no-location-rewrite in "Rewriting location header field" section
2016-10-17 22:02:49 +09:00
Tatsuhiro Tsujikawa
8b64e7b4e1
src: Add XSI-compliant version strerror_r
2016-10-16 22:47:56 +09:00
Tatsuhiro Tsujikawa
a5d66e71d0
Update http-parser to feae95a3a69f111bc1897b9048d9acbc290992f9
2016-10-16 17:57:45 +09:00
Tatsuhiro Tsujikawa
3de2654223
src: Add noexcept to move constructor and assignment operator
2016-10-15 18:51:22 +09:00
Tatsuhiro Tsujikawa
d49bd50908
Apply clang-format-diff only to lib, src, examples and tests
2016-10-15 18:40:45 +09:00
Tatsuhiro Tsujikawa
4130c68db1
Merge branch 'clang-format-3.9'
2016-10-15 18:39:15 +09:00
Tatsuhiro Tsujikawa
ad3dac81a2
Update doc
2016-10-15 18:37:03 +09:00
Tatsuhiro Tsujikawa
0cf6848646
clang-format-3.9
2016-10-15 18:36:04 +09:00
Tatsuhiro Tsujikawa
e9d562f987
Update .clang-format for clang-format-3.9
2016-10-15 18:25:36 +09:00
Tatsuhiro Tsujikawa
bc0f501dd3
Replace final with fin to make clang-format-3.9 happy
2016-10-15 18:25:13 +09:00
Tatsuhiro Tsujikawa
a591001e7b
Update doc
2016-10-15 18:18:52 +09:00
Tatsuhiro Tsujikawa
eaa9229d72
Update doc
2016-10-15 18:16:15 +09:00
Tatsuhiro Tsujikawa
1d5cde1c6b
Add missing nghttp2_debug.h
2016-10-14 23:13:42 +09:00
Tatsuhiro Tsujikawa
de03c41111
Merge branch 'Andersbakken-set_nghttp2_debug_callback'
2016-10-14 23:03:00 +09:00
Tatsuhiro Tsujikawa
19340da8d4
Re-format debug text output
2016-10-14 22:59:05 +09:00
Tatsuhiro Tsujikawa
5e99531b4d
clang-format
2016-10-14 22:59:05 +09:00
Tatsuhiro Tsujikawa
bef3d47c16
Rename functions and nghttp2_debug.h to move debug macro there
2016-10-14 22:59:05 +09:00
Tatsuhiro Tsujikawa
b8f7b474b4
Fix autotools build
2016-10-14 22:04:02 +09:00
Tatsuhiro Tsujikawa
1fb291d0e1
Merge branch 'set_nghttp2_debug_callback' of https://github.com/Andersbakken/nghttp2 into Andersbakken-set_nghttp2_debug_callback
2016-10-14 21:58:13 +09:00
Anders Bakken
bc3dc6b765
Add set_nghttp2_debug_callback to take advantage of DEBUGF statements in
...
when building DEBUGBUILD.
2016-10-13 13:24:26 -07:00
Tatsuhiro Tsujikawa
ee7c36c022
Merge pull request #707 from Andersbakken/current
...
Make it possible to include nghttp2/CMakeLists.txt in another project
2016-10-13 21:16:14 +09:00
Anders Bakken
857791dbb9
Make it possible to include nghttp2/CMakeLists.txt in another project
...
using add_subdirectory.
CMAKE_SOURCE_DIR/CMAKE_BINARY_DIR points to the top level
CMakeLists.txt. This isn't necessarily nghttp2/CMakeLists.txt.
2016-10-12 08:23:20 -07:00
Tatsuhiro Tsujikawa
3c3267ea7d
Update bash_completion
2016-10-11 23:03:11 +09:00
Tatsuhiro Tsujikawa
d654664fb2
Update man pages
2016-10-11 23:02:55 +09:00
Tatsuhiro Tsujikawa
1a37044d3c
nghttpx: Use pre-allocated buffer for timestamp string
2016-10-11 22:32:26 +09:00
Tatsuhiro Tsujikawa
00a8c378d4
nghttpx: Add --backend-connect-timeout option
2016-10-10 22:50:41 +09:00
Tatsuhiro Tsujikawa
7549341081
Fix typo
2016-10-10 15:35:12 +09:00
Tatsuhiro Tsujikawa
5db8473f12
Fix build error with OpenSSL < 1.0.2 (again)
2016-10-09 19:34:32 +09:00
Tatsuhiro Tsujikawa
00b89f10bd
Fix build error with OpenSSL < 1.0.2
2016-10-09 18:54:18 +09:00
Tatsuhiro Tsujikawa
281df33f40
Update bash_completion
2016-10-09 18:45:17 +09:00
Tatsuhiro Tsujikawa
e6ae681f07
Update man pages
2016-10-09 18:44:33 +09:00
Tatsuhiro Tsujikawa
7e681dc98f
help2rst.py: Fix * escape
2016-10-09 18:43:36 +09:00
Tatsuhiro Tsujikawa
412c8f9e67
nghttpx: Add TLS signed_certificate_timestamp extension support
2016-10-09 18:43:36 +09:00
Tatsuhiro Tsujikawa
2795da840c
nghttpx: Apply timeout for incoming header block
2016-10-09 17:18:43 +09:00
Tatsuhiro Tsujikawa
175c7886ea
nghttpx: Update doc
2016-10-09 17:18:29 +09:00
Tatsuhiro Tsujikawa
4a4b2cf538
nghttpx: Embed Process into OCSPUpdateContext
2016-10-08 15:26:13 +09:00
Tatsuhiro Tsujikawa
2c2188c09d
nghttpx: Refactor ocsp command execution
...
We have now generic read-only command execution in shrpx_exec.{h,cc}.
2016-10-08 15:22:11 +09:00
Tatsuhiro Tsujikawa
1f07c24a2e
Update bash_completion
2016-10-08 11:46:16 +09:00
Tatsuhiro Tsujikawa
e038625881
Update man pages
2016-10-08 11:46:03 +09:00
Tatsuhiro Tsujikawa
cdb1d6b462
nghttpx: Add P-384 and P-521 to the default of --ecdh-curves option
2016-10-08 11:44:03 +09:00
Tatsuhiro Tsujikawa
1b4ccd0d51
nghttpx: Don't call get_config() repeatedly
2016-10-08 11:37:18 +09:00
Tatsuhiro Tsujikawa
8babaac8c3
nghttpx: Add --ecdh-curves option to specify list of named curves
...
This option requires OpenSSL >= 1.0.2. With OpenSSL 1.0.2, the
default value is "P-256". With OpenSSL 1.1.0 or later, the default
value is "X25519:P-256".
2016-10-08 10:50:56 +09:00
Tatsuhiro Tsujikawa
d1624d6929
h2load: Format default value of header table size with unit
2016-10-06 23:16:30 +09:00
Tatsuhiro Tsujikawa
e4472b5aec
h2load: Add --header-table-size and --encoder-header-table-size options
2016-10-06 22:26:31 +09:00
Tatsuhiro Tsujikawa
9439ba75d3
nghttpx: Fix heap-use-after-free when executing new binary
2016-10-04 00:32:02 +09:00
Tatsuhiro Tsujikawa
9254c563ca
Fix compile error with gcc
2016-10-03 22:52:14 +09:00
Tatsuhiro Tsujikawa
35594e09df
Merge branch 'nghttpx-more-block-allocator'
2016-10-03 22:12:28 +09:00
Tatsuhiro Tsujikawa
96ff3be5e6
nghttpx: Use allocator of new config since this may happen multiple times
2016-10-03 22:09:46 +09:00
Tatsuhiro Tsujikawa
3d5d76ba74
nghttpx: Update doc
2016-10-03 22:09:46 +09:00
Tatsuhiro Tsujikawa
8c1e155f44
nghttpx: Make it simple to calculate length
2016-10-03 22:09:46 +09:00
Tatsuhiro Tsujikawa
dba0d2791c
nghttpx: Use emplace_back instead of push_back
2016-10-03 22:09:46 +09:00
Tatsuhiro Tsujikawa
f310e82fc8
nghttpx: Update doc
2016-10-03 22:09:46 +09:00
Tatsuhiro Tsujikawa
1240e55bb6
nghttpx: Use const ref
2016-10-03 22:09:45 +09:00
Tatsuhiro Tsujikawa
75039c573c
base64: Assert that input is multiple of 4
2016-10-03 22:09:45 +09:00
Tatsuhiro Tsujikawa
4b5179a544
nghttpx: Fix bug in util::make_hostport
2016-10-03 22:09:45 +09:00
Tatsuhiro Tsujikawa
8efccddcf4
nghttpx: Use StringRef for HttpProxy
2016-10-03 22:09:45 +09:00
Tatsuhiro Tsujikawa
97843e3874
nghttpx: Use StringRef for tls_proto_list
2016-10-03 22:09:45 +09:00
Tatsuhiro Tsujikawa
5dd2704051
nghttpx: Use StringRef for tls.npn_list
2016-10-03 22:09:45 +09:00
Tatsuhiro Tsujikawa
de7b7fd440
nghttpx: Use StringRef for tls.subcerts
2016-10-03 22:09:45 +09:00
Tatsuhiro Tsujikawa
1037d3ad26
nghttpx: Use StringRef for tls.ticket.files
2016-10-03 22:09:45 +09:00
Tatsuhiro Tsujikawa
c4368a9416
nghttpx: Use StringRef for AltSvc fields
2016-10-03 22:09:45 +09:00
Tatsuhiro Tsujikawa
fdc1eb526b
nghttpx: Use HeaderRefs for add_request_headers and add_response_headers
2016-10-03 22:09:45 +09:00
Tatsuhiro Tsujikawa
99a91e3172
nghttpx: Add BlockAllocator to Config object
2016-10-03 22:09:45 +09:00
Tatsuhiro Tsujikawa
272cfa320e
nghttpx: Use BlockAllocator per DownstreamConfig
2016-10-02 22:28:43 +09:00
Tatsuhiro Tsujikawa
f5285d1f5a
nghttpx: Add BlockAllocator to SharedDownstreamAddr
2016-10-02 22:28:43 +09:00
Tatsuhiro Tsujikawa
ede6104900
nghttpx: Increase block size for connection wide BlockAllocator
2016-10-02 22:28:43 +09:00
Tatsuhiro Tsujikawa
5aec60fbeb
nghtpx: Add BlockAllocator version of base64
2016-10-02 22:28:43 +09:00
Tatsuhiro Tsujikawa
e1a865c406
nghttpx: Add BlockAllocator version of util::formax_hex
2016-10-02 22:28:42 +09:00
Tatsuhiro Tsujikawa
5e03b6a0db
nghttpx: Use BlockAllocator for util::quote_string
2016-10-02 00:07:26 +09:00
Tatsuhiro Tsujikawa
b85924bf70
nghttpx: Use BlockAllocator to encode alt-svc token
2016-10-02 00:00:46 +09:00
Tatsuhiro Tsujikawa
19707aac55
nghttpx: Use StringRef for sni_name_
2016-10-01 22:54:17 +09:00
Tatsuhiro Tsujikawa
9ad873fc06
nghttpx: Remove unused function declaration
2016-10-01 22:54:17 +09:00
Tatsuhiro Tsujikawa
8a9810ed32
nghttpx: Add BlockAllocator to ClientHandler
2016-10-01 22:54:17 +09:00
Tatsuhiro Tsujikawa
68a6d8c50b
nghttpx: Realloc header buffer
2016-10-01 22:52:02 +09:00
Tatsuhiro Tsujikawa
600605400c
nghttpx: Don't send RST_STREAM CANCEL to a pushed stream repeatedly
2016-09-27 23:49:01 +09:00
Tatsuhiro Tsujikawa
97aa4dabc8
Bump up version number to 1.16.0-DEV
2016-09-25 12:17:45 +09:00
Tatsuhiro Tsujikawa
a6f487240d
Add missing rst entry
2016-09-25 11:44:24 +09:00
Tatsuhiro Tsujikawa
da135416bb
Update man pages
2016-09-25 11:39:14 +09:00
Tatsuhiro Tsujikawa
13eb881e5e
Bump up version number to 1.15.0, LT revision to 25:0:11
2016-09-25 11:36:15 +09:00
Tatsuhiro Tsujikawa
82c84d163b
doc: Add missing rst files to CMakeLists.txt
2016-09-24 22:14:35 +09:00
Tatsuhiro Tsujikawa
a526183928
doc: Sort rst files
2016-09-24 22:14:28 +09:00
Tatsuhiro Tsujikawa
60222ae7c3
Update doc
2016-09-24 10:42:50 +09:00
Tatsuhiro Tsujikawa
2052a1a4bd
Document how libnghttp2 schedules HTTP/2 frames internally
2016-09-23 22:41:49 +09:00
Tatsuhiro Tsujikawa
183be9cac9
Fix typo
2016-09-23 22:23:48 +09:00
Tatsuhiro Tsujikawa
69b53b9aaa
nghttpx: Handle graceful shutdown with client IP affinity enabled
2016-09-22 23:17:49 +09:00
Tatsuhiro Tsujikawa
02b9fcd332
integration: Fix test failure with go1.7.1
2016-09-22 20:47:51 +09:00
Tatsuhiro Tsujikawa
231d739b10
nghttpx: Improve performance with h1 backend when request body is involved
2016-09-22 20:46:50 +09:00
Tatsuhiro Tsujikawa
e1dfff8929
Use std::atomic_* overloads for std::shared_ptr if available
2016-09-20 22:39:01 +09:00
Tatsuhiro Tsujikawa
db1716ae93
Fix -Wexpansion-to-defined warning with clang-3.9
...
The error message was:
warning: macro expansion producing 'defined' has undefined
behavior [-Wexpansion-to-defined]
http://lists.llvm.org/pipermail/cfe-commits/Week-of-Mon-20160118/147239.html
2016-09-19 22:07:03 +09:00
Tatsuhiro Tsujikawa
4cdc74c957
Update bash_completion
2016-09-18 22:44:33 +09:00
Tatsuhiro Tsujikawa
2c17ec3df8
Update man pages
2016-09-18 22:44:19 +09:00
Tatsuhiro Tsujikawa
e464b10fc3
Merge branch 'set-max-deflate-dynamic-table-size'
2016-09-18 22:13:56 +09:00
Tatsuhiro Tsujikawa
03ba399176
nghttpx: Update doc
2016-09-17 22:38:06 +09:00
Tatsuhiro Tsujikawa
751d66a397
nghttpd: Check maximum value of -c option
2016-09-17 22:38:05 +09:00
Tatsuhiro Tsujikawa
3ec71bf5a2
nghttpd: Add --encoder-header-table-size option
2016-09-17 22:38:05 +09:00
Tatsuhiro Tsujikawa
f19b0724a3
nghttp: Check maximum value of -c option
2016-09-17 22:38:05 +09:00
Tatsuhiro Tsujikawa
a7e0a69f97
nghttp: Add --encoder-header-table-size option
2016-09-17 22:38:05 +09:00
Tatsuhiro Tsujikawa
e532e20491
Merge branch 'master' into set-max-deflate-dynamic-table-size
2016-09-17 22:02:41 +09:00
Tatsuhiro Tsujikawa
3e1cfa8e99
nghttpx: Don't check downstream existence since dconn is one-to-one with it
2016-09-15 22:11:26 +09:00
Tatsuhiro Tsujikawa
a100df9cae
nghttpx: Remove redundant check using get_downstream_stream_id
2016-09-15 22:06:52 +09:00
Tatsuhiro Tsujikawa
56284b1e15
nghttpx: Fix regression introduced in f267e400fa
2016-09-15 22:03:04 +09:00
Tatsuhiro Tsujikawa
f267e400fa
nghttpx: Migrate backend stream to another h2 session on graceful shutdown
2016-09-15 00:53:41 +09:00
Tatsuhiro Tsujikawa
8bac5899cc
nghttpx: Handle h2 backend error per Downstream
...
Previously we wrongly handles stream per connection when h2 backend
failed or closed. If upstream is h2 or spdy, streams which are not
associated to the failed h2 backend are also handled, which is
unnecessary.
2016-09-14 22:18:38 +09:00
Tatsuhiro Tsujikawa
f4016644a9
nghttpx: Add option to specify HPACK encoder/decoder dynamic table size
2016-09-12 22:53:02 +09:00
Tatsuhiro Tsujikawa
d9bc6d04f7
nghttpx: Log client address
2016-09-11 23:30:33 +09:00
Tatsuhiro Tsujikawa
743fc4a3c3
Use the similar naming scheme for table size as 392256e542
2016-09-11 22:25:01 +09:00
Tatsuhiro Tsujikawa
392256e542
Add nghttp2_option_set_max_deflate_dynamic_table_size() API function
...
nghttp2_option_set_max_deflate_dynamic_table_size function sets the
maximum dynamic table size for header block deflater. The default
value is 4KiB.
2016-09-11 22:13:59 +09:00
Tatsuhiro Tsujikawa
905e16cb99
Simplify session_after_frame_sent1
2016-09-11 17:18:08 +09:00
Tatsuhiro Tsujikawa
9d4e8eeb12
Simplify code
...
Move DATA frame handling code to switch-case of frame type.
2016-09-11 17:00:04 +09:00
Tatsuhiro Tsujikawa
8099dd9558
Mention --enable-lib-only configure option in README
2016-09-11 13:34:34 +09:00
Tatsuhiro Tsujikawa
a3a6b91c5f
src: Rename OPENSSL_101_API macro as OPENSSL_1_1_API
2016-09-11 00:38:20 +09:00
Tatsuhiro Tsujikawa
d9bb3448bf
Update man pages
2016-09-10 22:15:56 +09:00
Tatsuhiro Tsujikawa
d508a0c72c
nghttpx: Defer validation of request form after mruby handler
2016-09-10 22:09:13 +09:00
Tatsuhiro Tsujikawa
bc31146c1f
nghttpx: Add tls_sni to mruby Nghttpx::Env class
...
tls_sni returns TLS SNI value which client sent in this TLS
connection.
2016-09-10 22:08:34 +09:00
Tatsuhiro Tsujikawa
1ad7d5e366
nghttpx: Fix compile error gcc (again)
2016-09-10 17:13:01 +09:00
Tatsuhiro Tsujikawa
456038e3de
nghttpx: Fix compile error with gcc
2016-09-10 16:51:35 +09:00
Tatsuhiro Tsujikawa
9aa26970be
nghttpx: Comment out TCP logging since it is too verbose
2016-09-10 16:49:15 +09:00
Tatsuhiro Tsujikawa
20c39fa843
nghttpx: Use default connection window size with window size optimization
2016-09-10 16:45:28 +09:00
Tatsuhiro Tsujikawa
f5a2f1da25
nghttpx: Add --frontend-http2-window-size option, and its family
...
We added --frontend-http2-window-size,
--frontend-http2-connection-window-size, --backend-http2-window-size,
and --backend-http2-connection-window-size option to replace existing
*-bits options. The old options are not flexible because they only
specify number of bits. Now we can specify integer value, with
possible g, m, and k unit. The old options are still available for
backend compatibility, but are deprecated.
2016-09-10 16:27:48 +09:00
Tatsuhiro Tsujikawa
27b250ac8e
nghttpx: Add experimental TCP optimization for h2 frontend
2016-09-10 16:27:48 +09:00
Tatsuhiro Tsujikawa
b14375ec63
Bump up LT revision to 24:1:10 due to v1.14.1 release
...
This also fixes LT revision in CMakeLists.txt, which was not updated
in v1.14.0 release.
2016-09-10 12:52:37 +09:00
Tatsuhiro Tsujikawa
6858cda366
Fix GOAWAY race with new incoming stream on server side
...
Revert part of 16c46114dc to fix race
condition that incoming stream after sending GOAWAY causes connection
error. The strict stream handling introduced in the above commit does
not handle several cases well (e.g., GOAWAY race, and refusing streams
because of concurrency limit).
2016-09-09 22:08:34 +09:00
Tatsuhiro Tsujikawa
8a703d21ae
Update neverbleed
2016-09-08 21:19:24 +09:00
Tatsuhiro Tsujikawa
1dabe43ff4
nghttpx: Workaround for std::make_shared bug in Xcode7, 7.1, and 7.2
...
std::make_shared in Xcode 7, 7.1, and 7.2 does not perform
value-initialization, and causes undefined behaviour if struct does
not have user defined default constructor. This workaround explicitly
defines user defined default constructor, and initializes values.
2016-09-04 23:30:24 +09:00
Tatsuhiro Tsujikawa
900aef10da
Update neverbleed
2016-09-04 17:43:07 +09:00
Tatsuhiro Tsujikawa
ded576f423
nghttpx: Fix bug that bytes are doubly counted for TLS connections
2016-09-04 17:28:50 +09:00
Tatsuhiro Tsujikawa
136aae725f
nghttpx: Add --no-server-rewrite option not to rewrite server header field
2016-08-31 23:47:15 +09:00
Tatsuhiro Tsujikawa
a60c3f8939
Add -Wsometimes-uninitialized to warn flags
2016-08-30 23:47:07 +09:00
Tatsuhiro Tsujikawa
99dc31ff1a
nghttpx: Retry if backend h1 connection cannot be established due to timeout
2016-08-30 23:37:49 +09:00
Tatsuhiro Tsujikawa
7673848325
Add -lsocket -lnsl to APPLDFLAGS for solaris build
...
As suggested in GH-674
2016-08-30 21:25:47 +09:00
Tatsuhiro Tsujikawa
0f8a5ffc23
Merge branch 'http2-debug-state-api'
2016-08-28 22:33:24 +09:00
Tatsuhiro Tsujikawa
fddb019baf
Merge branch 'master' into http2-debug-state-api
2016-08-28 22:20:04 +09:00
Tatsuhiro Tsujikawa
72bf7d4af0
Merge branch 'pause-from-data-source-read-callback'
2016-08-28 22:18:29 +09:00
Tatsuhiro Tsujikawa
581e0938a9
Allow NGHTTP2_ERR_PAUSE from nghttp2_data_source_read_callback
2016-08-28 21:57:10 +09:00
Tatsuhiro Tsujikawa
1064e017c6
nghttpx: Reset stream if invalid header field is received in h2
2016-08-28 00:49:38 +09:00
Tatsuhiro Tsujikawa
79b07f0ce2
Update doc
2016-08-28 00:47:38 +09:00
Tatsuhiro Tsujikawa
cd471a989a
python: Support ALPN, require Python 3.5
...
This commit also fixes the bug that SETTINGS timer continues after
connection was closed.
2016-08-28 00:11:59 +09:00
Tatsuhiro Tsujikawa
0ea44072a3
Enable ASAN in travis autotools build
2016-08-27 22:14:54 +09:00
Tatsuhiro Tsujikawa
6ba1abac6c
src: Only consider openssl 1.1.0 final
2016-08-27 00:45:16 +09:00
Tatsuhiro Tsujikawa
0110d2f9f8
Fix compile error with openssl 1.1.0
2016-08-27 00:02:03 +09:00
Tatsuhiro Tsujikawa
baa0f60dc8
Add API to get current HPACK dynamic table size
2016-08-26 23:02:51 +09:00
Tatsuhiro Tsujikawa
69aa70086a
Merge branch 'master' into http2-debug-state-api
2016-08-26 22:54:59 +09:00
Tatsuhiro Tsujikawa
13d3f785bd
Make ImmutableString(const std::string&) explicit
2016-08-26 22:52:08 +09:00
Tatsuhiro Tsujikawa
39c068974d
Make ImmutableString(const char*) explicit
2016-08-26 22:40:59 +09:00
Tatsuhiro Tsujikawa
0d4d1a63d4
nghttpx: Add --server-name option to change server response header field
2016-08-26 22:28:09 +09:00
Tatsuhiro Tsujikawa
833cd962a1
Bump up version number to 1.15.0-DEV
2016-08-25 23:25:42 +09:00
Tatsuhiro Tsujikawa
8103f43b65
doc: Add missing APIDOCS entry
2016-08-25 23:19:35 +09:00
Tatsuhiro Tsujikawa
1c8a672a8d
Update man pages
2016-08-25 22:57:56 +09:00
Tatsuhiro Tsujikawa
4749e66c67
nghttpx: Disallow copying Config
2016-08-25 22:55:12 +09:00
Tatsuhiro Tsujikawa
25ea41972a
Bump up version number to 1.14.0, LT revision to 24:0:10
2016-08-25 22:41:17 +09:00
Tatsuhiro Tsujikawa
7d66188910
Add author.py
...
This script prints out the commit author from `git log` output. Used
to update AUTHORS file.
2016-08-25 22:37:18 +09:00
Tatsuhiro Tsujikawa
979c99eaea
Update AUTHORS
2016-08-25 22:36:05 +09:00
Tatsuhiro Tsujikawa
cf7f87c2ad
nghttpx: Log error code from getsockopt(SO_ERROR) on first write event
2016-08-25 00:25:03 +09:00
Tatsuhiro Tsujikawa
bd0c1edaa6
Merge branch 'weliu-master'
2016-08-24 00:58:49 +09:00
Tatsuhiro Tsujikawa
c7ef021b4b
Merge branch 'master' of https://github.com/weliu/nghttp2 into weliu-master
2016-08-24 00:58:15 +09:00
Wenfeng Liu
00c80a15c0
lib: Make emit_header() return void since it always succeed.
2016-08-23 13:40:14 +00:00
Tatsuhiro Tsujikawa
8f47b68a95
nghttpx: Set do_signal_write_ when TLS handshake was completed
2016-08-23 21:36:43 +09:00
Tatsuhiro Tsujikawa
d9139fc286
asio: Fix reserved size
2016-08-22 22:30:25 +09:00
Tatsuhiro Tsujikawa
e693f75670
Add nghttp2_session_get_local_settings() API function
2016-08-21 19:33:01 +09:00
Tatsuhiro Tsujikawa
759f6c0b39
Update doc
2016-08-21 19:17:51 +09:00
Tatsuhiro Tsujikawa
3e0d73c01d
Add missing document entries
2016-08-21 19:11:23 +09:00
Tatsuhiro Tsujikawa
5cf21ec187
Add APIs to return the number of data that remote endpoint can send
...
2 APIs are added. nghttp2_session_get_local_window_size() returns the
amount of data that the remote endpoint can send without receiving
connection level WINDOW_UPDATE.
nghttp2_session_get_stream_local_window_size() returns the amount of
data that the remote endpoint can send without receiving stream level
WINDOW_UPDATE.
2016-08-21 19:01:51 +09:00
Tatsuhiro Tsujikawa
62e1d1c952
Fix typo
2016-08-21 13:29:29 +09:00
Tatsuhiro Tsujikawa
6ae58cc22e
Document how to report vulnerability
2016-08-21 12:18:31 +09:00
Tatsuhiro Tsujikawa
874ef1ac54
Add License section in README
2016-08-21 11:29:21 +09:00
Tatsuhiro Tsujikawa
5f65460944
nghttpx: Don't change pushed stream's priority
...
There is a discussion in httpbis mailing list which argues that
dependency tree is for client, and changing it in server side is not
what client expects.
https://lists.w3.org/Archives/Public/ietf-http-wg/2016JulSep/0416.html
Currently, we make pushed stream depend on the parent stream of
associated stream (that is main HTML in most of the cases), so that
associated stream and pushed stream become siblings. In this case, we
also observed that these resources complete each other to get its
parent weight. This means that the delivery of associated stream is
delayed by pushed streams.
So at this moment, it is not a good idea to change pushed stream
priority in a way we do currently.
2016-08-20 22:09:18 +09:00
Tatsuhiro Tsujikawa
41b2745dad
nghttpx: Log backend connection failure in WARN level
2016-08-19 16:25:05 +09:00
Tatsuhiro Tsujikawa
30f9f9ef87
nghttpx: Guard with LOG_ENABLED(INFO)
2016-08-19 16:24:48 +09:00
Tatsuhiro Tsujikawa
4807e71b7d
nghttpx: Fix bug that api and healthmon params do not work with http2 proxy
2016-08-18 22:31:53 +09:00
Tatsuhiro Tsujikawa
09c647fd1b
Update doc
2016-08-18 21:26:58 +09:00
Tatsuhiro Tsujikawa
d0fea96e69
Allow nonuniform buffer size in nghttp2_hd_deflate_hd_vec()
2016-08-18 21:23:17 +09:00
Tatsuhiro Tsujikawa
b8883101d3
deflatehd: Call nghttp2_hd_deflate_change_table_size only if table size is changed from default
2016-08-18 17:19:24 +09:00
Tatsuhiro Tsujikawa
508c88f659
Add test for nghttp2_hd_deflate_hd_vec with 1 byte chunk
2016-08-17 22:59:48 +09:00
Tatsuhiro Tsujikawa
40d217beb1
Remove bufs_avail
2016-08-17 22:56:40 +09:00
Tatsuhiro Tsujikawa
e36caef006
Merge branch 'hpack-vec'
2016-08-17 21:09:44 +09:00
Tatsuhiro Tsujikawa
9b864380a5
Use nghttp2_vec in nghttp2_hd_deflate_hd_vec
...
This change is for the future enhancement where we loose the
requirement about the chunk size for each buffer.
2016-08-17 21:09:29 +09:00
Tatsuhiro Tsujikawa
0e1d0400d8
Use whole chunk when performing huffman encoding
2016-08-17 21:05:04 +09:00
Tatsuhiro Tsujikawa
afdd51ff15
Merge branch 'weliu-master'
2016-08-17 20:51:24 +09:00
Wenfeng Liu
488c3588d9
lib: Malloc nghttp2_buf_chain array once in nghttp2_bufs_wrap_init2()
...
to simplify logic
2016-08-17 20:48:03 +09:00
Tatsuhiro Tsujikawa
4f02b191d1
Merge branch 'weliu-master'
2016-08-16 13:03:13 +09:00
Tatsuhiro Tsujikawa
8acef2711b
Use pointer-to-pointer idiom to construct linked list
2016-08-16 13:02:24 +09:00
Tatsuhiro Tsujikawa
c6111b3792
Add test for nghttp2_hd_deflate_hd_vec
2016-08-16 11:11:06 +09:00
Tatsuhiro Tsujikawa
c4d36aeff7
Make parameters const pointer
2016-08-16 10:55:51 +09:00
Tatsuhiro Tsujikawa
f50596e355
Merge branch 'master' of https://github.com/weliu/nghttp2 into weliu-master
2016-08-16 09:59:50 +09:00
Wenfeng Liu
abf81b5bb7
lib: Add nghttp2_hd_deflate_hd_vec() deflate API to support multiple bufs input
2016-08-15 10:28:45 +00:00
Tatsuhiro Tsujikawa
8579b8a968
Merge pull request #646 from nghttp2/invalid-header-cb
...
Add nghttp2_on_invalid_header_callback
2016-08-15 11:13:20 +09:00
Tatsuhiro Tsujikawa
8df2c357d9
nghttp: Adjust weight according to Firefox stable
2016-08-11 21:59:34 +09:00
Tatsuhiro Tsujikawa
4c381611a1
More doc about HPACK decoding API
2016-08-11 11:47:53 +09:00
Tatsuhiro Tsujikawa
7dfd6ab1ad
Merge branch 'weliu-master'
2016-08-11 11:34:03 +09:00
Tatsuhiro Tsujikawa
0c7d48dede
Make result type of hd_inflate_commit_indexed void
2016-08-11 11:33:09 +09:00
Tatsuhiro Tsujikawa
4639a66e53
Merge branch 'master' of https://github.com/weliu/nghttp2 into weliu-master
2016-08-11 11:30:51 +09:00
Wenfeng Liu
65cc2f0515
lib: since hd_inflate_commit_indexed() always return 0, remove the
...
return value check in nghttp2_hd_inflate_hd_nv().
2016-08-11 02:00:43 +00:00
Tatsuhiro Tsujikawa
4eb7f98449
Remove old doc about differential encoding in HPACK
2016-08-10 21:32:36 +09:00
Wenfeng Liu
2d8059a9a5
Merge pull request #1 from nghttp2/master
...
Merge from nghttp2/nghttp2
2016-08-10 10:39:33 +08:00
Tatsuhiro Tsujikawa
a3d22b6db9
Merge branch 'weliu-master'
2016-08-09 22:05:12 +09:00
Tatsuhiro Tsujikawa
3f31424ee2
Merge branch 'master' of https://github.com/weliu/nghttp2 into weliu-master
2016-08-09 22:01:10 +09:00
Wenfeng Liu
e0119452a3
Use memeq() instead of lstreq() in lookup_token().
2016-08-09 04:15:38 +00:00
Tatsuhiro Tsujikawa
60cae325bc
Search dynamic table first for optimization
2016-08-08 00:27:16 +09:00
Tatsuhiro Tsujikawa
16c46114dc
More strict stream state handling
...
Previously, in server side, we used closed streams to detect the error
that the misbehaving client sends a frame on the incoming stream it
explicitly closed. With this commit, we make a further step, and
detect one more error case. Since we retain closed streams as long as
the sum of its size and the number of opened streams are equal or less
than max concurrent streams, we can safely say that if we get a frame
which is sent on the stream that is not found in either closed or
opened stream, it is already closed or has not existed. Then we can
send GOAWAY.
The previous code shrinks closed streams when we closed another
stream, but now it is removed. It is enough to adjust closed streams
when new incoming stream is created.
While creating this commit, we noticed that
NGHTTP2_INITIAL_MAX_CONCURRENT_STREAMS is defined as INT32_MAX. But
since SETTINGS can contain value up to UINT32_MAX, it is not enough.
However, since the stream ID space is limited to INT32_MAX, it is high
enough. We could keep this value, but this time we deprecate
NGHTTP2_INITIAL_MAX_CONCURRENT_STREAMS macro. While it is in public
header, the effect of deprecating it is negligible because of the
reason we wrote above, and usually application sets much smaller value
(say, 100) as SETTINGS_MAX_CONCURRENT_STREAMS.
2016-08-07 19:31:00 +09:00
Tatsuhiro Tsujikawa
862175b21c
Merge branch 'weliu-master'
2016-08-06 22:44:10 +09:00
Tatsuhiro Tsujikawa
e7e3d77c53
Merge branch 'master' of https://github.com/weliu/nghttp2 into weliu-master
2016-08-06 22:42:22 +09:00
Wenfeng Liu
af9aeee752
1. Modify genlibtokenlookup.py to remove redundant header comparisons.
...
2. Remove inline qualifier of lookup_token() in genlibtokenlookup.py.
2016-08-05 09:56:15 +00:00
Tatsuhiro Tsujikawa
ad3d43b8be
nghttpx: Add access log variable for backend host and port
...
Use $backend_host and $backend_port. $backend_host is backend host
name given in --backend option. It could be a path to UNIX domain
socket.
2016-08-05 00:04:47 +09:00
Tatsuhiro Tsujikawa
210a5c4f01
nghttpx: Use copy instead of const reference of backend group
2016-08-04 23:11:45 +09:00
Tatsuhiro Tsujikawa
d8822f2a8e
Merge branch 'weliu-master'
2016-08-04 22:25:49 +09:00
Tatsuhiro Tsujikawa
b7a72b1e5a
Merge branch 'master' of https://github.com/weliu/nghttp2 into weliu-master
2016-08-04 22:25:25 +09:00
Tatsuhiro Tsujikawa
2f106dc96b
Fix wrong tree operation to avoid cycle
...
https://tools.ietf.org/html/rfc7540#section-5.3.3 explains how to
transform dependency tree to avoid circular dependency. Previously,
we wrongly always moved the dependent stream under the root stream.
The correct destination is the parent stream of the stream to
reprioritize. This commit fixes this bug.
2016-08-04 22:20:07 +09:00
Wenfeng Liu
f619286ca3
Make get_max_index() return the max index in frame, so we don't need
...
to do extra calculation
2016-08-04 01:26:13 +00:00
Tatsuhiro Tsujikawa
271f7fbbb6
Add nghttp2_on_invalid_header_callback
...
nghttp2_on_invalid_header_callback is similar to
nghttp2_on_header_callback, but the former is only called when the
invalid header field is received which is silently ignored when the
callback is not set. With this callback, application inspects the
incoming invalid field, and it also can reset stream from this
callback by returning NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE, or using
nghttp2_submit_rst_stream() directly with the error code of choice.
We also added nghttp2_on_invalid_header_callback2, which uses
reference counted header fields.
2016-08-04 00:03:58 +09:00
Tatsuhiro Tsujikawa
318235db33
Log frame's stream ID for header debug logging
...
Previously, for PUSH_PROMISE frame, we logged its promised stream ID.
But it is saner to use just frame's ID in this context.
2016-08-03 00:17:38 +09:00
Tatsuhiro Tsujikawa
8ab079ccc2
Call error callback when invalid header field is received and ignored
...
We have a code to call error callback when invalid header is received
and it is treated as stream error. But we didn't if the incoming
header is invalid, but just ignored. This generosity is required to
handle public Internet connections especially when nghttp2 is used as
forward proxy.
2016-08-03 00:13:37 +09:00
Tatsuhiro Tsujikawa
a4d2104c3c
Revert "Output availability of ALPN in configure summary"
...
This reverts commit f4a4abd180 .
2016-08-02 22:00:00 +09:00
Tatsuhiro Tsujikawa
44672e437a
Update man pages
2016-07-31 21:16:34 +09:00
Tatsuhiro Tsujikawa
fb3d6f68a8
Merge branch 'nghttpx-reload'
2016-07-31 21:03:13 +09:00
Tatsuhiro Tsujikawa
d7c9015d8b
Update doc
2016-07-31 20:59:06 +09:00
Tatsuhiro Tsujikawa
54f640f3e1
nghttpx: Update doc
2016-07-31 20:50:07 +09:00
Tatsuhiro Tsujikawa
e2906025c8
nghttpx: Don't exit from save_pid and set_alpn_prefs
2016-07-31 20:35:10 +09:00
Tatsuhiro Tsujikawa
9a8e9815c9
nghttpx: Cleanup
2016-07-31 20:26:03 +09:00
Tatsuhiro Tsujikawa
8c3e864989
nghttpx: Define ~Config for automatic clean up with std::unique_ptr
...
Now config global is backed with std::unique_ptr. configuration
swapping dance is now a bit cleaner, but YMMV.
2016-07-31 19:01:29 +09:00
Tatsuhiro Tsujikawa
22570b7260
nghttpx: Close fd when error occurred in reload operation
...
This commit also fixes the bug that old configuration is still used
for worker process. The another bug fix is that inherited, but not
used fd is not closed in worker process. That makes reloading next
configuration fail if it contains the address which are leaked into
worker process.
2016-07-31 18:47:03 +09:00
Tatsuhiro Tsujikawa
fb49182c29
nghttpx: Move original_argv, argv, argc, and cmdcfgs to StartupConfig
2016-07-31 16:34:55 +09:00
Tatsuhiro Tsujikawa
b9b648e0ed
nghttpx: Remove last_worker_pid from Config
...
The last_worker_pid is known by inspecting the last entry of
worker_processes.
2016-07-31 16:20:00 +09:00
Tatsuhiro Tsujikawa
494775a25d
nghttpx: Rename SignalServer with WorkerProcess
2016-07-31 16:16:23 +09:00
Tatsuhiro Tsujikawa
1214f9e23b
nghttpx: Reload configuration with SIGHUP
...
This commit implements configuration reloading with SIGHUP.
There are rough edges left:
* Rename SignalServer with more meaningful name, say, WorkerProcess.
* We should introduce global configuration object which is not
affected by configuration reloading. It should hold cmdcfgs, argc,
argv, and last worker PID.
* We should close the listener file descriptor when some operation was
failed after that.
2016-07-31 15:57:41 +09:00
Tatsuhiro Tsujikawa
a54cda22ab
nghttpx: Do creation of InheritedAddr in a dedicated function for reuse
2016-07-31 00:35:15 +09:00
Tatsuhiro Tsujikawa
f4a4abd180
Output availability of ALPN in configure summary
2016-07-29 19:50:36 +09:00
Tatsuhiro Tsujikawa
c9559b5c0d
Document about ALPN in nghttpx howto
2016-07-29 19:37:52 +09:00
Tatsuhiro Tsujikawa
af5b354685
nghttp: next_weight_idx is enough to be an local variable
2016-07-29 19:36:05 +09:00
Tatsuhiro Tsujikawa
3c1c2c4aad
nghttp: Allow multiple -p option
...
The N-th -p options sets N-th URI's weight. If the number of -p is
less than the number of URIs, the last -p value is repeated. If no -p
is set, use default weight, 16.
2016-07-27 05:10:27 +09:00
Tatsuhiro Tsujikawa
767ed255ca
Bump up version number to 1.14.0-DEV
2016-07-21 22:53:26 +09:00
Tatsuhiro Tsujikawa
aa0023b3c1
Update man pages
2016-07-21 21:24:01 +09:00
Tatsuhiro Tsujikawa
3bdc143474
Bump up version number to 1.13.0, LT revision to 23:0:9
2016-07-21 21:20:52 +09:00
Tatsuhiro Tsujikawa
8b50cc0ece
Update doc
2016-07-21 21:18:21 +09:00
Tatsuhiro Tsujikawa
a24c94e92a
Update doc
2016-07-18 00:25:59 +09:00
Tatsuhiro Tsujikawa
a00442bee6
Work with Android NDK r12b
...
clang + libc++ does not work, it still requires libc++_shared.so
runtime even if -lstdc++ is used, which supposed to link with static
version of libc++.
2016-07-17 23:41:41 +09:00
Tatsuhiro Tsujikawa
f857b63986
Fix warning with Sphinx 1.4
2016-07-16 19:34:39 +09:00
Tatsuhiro Tsujikawa
cbd72da9a1
Update man pages
2016-07-16 19:10:34 +09:00
Tatsuhiro Tsujikawa
7506a93179
doc: Fix Sphinx build warnings
2016-07-16 19:08:38 +09:00
Tatsuhiro Tsujikawa
53e1623ab3
Update doc
...
It was markdown, we should use reST.
2016-07-16 12:51:04 +09:00
Tatsuhiro Tsujikawa
0cb0bdabec
Update doc
2016-07-13 22:01:31 +09:00
Tatsuhiro Tsujikawa
ed8d5f04bb
Update doc
2016-07-10 19:07:03 +09:00
Tatsuhiro Tsujikawa
33153010c5
nghttpx: Retry memcached connection
...
Previously, we didn't retry request on connection failure. Sometimes
we hit the edge case where connection is about to lost just when we
write request. To avoid this situation, we now retry request to
failed attempt. We also add ConnectBlocker to MemcachedConnection not
to attempt to connect to memcached if connection could not be made
previously.
2016-07-08 23:41:53 +09:00
Tatsuhiro Tsujikawa
2c500b62fd
Update doc
2016-07-07 23:26:15 +09:00
Tatsuhiro Tsujikawa
30f26a2b9d
nghttpx: Explicitly cast to uint32_t for hash calculation
2016-07-06 23:58:53 +09:00
Tatsuhiro Tsujikawa
ca39c71ac3
examples: Fix compile error with OpenSSL v1.1.0-beta2
2016-07-06 23:32:50 +09:00
Tatsuhiro Tsujikawa
2bbe4422d2
nghttpx: Use consistent hashing for client IP based session affinity
...
We use technique described in https://github.com/RJ/ketama
2016-07-06 23:31:10 +09:00
Tomasz Buchert
5d3535126e
Fix FTBFS on armel by explicitly including the <mutex> header.
2016-07-05 00:04:23 +09:00
Tatsuhiro Tsujikawa
d2addbc1ed
Add test for canceling PUSH_PROMISE
2016-07-02 21:19:54 +09:00
Tatsuhiro Tsujikawa
110ca3131a
Cancel frame transmission from before_frame_send_callback
...
We define the behaviour when NGHTTP2_ERR_CANCEL is returned from
before_frame_send_callback. That is to cancel the frame passed to the
callback.
2016-07-02 19:21:08 +09:00
Tatsuhiro Tsujikawa
fd7d3c57d7
nghttpx: Use faster version of power
...
In our use case, x and y is quite small, and there is no chance for
overflow, and y is always integer.
2016-06-27 22:42:28 +09:00
Tatsuhiro Tsujikawa
179561e4be
nghttpx: Cast to double to fix build with gcc 4.8 on Solaris 11
2016-06-27 22:33:25 +09:00
Tatsuhiro Tsujikawa
903e0077aa
nghttpx: Fix build error with libressl
2016-06-27 22:29:07 +09:00
Tatsuhiro Tsujikawa
3fadad1bf3
Bump up version number to 1.13.0-DEV
2016-06-26 22:44:40 +09:00
Tatsuhiro Tsujikawa
acb5d45a88
Update man pages
2016-06-26 22:33:46 +09:00
Tatsuhiro Tsujikawa
6fd4dd99da
nghttpx: Update doc
2016-06-26 22:33:17 +09:00
Tatsuhiro Tsujikawa
1bcf13b28b
Update man pages
2016-06-26 20:01:25 +09:00
Tatsuhiro Tsujikawa
c7210908df
Bump up version number to 1.12.0
2016-06-26 19:58:44 +09:00
Tatsuhiro Tsujikawa
ad7cded2f4
examples: Check return value from nghttp2_submit_settings
2016-06-26 19:57:29 +09:00
Tatsuhiro Tsujikawa
7d847d8796
Update bash_completion
2016-06-26 00:04:28 +09:00
Tatsuhiro Tsujikawa
ab9cc37ca0
Update man pages
2016-06-26 00:04:17 +09:00
Tatsuhiro Tsujikawa
65095c448d
nghttpx: Fix compile error with gcc -Werror=comment
2016-06-25 23:57:40 +09:00
Tatsuhiro Tsujikawa
76e188e368
nghttpx: Fix compile error with gcc
2016-06-25 23:57:26 +09:00
Tatsuhiro Tsujikawa
0613a16c11
nghttpx: Fix compile error without --with-mruby
2016-06-25 23:56:46 +09:00
Tatsuhiro Tsujikawa
aced5b3b6c
nghttpx: Fix memory leak from CertLookupTree
2016-06-25 23:47:22 +09:00
Tatsuhiro Tsujikawa
97d8bb16e6
nghttpx: Update doc
2016-06-25 23:37:29 +09:00
Tatsuhiro Tsujikawa
3e14f0d8a5
nghttpx: Fix compile error with openssl 1.0.1
...
openssl lacks SSL_CTX_get0_certificates().
2016-06-25 23:35:37 +09:00
Tatsuhiro Tsujikawa
f7c0d48152
nghttpx: Rewrite CertLookupTree using Router
2016-06-25 22:52:01 +09:00
Tatsuhiro Tsujikawa
2a4733857f
nghttpx: Reduce TTFB with large number of incoming connections
...
To reduce TTFB with large number of incoming connections, we now
intentionally accept one connection at a time, so that it does not
delay the TTFB of the existing connection. This is significant
especially for TLS connections.
2016-06-25 11:50:33 +09:00
Tatsuhiro Tsujikawa
3c1efeff55
nghttpx: Don't reset read timer on write in LiveCheck
2016-06-24 22:25:43 +09:00
Tatsuhiro Tsujikawa
532f801fbd
nghttpx: Don't reset read timer on write in memcached connection
2016-06-24 00:11:29 +09:00
Tatsuhiro Tsujikawa
cbced219ec
nghttpx: Rewrite read timer handling
...
For HTTP/2, read timer starts when there is no downstream, and timer
stops when there is at least one downstream. For HTTP/1, read timer
starts when request handling finished, and timer stops when request
handling starts.
2016-06-24 00:04:39 +09:00
Tatsuhiro Tsujikawa
66ca8272ca
nghttpx: Clean up neverbleed AF_UNIX socket
2016-06-23 23:04:47 +09:00
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
Tatsuhiro Tsujikawa
3cd0b87685
nghttpx: Make API endpoint work with SPDY
2016-06-05 23:35:30 +09:00
Tatsuhiro Tsujikawa
2867f03861
nghttpx: Close TODO comments
2016-06-05 23:02:50 +09:00
Tatsuhiro Tsujikawa
8248598601
Add integration tests for nghttpx API endpoint
2016-06-05 22:51:28 +09:00
Tatsuhiro Tsujikawa
4ef3f9d11c
Update doc
2016-06-05 13:17:48 +09:00
Tatsuhiro Tsujikawa
c3817913ee
Update man pages
2016-06-04 18:58:04 +09:00
Tatsuhiro Tsujikawa
6214c1b4b6
Update doc
2016-06-04 18:57:46 +09:00
Tatsuhiro Tsujikawa
2499b36801
Update bash_completion
2016-06-04 18:53:27 +09:00
Tatsuhiro Tsujikawa
d196639aed
Update man pages
2016-06-04 18:53:13 +09:00
Tatsuhiro Tsujikawa
2c33da36cc
Merge branch 'nghttpx-api-endpoint'
2016-06-04 18:51:56 +09:00
Tatsuhiro Tsujikawa
708c99c052
nghttpx: Describe api parameter in --frontend option
2016-06-04 18:48:16 +09:00
Tatsuhiro Tsujikawa
fbdfecc143
Add nghttpx API section
2016-06-04 18:42:30 +09:00
Tatsuhiro Tsujikawa
d3495405d9
nghttpx: Change API endpoint URI
2016-06-04 18:37:37 +09:00
Tatsuhiro Tsujikawa
aad2a24a22
nghttpx: Use JSON for API resposne body
2016-06-04 18:18:07 +09:00
Tatsuhiro Tsujikawa
27fa9c3c12
nghttpx: Only allow POST and PUT for API request
2016-06-04 17:55:48 +09:00
Tatsuhiro Tsujikawa
92db6820d8
nghttpx: Close API request connection for 400 and 413 response
2016-06-04 17:43:48 +09:00
Tatsuhiro Tsujikawa
851cbd49f4
nghttpx: Only parse backend option for API request for now
2016-06-04 17:43:37 +09:00
Tatsuhiro Tsujikawa
8288f5713b
nghttpx: Add --api-max-request-body option to set maximum API request body size
2016-06-04 17:24:54 +09:00
Tatsuhiro Tsujikawa
951ef0c6d5
nghttpx: Fix typo
2016-06-04 17:23:47 +09:00
Tatsuhiro Tsujikawa
9653ae98a6
nghttpx: Send 100-continue for API request
2016-06-04 17:23:21 +09:00
Tatsuhiro Tsujikawa
d837887af6
nghttpx: Avoid copy
2016-06-04 16:23:50 +09:00
Tatsuhiro Tsujikawa
2a504224de
nghttpx: Rename BlockAllocator::destroy as BlockAllocator::reset
2016-06-04 16:23:31 +09:00
Tatsuhiro Tsujikawa
d0bf247419
nghttpx: Refactor graceful shutdown in Http2Upstream
...
Instead of using bool flag, just stop prepare watcher.
2016-06-04 12:43:17 +09:00
Tatsuhiro Tsujikawa
9237d30e34
nghttpx: Remove flow_control_ from Http2Session
...
This is a legacy of SPDY era where it can disable flow control.
2016-06-04 12:38:39 +09:00
Tatsuhiro Tsujikawa
ef3fa23b2e
nghttpx: Send GOAWAY for retired h2 backend connection
2016-06-04 12:36:22 +09:00
Tatsuhiro Tsujikawa
cb7269f334
nghttpx: Close and disallow h1 backend connection on backend replacement
2016-06-04 12:16:31 +09:00
Tatsuhiro Tsujikawa
0ca7c4cb38
nghttpx: Send notice to replace downstream via ConnectionHandler
2016-06-04 01:02:57 +09:00
Tatsuhiro Tsujikawa
43913838b4
nghttpx: Retain memory in Router
2016-06-03 23:52:44 +09:00
Tatsuhiro Tsujikawa
845aa7a710
nghttpx: Share downstream config object
...
This is the unit of sharing configurations to change
2016-06-03 19:57:43 +09:00
Tatsuhiro Tsujikawa
fe58614b23
nghttpx: Use std::shared_ptr for downstream addresses so that we can swap them
2016-06-03 01:20:49 +09:00
Tatsuhiro Tsujikawa
2fd095d036
nghttpx: Share the code to configure backends
2016-06-03 00:22:55 +09:00
Tatsuhiro Tsujikawa
09150a7927
nghttpx: Pass pointer to Config object to store parsed configurations
2016-06-02 23:59:59 +09:00
Tatsuhiro Tsujikawa
667c8b0e27
nghttpx: Add APIDownstreamConnection to handle API request
...
For those connections via frontend with api parameter, they use solely
APIDownstreamConnection.
In this commit, APIDownstreamConnection just consumes all request
body, and do nothing. The next few commits implements our first API
endpoint: /v1/api/dynamicconfig.
2016-06-02 23:50:56 +09:00
Tatsuhiro Tsujikawa
2a0d0e798b
nghttpx: Add api parameter to --frontend option to mark API endpoint
2016-06-02 23:50:00 +09:00
Tatsuhiro Tsujikawa
8b6947eda5
Merge pull request #605 from alagoutte/misc
...
fix warning: declaration of 'free' shadows a global declaration
2016-06-02 00:22:47 +09:00
Alexis La Goutte
88e635e0b9
fix warning: declaration of 'free' shadows a global declaration
...
With some old OS X release
2016-06-01 08:45:13 +02:00
Tatsuhiro Tsujikawa
3753b47475
src: Fix compiler warnings
2016-05-31 21:26:21 +09:00
Tatsuhiro Tsujikawa
be06f1d428
Add missing rst file
2016-05-30 00:13:04 +09:00
Tatsuhiro Tsujikawa
e4dc6cf432
src: Use nghttp2_session_set_local_window_size()
2016-05-29 23:34:38 +09:00
Tatsuhiro Tsujikawa
204f9a3ec7
Add nghttp2_session_set_local_window_size() API function
2016-05-29 23:13:11 +09:00
Tatsuhiro Tsujikawa
f68dc02d6b
nghttpx: Remove unused private field from Connection object
2016-05-28 22:46:56 +09:00
Tatsuhiro Tsujikawa
2ca3bf7a7e
nghttpx: Fix bug that timeout on h1 backend makes that backend unavailable
2016-05-28 22:41:24 +09:00
Tatsuhiro Tsujikawa
43b045e84c
nghttpx: Fix compile error with gcc
2016-05-28 19:50:36 +09:00
Tatsuhiro Tsujikawa
852a320586
nghttpx: Cleanup code where request content-length is involved
2016-05-28 16:44:04 +09:00
Tatsuhiro Tsujikawa
631f977236
Update http-parser to f2c26ee500ab3921010fa7ec66243365611e77dd
2016-05-28 12:17:17 +09:00
Tatsuhiro Tsujikawa
046ec307c3
Bump up version number to 1.12.0-DEV
2016-05-26 23:04:46 +09:00
Tatsuhiro Tsujikawa
50083f0d22
Update man pages
2016-05-26 22:35:51 +09:00
Tatsuhiro Tsujikawa
c4fba5139c
Bump up version number to 1.11.0, LT revision to 22:0:8
2016-05-26 22:33:17 +09:00
Tatsuhiro Tsujikawa
81b3e3811b
nghttpx: Fix bug that 503 is returned if backend proto is not mixed
2016-05-26 04:49:36 +00:00
Tatsuhiro Tsujikawa
26eb983cf0
nghttpx: Fix bug that h2 is used while there is no h2 backend
2016-05-26 00:14:11 +09:00
Tatsuhiro Tsujikawa
e0491c2ee8
nghttpx: Refactor protocol selection in backend
2016-05-25 23:07:04 +09:00
Tatsuhiro Tsujikawa
fce7908fe6
Merge branch 'mix-backend-proto-tls'
2016-05-24 23:49:21 +09:00
Tatsuhiro Tsujikawa
2a4bf9f615
nghttpx: Allow mixed protocol and TLS settings among backends under same pattern
2016-05-24 23:36:43 +09:00
Tatsuhiro Tsujikawa
45f7c17932
nghttpx: Make backend fail if connect attempt is timed out
2016-05-24 21:59:24 +09:00
Tatsuhiro Tsujikawa
f2a1fadda9
nghttpx: Make backend fail if connect operation was timed out
2016-05-24 21:24:30 +09:00
Tatsuhiro Tsujikawa
98396f00ff
nghttpx: Cleane up bit more of save_pid()
2016-05-24 01:32:11 +09:00
Tatsuhiro Tsujikawa
e7d5cfff30
nghttpx: Fix crash introduced in the previous commit
2016-05-24 00:10:53 +09:00
Tatsuhiro Tsujikawa
c308be39de
nghttpx: Write PID in temporary file then rename
...
Write PID in temporary file first. Then rename it as the real
destination. It will avoid the issue that the external process may
read the empty PID file because of race condition.
2016-05-23 22:39:38 +09:00
Tatsuhiro Tsujikawa
65135bc319
nghttpx: Check null just in case
2016-05-22 21:57:24 +09:00
Tatsuhiro Tsujikawa
944297df28
Update bash_completion
2016-05-21 14:26:31 +09:00
Tatsuhiro Tsujikawa
f725e419e8
Update man pages
2016-05-21 14:25:03 +09:00
Tatsuhiro Tsujikawa
0fca352114
nghttpx: Make SETTINGS timeout value configurable
...
SETTINGS timeout can be configurable using
--frontend-http2-settings-timeout and
--backend-http2-settings-timeout.
2016-05-21 14:13:57 +09:00
Tatsuhiro Tsujikawa
9a3461e2b6
nghttpx: Use ev_timer_start intead of ev_timer_again for settings_timer_
...
Since we only use it once, we don't have to use ev_timer_again, and
stop timer manually.
2016-05-21 13:48:41 +09:00
Tatsuhiro Tsujikawa
0b9ee38db6
nghttpx: Handle corner case where session is going down just after ACK recved
2016-05-21 13:44:53 +09:00
Tatsuhiro Tsujikawa
a224aba577
nghttpx: No need to check activeness of SETTINGS ACK timer
...
We don't have to check activeness of SETTINGS ACK timer since we only
send SETTINGS frame without ACK only once per session at the moment.
2016-05-21 13:18:22 +09:00
Tatsuhiro Tsujikawa
9f770fec36
nghttpx: Save PID file after it is ready to accept connections
2016-05-21 10:42:09 +09:00
Tatsuhiro Tsujikawa
c39a669671
Merge branch 'nghttpx-settings-timeout-as-failure'
2016-05-21 10:41:52 +09:00
Tatsuhiro Tsujikawa
e6dfd4ff27
nghttpx: Call downstream_failure rather than on_failure in HTTP/1 backend
2016-05-21 10:34:47 +09:00
Tatsuhiro Tsujikawa
e99f3c58f7
nghttpx: Call downstream_failure where it should be
...
Also, we say connection succeeded only when we got SETTINGS ACK from
peer, rather than when we just connected to the peer in TCP or TLS.
2016-05-21 10:30:09 +09:00
Tatsuhiro Tsujikawa
2a3b6c11eb
nghttpx: Don't restart SETTINGS timer, and fix log message in HTTP/2 frontend
2016-05-21 10:29:11 +09:00
Tatsuhiro Tsujikawa
e26d6a2b27
nghttpx: Don't re-enter offline if it is already in offline mode
2016-05-21 10:28:16 +09:00
Tatsuhiro Tsujikawa
dce7288658
nghttpx: Wait for SETTINGS ACK to make sure that backend h2 server is alive
2016-05-21 00:30:54 +09:00
Tatsuhiro Tsujikawa
d1968c4465
nghttpx: Treat backend failure if SETTINGS is not received within timeout
2016-05-19 23:12:34 +09:00
Tatsuhiro Tsujikawa
863fbffda4
Fix typo
2016-05-18 01:25:37 +09:00
Tatsuhiro Tsujikawa
629f1e6f0f
nghttpx: Add connection: close to mruby response in graceful shutdown period
2016-05-18 01:21:23 +09:00
Tatsuhiro Tsujikawa
7a3c656adf
nghttpx: Refactor
2016-05-15 21:05:20 +09:00
Tatsuhiro Tsujikawa
2a96d433ec
Add nghttp2_hd_inflate_hd2() and deprecate nghttp2_hd_inflate_hd()
...
The difference between them are former has const qualifier to the |in|
parameter, which is desirable since it is effectively read-only.
2016-05-14 18:25:20 +09:00
Tatsuhiro Tsujikawa
796160cb77
nghttpx: Don't add chunked encoded response body for HEAD request
2016-05-14 17:47:58 +09:00
Tatsuhiro Tsujikawa
5c82a36072
nghttpd: Set content-length in status response
2016-05-14 17:29:50 +09:00
Tatsuhiro Tsujikawa
b011012d8f
nghttpx: Use NGHTTP2_DATA_FLAG_NO_COPY for backend HTTP/2 session
2016-05-14 17:17:27 +09:00
Tatsuhiro Tsujikawa
8026bdd45a
nghttpx: Don't keep backend connection if request buffer is not empty
2016-05-14 17:16:50 +09:00
Tatsuhiro Tsujikawa
5ff6da11b1
Refactor map remove
2016-05-14 11:34:51 +09:00
Tatsuhiro Tsujikawa
de3f2951b3
h2load: Robust error handling in POST data
2016-05-14 00:40:35 +09:00
Tatsuhiro Tsujikawa
d00788ceeb
nghttp: More robust error handling while reading file
2016-05-14 00:23:44 +09:00
Tatsuhiro Tsujikawa
e0df95a1d8
nghttp: Eliminate zero length DATA frame at the end if possible
2016-05-14 00:18:22 +09:00
Tatsuhiro Tsujikawa
6d22898936
src: Compile with OpenSSL 1.1.0-pre5
...
* don't use CRYPTO_LOCK stuff (they are sorted out by openssl, and no
application intervention is required, just like boringSSL)
* don't use OPENSSL_config
* use provided API to access BIO member
2016-05-07 16:18:58 +09:00
Tatsuhiro Tsujikawa
15a9dfbaea
nghttpd: Enable kqueue if it is available on the running platform
2016-05-06 23:45:56 +09:00
Tatsuhiro Tsujikawa
c6facaf662
h2load: Enable kqueue if it is available in the running platform
2016-05-06 23:40:55 +09:00
Tatsuhiro Tsujikawa
60e443b90b
h2load: Fix crash on exit on FreeBSD
2016-05-06 23:38:15 +09:00
Tatsuhiro Tsujikawa
d39335829d
nghttpx: Enable kqueue by default
...
We enabled libev kqueue backend in nghttpx by default. Since it might
not work on some platforms, we also added --no-kqueue option to
disable it.
2016-05-06 23:10:09 +09:00
Tatsuhiro Tsujikawa
5d4f3f36e3
Fix bug that PING flags are ignored in nghttp2_submit_ping
2016-05-05 23:11:10 +09:00
Tatsuhiro Tsujikawa
752b5b3d44
nghttpx: Just call execv instead of execve
2016-05-05 23:08:42 +09:00
Tatsuhiro Tsujikawa
70e8dc3761
ngttpx: Pass environ to execve
2016-05-02 23:39:14 +09:00
Tatsuhiro Tsujikawa
0ee80be995
Update man pages
2016-04-29 23:27:20 +09:00
Tatsuhiro Tsujikawa
3712c89a66
nghttpx: Use parameter instead of keyword for consistency
2016-04-29 22:47:49 +09:00
Tatsuhiro Tsujikawa
8e33f0a535
Update doc
2016-04-29 22:45:47 +09:00
Tatsuhiro Tsujikawa
fd801864e3
nghttpx: Add sni keyword to --backend option
...
The --backend-tls-sni-field is deprecated in favor of sni keyword.
--backend-tls-sni-field still works, and it overrides all sni keyword
in --backend option. But it will be removed in the future release.
2016-04-29 14:42:18 +09:00
Tatsuhiro Tsujikawa
99f7e7e2a5
nghttpx: Add mruby env.server_addr and env.tls_used attributes
2016-04-29 12:17:25 +09:00
Tatsuhiro Tsujikawa
6c999e6fb5
nghttpx: Enable TLS session cache again in memcached connection
2016-04-28 22:57:34 +09:00
Tatsuhiro Tsujikawa
4aa4fe56e1
nghttpx: Destroy SSL object, and always lookup TLS session cache
2016-04-28 22:25:55 +09:00
Tatsuhiro Tsujikawa
09b97a3313
nghttpx: Add mruby env.server_port to return frontend server side port
2016-04-28 00:19:30 +09:00
Tatsuhiro Tsujikawa
d2f4e4e325
nghttpx: Always expect response trailer fields
2016-04-27 23:00:36 +09:00
Tatsuhiro Tsujikawa
dba0f35ee1
Avoid 0-length DATA if NGHTTP2_DATA_FLAG_NO_END_STREAM is set
2016-04-27 22:57:19 +09:00
Tatsuhiro Tsujikawa
2d2b72d4eb
nghttpx: Don't add 0-length DATA when response HEADERS bears END_STREAM flag
2016-04-27 21:19:28 +09:00
Tatsuhiro Tsujikawa
b39ad3135d
nghttpx: Don't use CN if we have dNSName or iPAddress field
2016-04-26 22:32:55 +09:00
Tatsuhiro Tsujikawa
13f97ccf45
integration: Workaround runtime error: cgo argument has Go pointer to Go pointer
2016-04-25 23:16:36 +09:00
Tatsuhiro Tsujikawa
43bbcd35aa
Update releasechk
2016-04-25 22:41:48 +09:00
Tatsuhiro Tsujikawa
220f49b157
Bump up version number to 1.11.0-DEV
2016-04-25 22:41:48 +09:00
Tatsuhiro Tsujikawa
918ca4ca7c
Update man pages
2016-04-25 22:02:56 +09:00
Tatsuhiro Tsujikawa
7d7dc830ef
Bump up version number to 1.10.0, LT revision to 21:0:7
2016-04-25 22:01:26 +09:00
Tatsuhiro Tsujikawa
f939000ad9
Update man pages
2016-04-25 21:58:37 +09:00
Tatsuhiro Tsujikawa
4b34bc583d
Update AUTHORS
2016-04-25 21:53:03 +09:00
Tatsuhiro Tsujikawa
91fce2f0e6
Merge branch 'bsuh-master'
2016-04-25 21:51:45 +09:00
Brian Suh
5487b64fa6
nghttpx: Fix downstream connect callback called early
2016-04-24 20:49:38 -07:00
Tatsuhiro Tsujikawa
b27107385e
Update AUTHORS
2016-04-24 18:00:41 +09:00
Tatsuhiro Tsujikawa
3d00dd6537
nghttpx: Fix erroneous division by sizeof(...)
2016-04-24 17:42:24 +09:00
Tatsuhiro Tsujikawa
e85bc70bef
clang-format
2016-04-24 13:49:57 +09:00
Tatsuhiro Tsujikawa
b0e98718f5
src: Handle return value of getsockopt
2016-04-24 00:42:11 +09:00
Tatsuhiro Tsujikawa
3d4a4cb617
Disable integration tests due to golang build failure
2016-04-23 20:50:49 +09:00
Tatsuhiro Tsujikawa
86777defa8
nghttpx: Workaround for some older gcc4.9
2016-04-23 18:20:50 +09:00
Tatsuhiro Tsujikawa
52b455cfeb
Mention the removal of --backend-http2-connections-per-worker in migration guide
2016-04-23 00:46:10 +09:00
Tatsuhiro Tsujikawa
add182b495
Merge branch 'meconlen-data_unset'
2016-04-23 00:35:55 +09:00
Tatsuhiro Tsujikawa
3d948fd3d7
Zero fill in nghttp2_session_mem_send
2016-04-23 00:32:23 +09:00
Mike Conlen
e04e24c1c2
in nghttp2_session_send() data is declared uninitialized and used
...
after a call to nghttp2_session_mem_send_internal() which should
set it, however in nghttp2_session_mem_send_internal() it is
possible to return before setting the pointer.
This change initializes the variable to NULL where delcared and
sets the variable in nghttp2_session_mem_send_internal() to
NULL before possibly returning rather than after.
both options are not necessary but are both ideal practice
2016-04-21 22:53:19 +00:00
Tatsuhiro Tsujikawa
68059ccda9
nghttp: Use nghttp2_session_mem_recv
2016-04-21 23:30:35 +09:00
Tatsuhiro Tsujikawa
bc2b941866
nghttpx: Wildcard match for CN
2016-04-21 22:53:07 +09:00
Tatsuhiro Tsujikawa
9b81eec944
nghttpx: Remove trailing "." from SAN DNS name and CN
2016-04-21 22:44:26 +09:00
Tatsuhiro Tsujikawa
00bf701600
nghttpx: Truncate too long -b option signature
2016-04-18 23:45:33 +09:00
Tatsuhiro Tsujikawa
5339c1774c
nghttpx: Log when backend group is shared
2016-04-16 22:04:35 +09:00
Tatsuhiro Tsujikawa
e41d8c2f62
Update man pages
2016-04-16 19:12:12 +09:00
Tatsuhiro Tsujikawa
73740477fb
Update doc
2016-04-16 18:58:18 +09:00
Tatsuhiro Tsujikawa
f86a9d654d
Update doc
2016-04-16 18:52:32 +09:00
Tatsuhiro Tsujikawa
6f52da834b
nghttpx: Fix bug that server push from mruby script did not work
2016-04-16 18:52:14 +09:00
Tatsuhiro Tsujikawa
4041d1eb26
Don't send ALTSVC if stream is closing
2016-04-15 00:59:05 +09:00
Tatsuhiro Tsujikawa
81f81e6b70
nghttpx: Error handling without assert
2016-04-13 19:22:32 +09:00
Tatsuhiro Tsujikawa
a16daf109b
nghttpx: Try next HTTP/1 backend address when connection cannot be made
2016-04-13 00:38:21 +09:00
Tatsuhiro Tsujikawa
b6708a4b87
nghttpx: Retry next HTTP/2 backend address when connection cannot be made
2016-04-13 00:38:08 +09:00
Tatsuhiro Tsujikawa
bda352bf73
Update http-parser
2016-04-11 23:14:15 +09:00
Tatsuhiro Tsujikawa
ca261a7971
Update sphinx_rtd_theme
2016-04-11 23:05:05 +09:00
Tatsuhiro Tsujikawa
0819716332
Update doc
2016-04-11 23:00:38 +09:00
Tatsuhiro Tsujikawa
a14cea6363
nghttpx: Enable link header field based push for non-final response
2016-04-10 18:58:54 +09:00
Tatsuhiro Tsujikawa
2cac7bb838
Update bash_completion
2016-04-10 17:00:11 +09:00
Tatsuhiro Tsujikawa
65378f80ea
Update man pages
2016-04-10 16:59:57 +09:00
Tatsuhiro Tsujikawa
40f3779eb1
Pass unknown SETTINGS values to nghttp2_on_frame_recv_callback
2016-04-10 16:36:04 +09:00
Tatsuhiro Tsujikawa
d88f962565
Add test for altsvc frame
2016-04-09 22:32:48 +09:00
Tatsuhiro Tsujikawa
9c0bd8c60a
Fix compile error (again) with gcc and --enable-werror
2016-04-09 22:01:15 +09:00
Tatsuhiro Tsujikawa
9e64d10223
nghttpx: Move fall/rise configuration to --backend option
...
This commit removes --backend-fall and --backend-rise options. The
these configurations are now set as fall and rise parameters in
--backend option.
2016-04-09 21:58:08 +09:00
Tatsuhiro Tsujikawa
94c8a8fbde
doc: Add missing rst files for cleaning
2016-04-09 19:43:10 +09:00
Tatsuhiro Tsujikawa
16647622f5
Fix compile error with gcc and --enable-werror
2016-04-09 19:37:35 +09:00
Tatsuhiro Tsujikawa
9028512a5f
Merge branch 'altsvc'
2016-04-09 19:29:17 +09:00
Tatsuhiro Tsujikawa
3086d65657
altsvc: Update doc
2016-04-09 19:27:09 +09:00
Tatsuhiro Tsujikawa
d4144a7475
altsvc: Add tests, ignore altsvc if stream does not exist
2016-04-09 19:14:15 +09:00
Tatsuhiro Tsujikawa
6638ca9333
altsvc: Reduce bitfield size
2016-04-09 18:23:15 +09:00
Tatsuhiro Tsujikawa
b924ef5fff
altsvc: Discard altsvc when it is received by server in earlier point
2016-04-08 23:25:56 +09:00
Tatsuhiro Tsujikawa
df56f55f84
Assign nghttp2_frame.ext.payload early
2016-04-08 23:25:56 +09:00
Tatsuhiro Tsujikawa
31595c2416
Embed nghttp2_ext_frame_payload into nghttp2_outbound_item
2016-04-08 23:25:56 +09:00
Tatsuhiro Tsujikawa
795ee8c20f
altsvc: Receive ALTSVC frame
2016-04-08 23:25:56 +09:00
Tatsuhiro Tsujikawa
efbd48b122
altsvc: Add tx tests
2016-04-08 23:25:56 +09:00
Tatsuhiro Tsujikawa
9b4089c244
src: Log ALTSVC
2016-04-08 23:25:56 +09:00
Tatsuhiro Tsujikawa
8b5a85ae1d
altsvc: Add error handling about origin and stream_id
2016-04-08 23:25:56 +09:00
Tatsuhiro Tsujikawa
ecabef2dc7
altsvc: Add ALTSVC frame support
2016-04-08 23:25:56 +09:00
Tatsuhiro Tsujikawa
4a6fc6cede
src: Add missing source file to CMakeLists.txt
2016-04-08 23:19:54 +09:00
Tatsuhiro Tsujikawa
287d4e35f3
Merge branch 'nghttpx-downstream-live-check'
2016-04-08 23:07:30 +09:00
Tatsuhiro Tsujikawa
a803be9171
nghttpx: Check negotiated ALPN in LiveCheck
2016-04-08 23:07:17 +09:00
Tatsuhiro Tsujikawa
ece3654139
nghttpx: Remove unused function declaration
2016-04-08 23:07:17 +09:00
Tatsuhiro Tsujikawa
bf5392dafe
nghttpx: Use exponential backoff between failed connection attempts in LiveCheck
2016-04-08 23:07:17 +09:00
Tatsuhiro Tsujikawa
7bc35044c7
nghttpx: Add --backend-fall and --backend-rise options
...
These options are analogous to fall and rise parameter found in
haproxy.
2016-04-08 23:07:17 +09:00
Tatsuhiro Tsujikawa
f9b872ab78
nghttpx: Detect online/offline state of backend servers
2016-04-08 23:07:17 +09:00
Tatsuhiro Tsujikawa
ffddefc177
nghttpx: Refactor handling of negotiated ALPN
2016-04-08 23:06:37 +09:00
Tatsuhiro Tsujikawa
2a59c832c1
nghttpx: Set 0 to next_proto_len explicitly for clarification
2016-04-08 23:03:42 +09:00
Tatsuhiro Tsujikawa
ea5f424dec
nghttpx: Use gRPC's exponential backoff algorithm
2016-04-05 22:31:27 +09:00
Tatsuhiro Tsujikawa
46514074a4
nghttpx: Better load balancing between backend HTTP/2 servers
2016-04-03 15:09:01 +09:00
Tatsuhiro Tsujikawa
1816af4fb2
Update authors
2016-04-03 10:26:00 +09:00
Tatsuhiro Tsujikawa
b1662a31f4
nghttpx: Fix crash with backend failure
2016-04-03 00:23:44 +09:00
Tatsuhiro Tsujikawa
5974abad75
Run error callback when peer does not send initial SETTINGS frame
2016-04-02 18:20:49 +09:00
Tatsuhiro Tsujikawa
344541dd89
nghttpx: Better distribute load to backend h2 servers
2016-04-02 00:02:48 +09:00
Tatsuhiro Tsujikawa
c17b3b8517
clang-format
2016-03-31 20:06:14 +09:00
Tatsuhiro Tsujikawa
b26503f51c
Merge branch 'jchampio-dev/expect-continue'
2016-03-31 20:05:08 +09:00
Tatsuhiro Tsujikawa
2b22ec42c7
Merge branch 'dev/expect-continue' of https://github.com/jchampio/nghttp2 into jchampio-dev/expect-continue
2016-03-31 20:00:27 +09:00
Jacob Champion
dfdeeb3815
nghttp: only stop ContinueTimers if they exist
...
Fix a crash on disconnect if --expect-continue isn't actually in use.
2016-03-29 16:02:10 -07:00
Jacob Champion
4bed7854b5
nghttp: move ownership of ContinueTimer to Request
...
Each Request now owns its own (optional) ContinueTimer for
Expect/Continue handshakes. This removes the need for
shared_ptr/weak_ptr logic.
2016-03-29 13:11:27 -07:00
Jacob Champion
aa64e7ad3c
nghttp: stop ContinueTimers on response or reset
...
If the stream itself is reset, or the server sends a final response
immediately, any Expect/Continue handshake should be cancelled.
2016-03-29 12:41:28 -07:00
Tatsuhiro Tsujikawa
8667bbb823
Don't send WINDOW_UPDATE if session is being closed
2016-03-29 23:30:55 +09:00
Tatsuhiro Tsujikawa
1fef49aaa4
Merge branch 'tsing-patch-1'
2016-03-29 22:11:58 +09:00
Tatsuhiro Tsujikawa
e30edb096a
clang-format
2016-03-29 22:11:42 +09:00
Tatsuhiro Tsujikawa
cdb466956d
nghttpx: One more fix for usage help
2016-03-29 22:10:30 +09:00
Jianqing Wang
199600af73
Fix error messages on deprecated mode
2016-03-29 12:09:52 +08:00
Jacob Champion
edb874e659
nghttp: move ContinueTimer start to on_frame_send
...
The ContinueTimer could expire before the full HEADERS frame was
actually sent. By moving the call to timer->start() to the
on_frame_send_callback(), this race is fixed.
2016-03-28 15:24:20 -07:00
Tatsuhiro Tsujikawa
fe0843be88
nghttpx: Fix bug that logger wrote string which was not NULL-terminated
2016-03-28 22:22:26 +09:00
Tatsuhiro Tsujikawa
ff07018720
nghttpx: Fix bug that proxy with HTTP/1.1 CONNECT did not work
...
This was a regression in 5fbe4cc225 .
2016-03-28 22:05:38 +09:00
Tatsuhiro Tsujikawa
402eccf06d
Bump up version number to 1.10.0-DEV
2016-03-27 22:29:09 +09:00
Tatsuhiro Tsujikawa
0641d314a6
Update man pages
2016-03-27 22:07:50 +09:00
Tatsuhiro Tsujikawa
2928afa51f
Bump up version number to 1.9.1
2016-03-27 22:04:26 +09:00
Tatsuhiro Tsujikawa
757bcf1310
nghttpx: Fix bug that backend tls keyword did not work with -s option
2016-03-27 17:11:44 +09:00
Tatsuhiro Tsujikawa
c9aba4ea0c
nghttpx: Don't use data_prd.source.ptr
2016-03-27 16:57:43 +09:00
Tatsuhiro Tsujikawa
2cee80acf0
nghttpx: Fix handing stream after connection check was failed
2016-03-27 15:53:26 +09:00
Tatsuhiro Tsujikawa
d9a2ff278c
src: Use len instead of n for clarity
2016-03-27 15:52:24 +09:00
Tatsuhiro Tsujikawa
8a539420c2
Bump up version number to 1.10.0-DEV
2016-03-26 23:19:13 +09:00
Tatsuhiro Tsujikawa
371497968b
Update bash_completion
2016-03-26 23:03:59 +09:00
Tatsuhiro Tsujikawa
388d7a944a
Update man pages
2016-03-26 23:03:48 +09:00
Tatsuhiro Tsujikawa
afe724ecda
Bump up version number to 1.9.0, LT revision to 20:0:6
2016-03-26 22:59:09 +09:00
Tatsuhiro Tsujikawa
0d636893f1
Update AUTHORS
2016-03-26 22:08:28 +09:00
Tatsuhiro Tsujikawa
4ac9417d8d
Update doc
2016-03-26 21:45:38 +09:00
Tatsuhiro Tsujikawa
75110320ab
Update doc
2016-03-26 21:43:34 +09:00
Tatsuhiro Tsujikawa
8691ec4899
Update github links
2016-03-26 00:58:32 +09:00
Tatsuhiro Tsujikawa
b6e2214903
Update doc
2016-03-26 00:09:02 +09:00
Tatsuhiro Tsujikawa
7ec50e55c9
Update doc
2016-03-25 23:53:59 +09:00
Tatsuhiro Tsujikawa
ad8be7d474
src: parse_link_header takes StringRef
2016-03-25 23:51:42 +09:00
Tatsuhiro Tsujikawa
07926cffca
src: Remove lookup_method_token(const std::string&)
2016-03-25 23:31:46 +09:00
Tatsuhiro Tsujikawa
00b2d7d513
src: Remove lookup_token(const std::string&)
2016-03-25 23:29:16 +09:00
Tatsuhiro Tsujikawa
f74d7ea119
src: Don't allow const char * in starts_with
2016-03-25 23:20:48 +09:00
Tatsuhiro Tsujikawa
2bca6360b6
src: Don't allow const char * in istarts_with and istarts_with_l
2016-03-25 23:18:31 +09:00
Tatsuhiro Tsujikawa
841b3c87db
src: Don't allow const char * in ends_with and ends_with_l
2016-03-25 23:04:44 +09:00
Tatsuhiro Tsujikawa
2ab79f4938
src: Don't allow const char * in iends_with and iends_with_l
2016-03-25 23:00:34 +09:00
Tatsuhiro Tsujikawa
2182a85875
src: Make strifind functin template
2016-03-25 22:56:23 +09:00
Tatsuhiro Tsujikawa
72d8d78d36
src: Don't allow const char * in 2nd argument of streq_l(S[N], T)
2016-03-25 22:53:31 +09:00
Tatsuhiro Tsujikawa
dad61d032e
src: Don't allow const char * in 2nd argument of strieq_l(S[N], T)
2016-03-25 22:51:20 +09:00
Tatsuhiro Tsujikawa
1bbb241baa
src: Make streq(T, S) function template
2016-03-25 22:48:13 +09:00
Tatsuhiro Tsujikawa
3e6c38e3be
src: Made strieq(T, S) template
2016-03-25 22:45:33 +09:00
Tatsuhiro Tsujikawa
9272e80fa6
nghttpx: Fix compile error on travis
2016-03-25 02:28:10 +09:00
Tatsuhiro Tsujikawa
333dd73a18
Update man pages
2016-03-25 02:15:29 +09:00
Tatsuhiro Tsujikawa
8e84bbd781
Update doc
2016-03-25 02:15:02 +09:00
Tatsuhiro Tsujikawa
44af3dab50
nghttpx: Update doc
2016-03-25 02:14:39 +09:00
Tatsuhiro Tsujikawa
22128767e6
nghttpx: Fix formatting issue on manual page
2016-03-25 02:08:25 +09:00
Tatsuhiro Tsujikawa
f6b78a027c
Update doc
2016-03-25 01:57:00 +09:00
Tatsuhiro Tsujikawa
a46c815e4e
src: StringRef-fy
2016-03-25 01:41:06 +09:00
Tatsuhiro Tsujikawa
186d440168
nghttpx: More StringRef-fy
2016-03-25 01:19:42 +09:00
Tatsuhiro Tsujikawa
a9e365ad7d
fixup! nghttpx: More StringRef-fy
2016-03-25 01:10:48 +09:00
Tatsuhiro Tsujikawa
a104d8a80b
fixup! nghttpx: Use StringRef for SHRPX_UNIX_PATH_PREFIX
2016-03-25 01:10:25 +09:00
Tatsuhiro Tsujikawa
a5029d1eed
nghttpx: More StringRef-fy
2016-03-25 01:07:22 +09:00
Tatsuhiro Tsujikawa
848e45e333
nghttpx: Use StringRef for SHRPX_UNIX_PATH_PREFIX
2016-03-25 01:00:04 +09:00
Tatsuhiro Tsujikawa
7972593586
integration: Fix tests
2016-03-25 00:56:20 +09:00
Tatsuhiro Tsujikawa
79968c6374
src: Rewrite strifind
2016-03-25 00:27:59 +09:00
Tatsuhiro Tsujikawa
1699aef609
src: Remove strcompare
2016-03-25 00:16:25 +09:00
Tatsuhiro Tsujikawa
2d2d6c3cc0
src: Remove istarts_with(const char*) overload
2016-03-25 00:14:12 +09:00
Tatsuhiro Tsujikawa
bfccab9b9f
src: Remove starts_with(const char*, const char*) overload
2016-03-25 00:09:53 +09:00
Tatsuhiro Tsujikawa
17ccbae084
src: Don't compare against c-string
2016-03-25 00:07:21 +09:00
Tatsuhiro Tsujikawa
0875e66aab
src: Remove streq(const char *) overload
2016-03-25 00:02:07 +09:00
Tatsuhiro Tsujikawa
4dfae3484f
nghttpx: Refactor CertLookupTree interface
2016-03-24 23:35:15 +09:00
Tatsuhiro Tsujikawa
372123c178
nghttpx: Remove strieq(const char*, cosnt char*) overload, and fix unittests
2016-03-24 23:34:56 +09:00
Tatsuhiro Tsujikawa
13596bde90
nghttpx: Refactor option handling using StringRef
2016-03-24 22:15:58 +09:00
Jacob Champion
3b7b6a660e
nghttp: prevent ContinueTimer double-invocation
...
If a 100 Continue interim response was received after the continue
timeout was reached, dispatch_continue() would force a double submission
of DATA frames. This patch prevents dispatch_continue() from doing
anything if the timer callback has already been invoked. This makes
ContinueTimer a single-shot mechanism, as originally intended.
2016-03-23 09:09:13 -07:00
Tatsuhiro Tsujikawa
daa1ae3a45
nghttpx: Cosmetic change
2016-03-24 00:38:10 +09:00
Tatsuhiro Tsujikawa
44ee67ff71
nghttpx: Refactor split_host_port
2016-03-24 00:35:13 +09:00
Tatsuhiro Tsujikawa
144ae3af9d
nghttpx: Memcached connection encryption with tls keyword
...
Like frontend and backend options, encryption for memcached
connections is configured using tls keyword in
tls-session-cache-memcached and tls-ticket-key-memcached options.
tls-session-cache-memcached-tls and tls-ticket-key-memcached-tls
options are deprecated.
2016-03-24 00:22:13 +09:00
Tatsuhiro Tsujikawa
eec0b04a33
nghttpx: Enable/disable TLS per frontend address
...
This change allows user to disable TLS per frontend address using
no-tls keyword in --frontend option. We removed --frontend-no-tls in
favor of this new feature.
2016-03-23 23:56:09 +09:00
Tatsuhiro Tsujikawa
58b06f32a2
nghttpx: Configure TLS per backend routing pattern
...
We added "tls" parameter to --backend option to enable TLS on that
backend connection. --backend-tls options was deprecated, now is
noop.
2016-03-23 22:56:18 +09:00
Tatsuhiro Tsujikawa
5b58db39ff
nghttpx: Fix failure case when comparing backend address set
2016-03-23 22:13:53 +09:00
Jacob Champion
1bc5cf5ee4
nghttp: time out on long Expect/Continue waits
...
To deal with servers that don't conform to RFC 7231 (or, potentially,
connections with a large round-trip time), don't wait forever for a 100
Continue status to come back. Currently, the timeout is hard-coded to
one second.
A ContinueTimer encapsulates the handshake timeout logic for a single
request. Somewhat counterintuitively, ContinueTimers are owned by the
HttpClient instead of the Request object, because their lifetime must be
bound to the life of the connection (which is owned by the HttpClient
and not the Requests). A Request is associated with its corresponding
ContinueTimer through a std::weak_ptr.
2016-03-22 13:10:00 -07:00
Jacob Champion
f4c7ebcbca
nghttp: implement Expect/Continue handshake
...
Requests that expect a 100 Continue will not submit their DATA frames
until the server sends the interim response.
2016-03-22 13:10:00 -07:00
Jacob Champion
feb3d1b478
nghttp: add an --expect-continue option
...
Add a placeholder for the expect-continue option, which will perform an
Expect/Continue handshake for DATA uploads.
2016-03-22 13:10:00 -07:00
Tatsuhiro Tsujikawa
7c954c1ea7
nghttpx: Workaround for Ubuntu 15.04 which does not value-initialize on std::make_shared.
2016-03-23 01:32:17 +09:00
Tatsuhiro Tsujikawa
e9f4d0eec2
nghttpx: Properly log incoming GOAWAY from backend
2016-03-23 01:16:44 +09:00
Tatsuhiro Tsujikawa
4f9c78799c
nghttpd: Fix compile error with Android NDK
2016-03-23 01:16:02 +09:00
Tatsuhiro Tsujikawa
0f9ed40bd9
nghttpx: Share connection among different patterns if address set are same
2016-03-23 00:01:27 +09:00
Tatsuhiro Tsujikawa
4bb88b35ec
nghttpx: "*" must match at least one character
2016-03-22 22:40:23 +09:00
Tatsuhiro Tsujikawa
04145e22a2
Revert "nghttpx: Call setsid after executing new binary"
...
This reverts commit 6680d8b792 .
2016-03-22 00:21:32 +09:00
Tatsuhiro Tsujikawa
cca7e398fd
Update doc
2016-03-21 16:11:35 +09:00
Tatsuhiro Tsujikawa
3d04fe2a87
Update doc
2016-03-21 13:08:53 +09:00
Tatsuhiro Tsujikawa
c459034ae9
Update doc
2016-03-20 18:28:01 +09:00
Tatsuhiro Tsujikawa
442bd47535
Update bash_completion
2016-03-20 18:15:02 +09:00
Tatsuhiro Tsujikawa
5cea3e227c
Update man pages
2016-03-20 18:14:40 +09:00
Tatsuhiro Tsujikawa
db0a22e991
Update doc
2016-03-20 18:13:44 +09:00
Tatsuhiro Tsujikawa
dc3119303a
Rewrite concat_string_ref
2016-03-20 17:55:17 +09:00
Tatsuhiro Tsujikawa
d2b55ad1a2
nghttpx: Allow '*' in --error-page to be used as wildcard
2016-03-19 23:49:15 +09:00
Tatsuhiro Tsujikawa
d7051f5207
nghttpx: Add custom error pages
2016-03-19 23:41:21 +09:00
Tatsuhiro Tsujikawa
db1ee3aa88
nghttpd: Use StringRef
2016-03-19 20:57:40 +09:00
Tatsuhiro Tsujikawa
a1e0bd134e
nghttpx: Create at least the same number of h2 session as load balancing hosts
2016-03-19 12:00:27 +09:00
Tatsuhiro Tsujikawa
7a1e0eb618
integration: Disable tests that sometimes break randomly on travis
2016-03-19 11:50:01 +09:00
Tatsuhiro Tsujikawa
65b59bd78a
Include config.h from tests/*.h
2016-03-19 11:46:49 +09:00
Tatsuhiro Tsujikawa
dcae6efaa2
nghttpx: Rewrite Downstream::assemble_request_cookie using StringRef
2016-03-19 11:38:09 +09:00
Tatsuhiro Tsujikawa
71cc7a96c2
Merge branch 'Lekensteyn-cmake'
2016-03-19 11:35:27 +09:00
Tatsuhiro Tsujikawa
8da0d649e4
Merge branch 'cmake' of https://github.com/Lekensteyn/nghttp2 into Lekensteyn-cmake
2016-03-19 11:20:31 +09:00
Peter Wu
08c7656e47
travis: remove -DCMAKE_BUILD_TYPE=None
...
It was added because the default RelWithDebInfo type disabled
assertions, but now that -DNDEBUG is removed from its flags, it is not
necessary to change the build type anymore.
2016-03-17 23:34:14 +01:00
Peter Wu
bd253e1bdd
cmake: fix Windows build with CUnit
...
failmalloc and main tests succesfully pass the test now.
2016-03-17 23:32:07 +01:00
Peter Wu
d10f149161
cmake: fix Windows support
...
Fix Windows build by defining `ssize_t` when missing and adjusting the
install commands.
Add support for ENABLE_WERROR=1 while at it.
Tested with MSVC 2013 on Windows 7 x64.
2016-03-16 17:33:20 +01:00
Peter Wu
3a2a943fe9
cmake: do not fail without libxml2
...
Avoid adding a LIBXML2_LIBRARIES-NOTFOUND to the libraries list when it
is not found. Likewise for OpenSSL.
2016-03-16 17:33:10 +01:00
Peter Wu
f34971774b
cmake: use -std=c++11 instead of -std=gnu+11
...
Matches autotools behavior. The m4_if logic was misread...
2016-03-16 14:52:42 +01:00
Peter Wu
f8a9a21428
cmake: add _U_ and NGHTTP2_NORETURN to config.h
...
Do not add _U_ and NGHTTP2_NORETURN definitions to the command line,
instead add it to config.h. This matches what autotools does.
2016-03-16 14:25:58 +01:00
Peter Wu
0c49e5d56e
cmake: enable assertions by default
...
Users can disable this by setting -DCMAKE_C_FLAGS=-DNDEBUG or
-DCMAKE_CXX_FLAGS=-DNDEBUG to disable assertions as desired.
2016-03-16 14:10:42 +01:00
Tatsuhiro Tsujikawa
e84755eb35
Merge pull request #542 from Lekensteyn/build-fixes
...
src/Makefile.am: fix missing allocator.h
2016-03-15 23:44:20 +09:00
Peter Wu
b348a02b85
cmake: fix printed C/CXX flags
...
Build type-specific flags are added before other flags, reflect this in
the output.
2016-03-15 13:58:53 +01:00
Peter Wu
439636c579
cmake: set CMAKE_BUILD_TYPE=RelWithDebInfo by default
...
NOTE: RelWithDebInfo *disables* assertions by default. To keep
assertions, use CMAKE_BUILD_TYPE=Debug or CMAKE_BUILD_TYPE=None.
2016-03-15 13:40:15 +01:00
Peter Wu
162b1c5e03
cmake: only install ASIO headers when requested
2016-03-15 00:02:46 +01:00
Peter Wu
dc56b951df
src/Makefile.am: fix missing allocator.h
...
Fix regression from v1.8.0-38-gbae37e3 breaking distcheck.
2016-03-14 17:49:23 +01:00
Peter Wu
4d801cd696
travis: add cmake to build matrix
...
Add Nathan's PPA for cmake 3.2.3 (3.0 or newer is required).
2016-03-14 17:26:59 +01:00
Peter Wu
7c55c335cc
Merge branches 'master' and 'cmake-updated' into cmake
...
Update to latest master with appropriate cmake changes at the same time.
2016-03-14 17:26:15 +01:00
Peter Wu
2ddb83206b
cmake: sync with v1.8.0-63-g37b09f6
...
Adds missing source files and configure.ac changes since
v1.7.0-93-g093eb51.
2016-03-14 17:20:37 +01:00
Tatsuhiro Tsujikawa
ab734f09b6
nghttpx: Fix possible crash in rare case
2016-03-15 00:46:15 +09:00
Tatsuhiro Tsujikawa
dd2bdf3e31
nghttpx: Update doc
2016-03-14 23:53:10 +09:00
Tatsuhiro Tsujikawa
a909bb3eca
nghttpx: Initialize proto field
2016-03-14 23:47:29 +09:00
Tatsuhiro Tsujikawa
aaebeceded
Merge pull request #538 from Jan-E/master
...
Fixes and improvements for Makefile.MSVC
2016-03-14 23:00:23 +09:00
Tatsuhiro Tsujikawa
3de435d7b8
contrib: Use simple form in prerequisites
2016-03-14 22:57:26 +09:00
Tatsuhiro Tsujikawa
01408209d8
nghttpx: Fix the bug that forwarded query contains duplicated '?'
...
This change also fixes that bug that the multiple '/' at the start of
request were not coalesced into one.
2016-03-14 22:20:00 +09:00
Jan-E
e8b62c620d
Revert change of NGHTTP2_VERSION_NUM, keep the parentheses around VERSION_NUM, not in the sed -e
2016-03-14 14:13:19 +01:00
Tatsuhiro Tsujikawa
2eb7137e04
Merge branch 'Lekensteyn-autotools-it'
2016-03-14 21:15:59 +09:00
Tatsuhiro Tsujikawa
caa12ec587
Merge branch 'autotools-it' of https://github.com/Lekensteyn/nghttp2 into Lekensteyn-autotools-it
2016-03-14 21:12:33 +09:00
Jan-E
0f71fbce8d
Generate nghttp2ver.h before compiling
2016-03-13 18:57:58 +01:00
Jan-E
4e2972a5dc
Use string for NGHTTP2_VERSION_NUM, e.g 0x010800: do not add parentheses
2016-03-13 18:43:44 +01:00
Jan-E
78e5417ff2
Remove -nologo: not used in VC11/VC14, throws error in VC9
2016-03-13 18:31:14 +01:00
Jan-E
77852cf572
Use string for NGHTTP2_VERSION_NUM, e.g 0x010800
2016-03-13 18:24:32 +01:00
Jan-E
fa36537f82
Detect version for releases en dev versions
2016-03-13 18:18:22 +01:00
Jan-E
4cde76c9c3
Do not use Cython by default
2016-03-13 18:13:46 +01:00
Jan-E
e02512032b
Fix missing external symbol nghttp2_rcbuf_new2
2016-03-13 18:12:39 +01:00
Peter Wu
b092166bc6
cmake: clean more files, fix python dependency
...
Remove generated documentation, python and mruby build artifacts.
Note that this does not work for Ninja, Makefile works fine though.
2016-03-13 17:36:03 +01:00
Tatsuhiro Tsujikawa
e58db4f8b0
Attempt to fix compile error with msvc
2016-03-14 00:54:02 +09:00
Peter Wu
dad222b8f4
cmake: fix jemalloc, libevent include dirs
...
Caught with cmake --warn-uninitialized.
2016-03-13 16:42:35 +01:00
Peter Wu
e80977c812
integration-tests: do not use recursive target
...
Older automake (travis, *cough*) do not support the
AM_EXTRA_RECURSIVE_TARGETS option, this results in invoking "it-local"
directly in the travis script which relies on an implementation detail.
Since the "it" target is only used by the integration-tests directory,
just avoid the recursive targets. The README.rst suggests to enter the
integration-tests directory anyway.
2016-03-13 15:40:17 +01:00
Peter Wu
2b3bc710fc
cmake: fix version checks for external packages
...
The name passed to find_package should match the one that is passed to
find_package_handle_standard_args, otherwise the version matching is not
properly done. The names are based on the FindXXX.cmake filename.
This also simplifies components reporting for Libevent (done by
find_package_handle_standard_args) and results in reporting a library
instead of include directory when found.
2016-03-13 15:06:56 +01:00
Peter Wu
a45540fd79
Lower libev version requirement
...
libev 4.11 seems to build fine as demonstrated by Travis with autotools.
2016-03-13 13:15:50 +01:00
Peter Wu
7f8110601e
cmake: fix compatibility with cmake before 3.3
...
The COMPILE_LANGUAGE generator expression is only supported since CMake
3.3. Moreover, it does not work with all generators (works with Makefile
and Ninja, but not with Visual Studio).
target_compile_options would only work if a target does not mix C and
C++ sources, since the flags are intended to be set for a specific
language, use set_source_files_properties instead. This approach is also
less repetitive.
Drop the idea of using lists and COMPILE_OPTIONS,
set_source_files_properties only understands COMPILE_FLAGS (a single
string, not a list).
2016-03-13 12:30:41 +01:00
Tatsuhiro Tsujikawa
37b09f6785
Use %u for uint8_t for formatting
2016-03-13 18:25:30 +09:00
Tatsuhiro Tsujikawa
2a606bae4c
Add nghttp2_error_callback to tell application human readable error message
2016-03-13 18:22:52 +09:00
Tatsuhiro Tsujikawa
3b2811bfc4
nghttpx: Remove AltSvc ctor
2016-03-13 14:01:59 +09:00
Tatsuhiro Tsujikawa
27275a02ac
nghttpx: Remove unused EMPTY_STRING
2016-03-13 13:59:06 +09:00
Tatsuhiro Tsujikawa
34d209b30b
nghttpx: Add wildcard host routing
...
This change allows host pattern in --backend to include '*' to
indicate wildcard match. The wildcard match is made in suffix match
only.
2016-03-13 01:01:34 +09:00
Tatsuhiro Tsujikawa
94f52d49dc
BlockAllocator: Delete copy ctor and assignment operator
2016-03-12 21:25:53 +09:00
Tatsuhiro Tsujikawa
0720671e0a
Merge branch 'nghttpx-block-allocator'
2016-03-12 21:21:34 +09:00
Tatsuhiro Tsujikawa
0ee09320e0
src: Remove unused value_to_str
2016-03-12 21:13:09 +09:00
Tatsuhiro Tsujikawa
78fcb2143f
Update doc
2016-03-12 21:13:09 +09:00
Tatsuhiro Tsujikawa
755b14de5d
src: Unify path_join implementation
2016-03-12 21:13:09 +09:00
Tatsuhiro Tsujikawa
3455cb35e4
nghttpx: Rewrite create_forwarded to use BlockAllocator
2016-03-12 21:13:09 +09:00
Tatsuhiro Tsujikawa
c1571a3209
src: Rewrite xff handling
2016-03-12 21:13:09 +09:00
Tatsuhiro Tsujikawa
67569486d1
src: Rewrite http:create_via_header_value
2016-03-12 21:13:09 +09:00
Tatsuhiro Tsujikawa
d64051fedc
src: Return StringRef from http2::stringify_status
2016-03-12 21:13:09 +09:00
Tatsuhiro Tsujikawa
c897d5b294
src: Use StringRef in parse_http_date
2016-03-12 21:13:09 +09:00
Tatsuhiro Tsujikawa
863a944179
src: Add specialization for char to avoid reinterpret_cast in constexpr
2016-03-12 21:13:09 +09:00
Tatsuhiro Tsujikawa
3db9c2c796
Remove extra tokenization of header names; they are not effective at best
2016-03-12 21:13:09 +09:00
Tatsuhiro Tsujikawa
12dad32890
Add nghttp2_on_header_callback2
2016-03-12 21:13:09 +09:00
Tatsuhiro Tsujikawa
689d2a1afb
Fix compile error with --enable-debug
2016-03-12 21:12:27 +09:00
Tatsuhiro Tsujikawa
ff0d137fb3
Reference counted HPACK name/value pair
2016-03-12 21:12:27 +09:00
Tatsuhiro Tsujikawa
8da20975f9
Always allocate buffer for name, and value
2016-03-12 21:12:26 +09:00
Tatsuhiro Tsujikawa
eb393985b7
nghttpx: Make a copy before adding header to Downstream
2016-03-12 21:12:26 +09:00
Tatsuhiro Tsujikawa
7a412df9a5
nghttpx: Fix tests
2016-03-12 21:12:26 +09:00
Tatsuhiro Tsujikawa
b1b57cc740
nghttpx: Use StringRef for authority, scheme and path
2016-03-12 21:12:26 +09:00
Peter Wu
bdb6581990
Add CMake-related files to EXTRA_DIST
2016-03-12 01:38:12 +01:00
Peter Wu
618073e2b4
cmake: add "check" target
...
Add a "check" target that builds tests before running them.
2016-03-12 00:57:30 +01:00
Tatsuhiro Tsujikawa
fa601e5ba3
Add isolation_threshold, use field to store block size rather than template parameter
2016-03-09 21:25:11 +09:00
Tatsuhiro Tsujikawa
bae37e3e4a
nghttpx: Add custom memory allocator mainly for header related objects
2016-03-09 21:16:28 +09:00
Tatsuhiro Tsujikawa
907eeeda8a
src: Return StringRef from util::get_uri_field
2016-03-08 21:38:15 +09:00
Tatsuhiro Tsujikawa
fe6ccd16da
nghttpx: Change read timeout reset timing
2016-03-05 19:11:36 +09:00
Tatsuhiro Tsujikawa
10ec00126c
src: Don't process rel=preload again once we found it
2016-03-04 23:00:33 +09:00
Tatsuhiro Tsujikawa
2d6211c455
asio: Fix bug that server event loop breaks with exception
...
This can happen when we call throwing version of
basic_stream_socket::remote_endpoint() call while client disconnected.
2016-03-04 22:43:36 +09:00
Tatsuhiro Tsujikawa
e302cc9c16
src: Simplify function parameter using StringRef
2016-03-04 00:38:43 +09:00
Tatsuhiro Tsujikawa
3f2b54cfc4
src: Refactor using StringRef
2016-03-04 00:33:35 +09:00
Tatsuhiro Tsujikawa
acbf38fd3c
src: Refactor using StringRef, simplify function parameters
2016-03-04 00:26:59 +09:00
Tatsuhiro Tsujikawa
1e8bea15e5
src: Use StringRef inside LinkHeader
2016-03-03 23:31:44 +09:00
Tatsuhiro Tsujikawa
aaf0177318
src: Use str_size
2016-03-03 23:23:51 +09:00
Tatsuhiro Tsujikawa
9afc017532
src: Don't push if Link header field includes nopush
2016-03-03 23:20:32 +09:00
Tatsuhiro Tsujikawa
5da38b22c0
h2load: Fix bug that it did not try to connect to server again
2016-03-02 22:24:14 +09:00
Tatsuhiro Tsujikawa
ce61f62644
h2load: Fix bug that initial max concurrent streams was too large
2016-03-02 21:18:42 +09:00
Peter Wu
2c525f2471
cmake: ignore "make install" artifact
2016-02-29 16:20:31 +01:00
Peter Wu
5bbcb7148c
cmake: update .gitignore files
2016-02-29 16:13:19 +01:00
Peter Wu
8bca2d1048
cmake: fix libevent binary names
...
Match the output produced by autotools (libevent-client instead of
libevent_client).
2016-02-29 16:11:26 +01:00
Peter Wu
d6c3b6e84c
cmake: fix mruby dependency
...
Ensure that the mruby build is triggered when the surrogate "mruby-lib"
target is used. Fixes building nghttpx when mruby is missing.
2016-02-29 16:00:08 +01:00
Tatsuhiro Tsujikawa
e453759637
Add nghttp2_option_set_no_auto_ping_ack() option
...
This option prevents the nghttp2 library from sending PING frame with
ACK flag set in the reply to incoming PING frame. To allow the
application to send PING with ACK flag set, nghttp2_submit_ping() now
recognizes NGHTTP2_FLAG_PING in its flags parameter.
2016-02-29 23:39:50 +09:00
Tatsuhiro Tsujikawa
a21c87d11c
Add nghttp2_http2_strerror() to return HTTP/2 error code string
2016-02-29 23:10:20 +09:00
Tatsuhiro Tsujikawa
478fde5fef
nghttpx: Fix compile error
2016-02-29 01:16:45 +09:00
Tatsuhiro Tsujikawa
bffc0ec87a
Update doc
2016-02-29 01:00:03 +09:00
Tatsuhiro Tsujikawa
1b9b03b68f
Update man pages
2016-02-29 00:55:16 +09:00
Tatsuhiro Tsujikawa
a59445ccff
Merge branch 'nghttpx-rewrite-h2-coalesce'
2016-02-29 00:52:19 +09:00
Tatsuhiro Tsujikawa
c2ec73302d
integration: Fix tests + gofmt
2016-02-29 00:37:51 +09:00
Tatsuhiro Tsujikawa
284691253f
nghttpx: Use StringRef for http::create_forwarded parameter
2016-02-29 00:05:32 +09:00
Tatsuhiro Tsujikawa
124d4c9fad
src: Fix tests
2016-02-29 00:05:32 +09:00
Tatsuhiro Tsujikawa
5fbe4cc225
nghttpx: Clear upgrade_request flag when Downstream is attached to HTTP/2 backend
2016-02-28 23:21:57 +09:00
Tatsuhiro Tsujikawa
df6466cfbd
nghttpx: Update doc
2016-02-28 23:15:57 +09:00
Tatsuhiro Tsujikawa
2326337d32
nghttpx: Deprecate backend-http1-connections-per-host in favor of backend-connections-per-host
2016-02-28 22:15:49 +09:00
Tatsuhiro Tsujikawa
06921f35f3
nghttpx: Restructure mode settings
...
It is very hard to support multiple protocols in backend while
retaining multiple mode settings. Therefore, we dropped modes except
for default and HTTP/2 proxy mode. The other removed modes can be
emulated using combinations of options. Now the backend connection is
not encrypted by default. To enable encryption on backend connection,
use --backend-tls option.
2016-02-28 21:35:26 +09:00
Tatsuhiro Tsujikawa
44d3801760
nghttpx: Deprecate backend-http1-connections-per-frontend in favor of backend-connections-per-frontend
2016-02-28 17:11:12 +09:00
Tatsuhiro Tsujikawa
1832f78684
nghttpx: Move downstream proto to DownstreamAddrGroup
2016-02-28 16:56:14 +09:00
Tatsuhiro Tsujikawa
e7601cde8a
nghttpx: Don't share session which is already in draining state
2016-02-28 12:41:34 +09:00
Tatsuhiro Tsujikawa
36f6a009b8
nghttpx: Effectively disable backend HTTP/2 connection flow control
...
This is required to avoid session stall because of too slow frontend
connection.
2016-02-28 00:19:18 +09:00
Tatsuhiro Tsujikawa
1e1752266f
Update doc
2016-02-28 00:19:18 +09:00
Tatsuhiro Tsujikawa
aafcc55006
nghttpx: Deprecate --http2-max-concurrent-streams option
...
We added 2 new option instead: --frontend-http2-max-concurrent-streams
and --backend-http2-max-concurrent-streams.
2016-02-28 00:19:18 +09:00
Tatsuhiro Tsujikawa
c731d1fea5
nghttpx: Deprecate --backend-http2-connections-per-worker option
2016-02-28 00:19:18 +09:00
Tatsuhiro Tsujikawa
aa892e4d37
nghttpx: Share TLS session cache between HTTP/2 and HTTP/1 backend
2016-02-28 00:19:18 +09:00
Tatsuhiro Tsujikawa
8ca3e5f6ba
nghttpx: Separate Downstream address group from config to runtime
2016-02-28 00:19:18 +09:00
Tatsuhiro Tsujikawa
21007da392
nghttpx: Rewrite backend HTTP/2 connection coalesce strategy
...
Previously, we use one Http2Session object per DownstreamAddrGroup.
This is not flexible, and we have to provision how many HTTP/2
connection is required in advance. The new strategy is we add
Http2Session object on demand. We measure the number of attached
downstream connection object and server advertised concurrency limit.
As long as former is smaller than the latter, we attach new downstream
connection to it. Once the limit is reached, we create new
Http2Session object. If the number lowers the limit, we start to
share Http2Session object again.
2016-02-28 00:19:18 +09:00
Tatsuhiro Tsujikawa
9eeac27966
makerelease.sh: Remove duplicate git module update --init
2016-02-26 00:57:34 +09:00
Tatsuhiro Tsujikawa
e6ff7e1e4a
Bump up version number to 1.9.0-DEV
2016-02-26 00:53:42 +09:00
Tatsuhiro Tsujikawa
d1f9f9a3aa
makerelease.sh: Add autoreconf
2016-02-26 00:00:52 +09:00
Tatsuhiro Tsujikawa
2415a22757
h2load: Fix uninitialized fields
2016-02-26 00:00:24 +09:00
Tatsuhiro Tsujikawa
887d4d2a41
Update bash_completion
2016-02-25 23:35:44 +09:00
Tatsuhiro Tsujikawa
1c8e625045
Update man pages
2016-02-25 23:35:23 +09:00
Tatsuhiro Tsujikawa
36e931e0d7
Bump up version number to 1.8.0, LT revision to 19:0:5
2016-02-25 23:33:16 +09:00
Tatsuhiro Tsujikawa
31d4077638
Remove files copied in the rule for apiref.rst target
2016-02-25 23:18:21 +09:00
Tatsuhiro Tsujikawa
c098b4ac70
nghttpx: Remove --backend-tls-session-cache-per-worker option
2016-02-25 22:46:25 +09:00
Tatsuhiro Tsujikawa
32446a5197
Revert "Update doc"
...
This reverts commit 8aac5d6af2 .
2016-02-25 21:19:38 +09:00
Tatsuhiro Tsujikawa
40c1b29f36
Handle extension frame in session_inbound_frame_reset
2016-02-25 21:18:59 +09:00
Tatsuhiro Tsujikawa
bc933e9981
src: Use lowercase to show it is not the name of frame
2016-02-25 21:18:09 +09:00
Tatsuhiro Tsujikawa
ba34e911e1
Merge branch 'simple-extensions'
2016-02-25 01:00:35 +09:00
Tatsuhiro Tsujikawa
8aac5d6af2
Update doc
2016-02-25 00:58:50 +09:00
Tatsuhiro Tsujikawa
56bdfd1df2
Revert "Handle extension frame in session_inbound_frame_reset"
...
This reverts commit dbffb8995b .
2016-02-25 00:58:24 +09:00
Tatsuhiro Tsujikawa
dbffb8995b
Handle extension frame in session_inbound_frame_reset
2016-02-25 00:45:24 +09:00
Tatsuhiro Tsujikawa
ebfae904ab
Fix typo
2016-02-25 00:32:17 +09:00
Tatsuhiro Tsujikawa
827abb57e9
Simplified bitfield calculation of extension frame
2016-02-24 23:59:01 +09:00
Tatsuhiro Tsujikawa
9aee43f7d8
Update doc for extension frames
2016-02-24 23:51:00 +09:00
Tatsuhiro Tsujikawa
34bf153653
Merge branch 'master' into simple-extensions
2016-02-24 23:21:03 +09:00
Tatsuhiro Tsujikawa
2782ef67de
nghttpd: Remove unused function
2016-02-23 01:18:52 +09:00
Tatsuhiro Tsujikawa
9d15f9b00d
nghttpd: Start SETTINGS timer after it is written to output buffer
2016-02-23 01:18:07 +09:00
Tatsuhiro Tsujikawa
3e72711e23
Cap 100 limit for remembering idle streams
2016-02-23 01:09:45 +09:00
Tatsuhiro Tsujikawa
f4bb8776d0
mruby: Clean up mrbgems as well
2016-02-23 01:06:23 +09:00
Tatsuhiro Tsujikawa
95ffb4565f
Update nghttpx documentation
2016-02-21 18:20:53 +09:00
Tatsuhiro Tsujikawa
f3a415f623
Update nghttpx documentation
2016-02-21 17:47:27 +09:00
Tatsuhiro Tsujikawa
936d4aca1a
Update h2load documentation
2016-02-21 17:46:48 +09:00
Tatsuhiro Tsujikawa
216ae0a328
Update nghttpx documentation
2016-02-21 17:36:10 +09:00
Tatsuhiro Tsujikawa
9672bc322f
src: Remove unused functions
2016-02-21 16:51:46 +09:00
Tatsuhiro Tsujikawa
b68be1e1fb
src: Make token of type int32_t; we have no reason to use int16_t
2016-02-21 16:44:00 +09:00
Tatsuhiro Tsujikawa
f2a7275700
nghttpx: Cache TLS session inside DownstreamAddr object
2016-02-21 16:35:43 +09:00
Tatsuhiro Tsujikawa
177d0a513f
nghttpx: More logging for backend connection initiation
2016-02-21 16:11:50 +09:00
Tatsuhiro Tsujikawa
dfc02843b6
src: Rename and rewrite numeric_hostport as to_numeric_addr and support AF_UNIX path
2016-02-21 15:28:11 +09:00
Tatsuhiro Tsujikawa
11c8803b92
nghttpx: Worker wide blocker which is used when socket(2) is failed
2016-02-21 15:27:19 +09:00
Tatsuhiro Tsujikawa
c9a4f293a1
nghttpx: ConnectBlocker per backend address
2016-02-21 14:53:06 +09:00
Tatsuhiro Tsujikawa
61579ad20f
nghttpx: Use StringRef for shrpx::add_header
2016-02-20 23:30:02 +09:00
Tatsuhiro Tsujikawa
9678daa46a
nghttpx: Rename index_headers() as parse_content_length()
2016-02-20 23:30:02 +09:00
Tatsuhiro Tsujikawa
23ecfd412d
nghttpx: Fix mruby compile error, clean up add_header interface
2016-02-20 23:30:02 +09:00
Tatsuhiro Tsujikawa
3ff148811b
nghttpx: Use StringRef for add_hedeader
2016-02-20 23:30:02 +09:00
Tatsuhiro Tsujikawa
6f1347fc8b
nghttpx: Tokenize trailer field as well so that we can ditch prohibited headers in HTTP/2
2016-02-20 23:30:02 +09:00
Tatsuhiro Tsujikawa
1703201084
nghttpx: Get rid of hdidx
2016-02-20 23:30:02 +09:00
Tatsuhiro Tsujikawa
7921029e33
Tokenize extra HTTP header fields
...
The extra HTTP header fields are compiled from
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers ,
https://en.wikipedia.org/wiki/List_of_HTTP_header_fields , and
https://www.owasp.org/index.php/List_of_useful_HTTP_headers .
2016-02-20 23:30:02 +09:00
Tatsuhiro Tsujikawa
b7159f80b2
Eliminate the possibility of nghttp2_stream.cycle overflow
2016-02-18 23:56:29 +09:00
Peter Wu
9c874bf9b5
cmake: rename nghttpx-bin target to nghttpx
...
`ninja nghttpx` would create the static library, but I expected a binary
`nghttpx` instead. Rename the nghttpx target to nghttpx_static and
nghttpx-bin to nghttpx.
2016-02-18 14:20:35 +01:00
Peter Wu
9ab5ef3b5b
cmake: make find_package non-QUIET
...
Also fix useless MRUBY_LIBRARIES output and add the CMake build type
(e.g. Release, Debug, etc.)
2016-02-16 16:29:39 +01:00
Tatsuhiro Tsujikawa
f0b5a8db8c
Add unistd.h to test initgroups() declaration
2016-02-17 00:26:34 +09:00
Peter Wu
4814d14db5
cmake: fix installing nghttp2_asio.pc, manpages, README.rst
2016-02-16 16:25:50 +01:00
Peter Wu
77e8190b6c
cmake: fix symbol visibility issues
...
libnghttp2.so was missing -fvisibility=hidden. libnghttp2_asio.so on the
other hand had hidden visibility which resulted in no exported symbols
and a broken asio client examples.
Just build a static nghttp2 library to solve this issue.
2016-02-16 16:04:01 +01:00
Peter Wu
f4b2a4ab00
cmake: always enable warnings without -Werror
...
Warnings are useful, let's enable them by default.
2016-02-16 14:57:05 +01:00
Peter Wu
a909eb6b23
cmake: fix linking http-parser into shared libs
2016-02-16 14:09:10 +01:00
Peter Wu
3dd57e1f59
cmake: fix feature availability reporting
...
Some detected libraries were not reported when a feature is disabled.
This change removes unnecessary second find_package calls and sets
HAVE_xxx immediately based on xxx_FOUND.
2016-02-16 14:01:44 +01:00
Peter Wu
1b67b2d33e
cmake: improve Spdylay detection
...
Auto-detect spdylay availability using CMake, making pkg-config
completely optional.
2016-02-16 12:48:36 +01:00
Peter Wu
9bc6dc7113
cmake: add python support
...
FindCython.cmake was taken from
https://github.com/thewtex/cython-cmake-example . The UseCython module
works, but since it is lacking an installation target setup.py will be
used instead.
2016-02-16 12:17:49 +01:00
Peter Wu
f407f7f406
cmake: add mruby support, fix tests dir
...
mruby is always invoked now (mirrors the autotools behavior). It could
be optimized though to only trigger the mruby build when the static
library is missing.
Also fix typo in NGHTTP2_TESTS_DIR macro definition (detected when
invoking the Ninja generator).
2016-02-15 23:14:27 +01:00
Tatsuhiro Tsujikawa
094168a58f
Merge branch 'Lekensteyn-tests-fixes'
2016-02-16 00:08:08 +09:00
Peter Wu
474ecc4b47
cmake: add neverbleed support
2016-02-15 10:50:31 +01:00
Peter Wu
0afc21c9d8
cmake: fix compilation in lib
...
Need to add -fPIC to objects that will be put in a shared library.
2016-02-15 10:49:55 +01:00
Peter Wu
63e43bff99
tests: remove unused macros
...
Since v0.6.2-7-g1d138ac ("Unify DATA and other frames in
nghttp2_outbound_item and save malloc()"), the macros are unused and the
builds fails on -Werror=unused-macros.
2016-02-15 10:20:13 +01:00
Peter Wu
8c46d9181f
cmake: process tests directory
...
Split the nghttp2 library into objects and a shared library from those
objects. This is needed because of symbol visibility. An advantage over
the autotools build is that there are no worries about static versus
static library builds.
Test:
cmake $srcdir
make nghttpx-unittest main failmalloc
make test
2016-02-15 01:57:13 +01:00
Peter Wu
cc92ebf471
cmake: add auto-detection, improve library search
...
Add auto-detection to the most important features (app, hpack, etc.).
Move options to a separate file for easier search.
Add cmake-based Libevent, jansson and CUnit search. Move pkg-config
handling for Libev and jemalloc to their cmake files.
Note: duplicates find_package before including CMakeOptions.txt and when
checking for features. Maybe that can be cleaned up later...
2016-02-15 01:12:07 +01:00
Tatsuhiro Tsujikawa
02b7116d42
Merge branch 'nghttpx-replace-unique-ptr-char-with-immutable-string'
2016-02-14 22:36:48 +09:00
Tatsuhiro Tsujikawa
aa3373a107
nghttpx: Use ImmutableString for mruby_file
2016-02-14 22:27:59 +09:00
Tatsuhiro Tsujikawa
7aabc6b125
nghttpx: Use ImmutableString for user
2016-02-14 22:21:55 +09:00
Tatsuhiro Tsujikawa
466e4b7a1e
nghttpx: Use ImmutableString for conf_path
2016-02-14 22:20:10 +09:00
Tatsuhiro Tsujikawa
76a425226f
nghttpx: Use ImmutableString for pid_file
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
2b707bff27
nghttpx: Use ImmutableString for log file
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
9055323b67
nghttpx: Use ImmutableString for request_header_file and response_header_file
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
67804cfc8c
nghttpx: Use ImmutableString for ciphers
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
2344932b45
nghttpx: Use ImmutableString for dh_param_file
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
35ebdd35bc
nghttpx: Use ImmutableString for private_key_file
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
ac81003669
nghttpx: Use ImmutableString for cert_file
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
c999987baf
nghttpx: Use ImmutableString for private_key_file
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
529a59d309
nghttpx: Use ImmutableString for tls.client_verify.cacert
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
52f6417813
nghttpx: Use ImmutableString for tls.cacert
2016-02-14 22:17:00 +09:00
Peter Wu
c96cf1b303
cmake: improve final variable list
...
Remove build/host/target by a single target system name (CMake is
different for cross-compiling, you are suggested to set
CMAKE_TOOLCHAIN_FILE).
Fix various library variables, remove CFLAGS (INCLUDE_DIRS could be used
instead though, but I consider that minor information that could be
added later if wanted).
Fix various variable names (prefix, boost, etc.).
2016-02-14 13:22:32 +01:00
Tatsuhiro Tsujikawa
660bc389e6
nghttpx: Use ImmutableString for fetch_ocsp_response_file
2016-02-14 21:01:54 +09:00
Tatsuhiro Tsujikawa
bfc26e8299
nghttpx: Use ImmutableString to store memcached server host
2016-02-14 20:59:10 +09:00
Tatsuhiro Tsujikawa
47106c0756
Merge branch 'nghttpx-refactor-downstream-addr-group'
2016-02-14 20:49:30 +09:00
Tatsuhiro Tsujikawa
49fa914db5
nghttpx: Use StringRef for string parameters in match_downstream_addr_group
2016-02-14 20:48:06 +09:00
Tatsuhiro Tsujikawa
93eabc642b
nghttpx: Use StringRef for parameter in Router::match
2016-02-14 19:07:22 +09:00
Tatsuhiro Tsujikawa
2d273f8237
nghttpx: Use StringRef for pattern paramter in Router::add_route
2016-02-14 18:55:53 +09:00
Tatsuhiro Tsujikawa
a53f0f0a17
nghttpx: Refactor DownstreamAddrGroup and router API
2016-02-14 18:47:24 +09:00
Tatsuhiro Tsujikawa
1bd98dcf4f
nghttpx: Remove user defined ctor/assignment op from DownstreamAddr
2016-02-14 18:31:08 +09:00
Tatsuhiro Tsujikawa
eebed206c9
Add Architecture doc
2016-02-14 18:23:28 +09:00
Tatsuhiro Tsujikawa
fe74600a5f
List all contributors in AUTHORS
2016-02-14 17:40:58 +09:00
Tatsuhiro Tsujikawa
08e2d7cdb3
Merge branch 'Lekensteyn-build-fixes'
2016-02-14 16:59:30 +09:00
Peter Wu
503f0a29a7
cmake: add integration-tests
2016-02-13 20:13:43 +01:00
Peter Wu
ee285fa5da
cmake: process script/
2016-02-13 20:13:43 +01:00
Peter Wu
8c562bd38d
cmake: process contrib/
2016-02-13 20:13:43 +01:00
Peter Wu
15adc23277
cmake: working doc (sphinx-build), out-of-tree!
2016-02-13 20:13:43 +01:00
Peter Wu
a2ec695ec9
cmake: add python stub
...
Might not be the best approach, maybe use thewtex/cython-cmake-example?
2016-02-13 20:13:43 +01:00
Peter Wu
55b270587b
cmake: build examples
2016-02-13 20:13:43 +01:00
Peter Wu
5297136bc0
cmake: use PRIVATE instead of PUBLIC
...
Avoids leaking compile flags to dependents.
2016-02-13 20:13:43 +01:00
Peter Wu
61bb6428fd
cmake: add third-party and src
...
Remaining work:
- integrate mruby and neverbleed
- integrate cunit
2016-02-13 20:13:42 +01:00
Peter Wu
ccd2d34160
cmake: Install headers
2016-02-13 20:13:42 +01:00
Peter Wu
ea6eed10c7
cmake: fix version in soname
2016-02-13 20:13:42 +01:00
Peter Wu
7a86758edb
cmake: Fix libnghttp2.pc paths
...
Must be absolute instead of relative
2016-02-13 20:13:42 +01:00
Peter Wu
90d66ea4a9
cmake: fix detection of -Werror flag
...
Do not use minus sign in macro names.
2016-02-13 20:13:42 +01:00
Peter Wu
5b21c39bb2
cmake: add lib, add versioning info, install lib
...
Also remove some headers which were not checked anyway and add macros to
cmakeconfig.h.in (based on the headers list in the CMakeLists.txt file).
2016-02-13 20:13:42 +01:00
Peter Wu
744e80d579
cmake: Fill in auto-tools compatible paths
2016-02-13 20:13:42 +01:00
Peter Wu
3842fe175c
cmake: attempt to get diagnostic output right
2016-02-13 20:13:42 +01:00
Peter Wu
900667a998
cmake: moar .in file via configure_file
2016-02-13 20:13:42 +01:00
Peter Wu
147e098827
cmake: test for warning flags
2016-02-13 20:13:42 +01:00
Peter Wu
5819d03c68
cmake: more functions
...
AC_CHECK_TYPES and AC_C_BIGENDIAN were removed because nothing checks
the resulting macros...
2016-02-13 20:13:42 +01:00
Peter Wu
90f5bf796d
cmake: check more headers and sizeof
2016-02-13 20:13:42 +01:00
Peter Wu
2b63980758
cmake: more dependency checks
2016-02-13 20:13:42 +01:00
Peter Wu
65d33c553c
CMake WIP
...
Not working:
- option(... check)
- not finished everything (see XXX and FIXME)
- still halway converting
2016-02-13 20:13:42 +01:00
Peter Wu
2593036053
integration-tests: support out-of-tree tests
...
`go test` requires both config.go and the test files in the same
directory. For out-of-tree builds, config.go is normally not placed next
to the source files, so copy the tests to the build directory as a
workaround.
2016-02-13 20:11:50 +01:00
Peter Wu
a6effb4d23
doc: fix out-of-tree doc builds
...
Fixes multiple errors while making docs:
Could not import extension sphinxcontrib.rubydomain (exception: No module named 'sphinxcontrib')
and
../../doc/sources/index.rst:15: WARNING: toctree contains reference to nonexisting document 'nghttp.1'
../../doc/sources/index.rst:15: WARNING: toctree contains reference to nonexisting document 'nghttpd.1'
../../doc/sources/index.rst:15: WARNING: toctree contains reference to nonexisting document 'nghttpx.1'
../../doc/sources/index.rst:15: WARNING: toctree contains reference to nonexisting document 'h2load.1'
../../doc/sources/index.rst:15: WARNING: toctree contains reference to nonexisting document 'programmers-guide'
2016-02-13 20:11:50 +01:00
Peter Wu
17215002a1
examples: fix compile warnings
...
Fixes the following two warnings:
examples/client.c:292:0: error: macro "MAX_OUTLEN" is not used [-Werror=unused-macros]
examples/tiny-nghttpd.c:298:13: error: function declaration isn’t a prototype [-Werror=strict-prototypes]
Caught using cmake as the autoconf check fails due to unused macros
(HAVE_xxx in conftest.c) and a main function without parameters
respectively.
2016-02-13 20:11:50 +01:00
Peter Wu
0e469ed221
Fix typo in HAVE_CONFIG_H name
...
Only used by lib/nghttp2_npn.c where the presence of config.h does not
seem to make a difference though.
2016-02-13 20:11:50 +01:00
Tatsuhiro Tsujikawa
093eb51f8c
Update default cipher list
2016-02-14 00:44:50 +09:00
Tatsuhiro Tsujikawa
5f1866fd6b
Update man pages
2016-02-14 00:29:07 +09:00
Tatsuhiro Tsujikawa
d8c8a4631d
nghttpx: Interleave text/html pushed resources with associated resource
2016-02-14 00:28:08 +09:00
Tatsuhiro Tsujikawa
6b12f17f44
Wrap AM_PATH_XML2 by m4_ifdef to handle the case when AM_PATH_XML2 is not found
2016-02-14 00:05:12 +09:00
Tatsuhiro Tsujikawa
eb0c82d91f
nghttpx: More log output when resolving addresses for better debugging
2016-02-13 23:21:32 +09:00
Tatsuhiro Tsujikawa
7adfa5dea7
Add note about --enable-app automatic behaviour
2016-02-13 22:39:24 +09:00
Tatsuhiro Tsujikawa
17758126fa
nghttpx: Add headers given in add-response-headers for mruby response
2016-02-13 22:31:38 +09:00
Tatsuhiro Tsujikawa
b440f585bc
nghttpx: Use Header to store custom request/response header fields
2016-02-13 22:19:05 +09:00
Tatsuhiro Tsujikawa
63a13ccb18
src: Add constexpr to StringRef ctors
2016-02-13 19:15:14 +09:00
Tatsuhiro Tsujikawa
72877379ec
nghttpx: Deprecate --backend-ipv4 and --backend-ipv6 in favor of --backend-address-family
2016-02-13 19:09:39 +09:00
Tatsuhiro Tsujikawa
8449958425
doc: Mention encryption for memcached connections
2016-02-13 18:50:15 +09:00
Tatsuhiro Tsujikawa
9037641592
Merge branch 'nghttpx-memcached-tls'
2016-02-13 18:47:06 +09:00
Tatsuhiro Tsujikawa
c0078ab45a
nghttpx: Add options to specify address family of memcached connections
2016-02-13 18:46:07 +09:00
Tatsuhiro Tsujikawa
3a41e4dd1a
nghttpx: Add encryption support for TLS ticket key retrieval
2016-02-13 18:46:07 +09:00
Tatsuhiro Tsujikawa
3297a303bf
nghttpx: Add client auth options for session cache memcached TLS connection
2016-02-13 18:46:07 +09:00
Tatsuhiro Tsujikawa
f1580f95d4
nghttpx: Add TLS support for session cache memcached connection
2016-02-13 18:46:07 +09:00
Tatsuhiro Tsujikawa
1e150bcf61
Merge branch 'jay-refactor-blacklist'
2016-02-13 17:46:11 +09:00
Jay Satiro
ca371e3ba9
nghttpx: Refactor blacklisted cipher suite check
2016-02-12 21:46:29 -05:00
Tatsuhiro Tsujikawa
61dda40b44
Don't pass NULL to memcpy
2016-02-12 22:31:47 +09:00
Tatsuhiro Tsujikawa
5ad753b90c
Merge branch 'limit-incoming-headers'
2016-02-11 23:21:02 +09:00
Tatsuhiro Tsujikawa
0a1beea13a
asio: client: Limit incoming response header field buffer size
2016-02-11 23:20:31 +09:00
Tatsuhiro Tsujikawa
00e722f02c
Add warning
2016-02-11 23:20:31 +09:00
Tatsuhiro Tsujikawa
ff22862b9d
nghttp: Limit incoming header field buffer
2016-02-11 23:20:31 +09:00
Tatsuhiro Tsujikawa
b2264ad57e
asio: server: Limit incoming request header field buffer size
2016-02-11 23:20:31 +09:00
Tatsuhiro Tsujikawa
b0227d4051
nghttpd: Limit request header buffer
2016-02-11 23:20:31 +09:00
Tatsuhiro Tsujikawa
28b643e531
Fix configure script for non-gcc, clang build
2016-02-11 23:05:16 +09:00
Tatsuhiro Tsujikawa
82f942c3a3
nghttpx: Parameterize configuration values for client side TLS context
2016-02-11 18:34:31 +09:00
Tatsuhiro Tsujikawa
e4a727f86c
nghttpx: Cache TLS client session after initial handshake was done
2016-02-11 17:56:20 +09:00
Tatsuhiro Tsujikawa
b624ca6dcd
nghttpx: Rename client TLS session cache field
2016-02-11 17:12:57 +09:00
Tatsuhiro Tsujikawa
ba4c268172
nghttpx: Single SSL_SESSION cache entry for each address
2016-02-11 17:07:48 +09:00
Tatsuhiro Tsujikawa
00175eac33
nghttpx: Use Address* as a key for client side session cache
2016-02-11 12:40:15 +09:00
Tatsuhiro Tsujikawa
396dde1347
Mention libspdylay-dev package availability
2016-02-10 21:42:32 +09:00
Tatsuhiro Tsujikawa
042a59117d
Merge pull request #504 from davidjb/master
...
Document compiling apps and include h2load in configure
2016-02-10 21:35:54 +09:00
David Beitey
b8717208c7
Document compiling apps and include h2load in configure
2016-02-10 08:37:43 +10:00
Tatsuhiro Tsujikawa
c3a5fe7185
Update bash_completion
2016-02-07 21:24:29 +09:00
Tatsuhiro Tsujikawa
c8b6a79225
Update man pages
2016-02-07 21:24:11 +09:00
Tatsuhiro Tsujikawa
92e66fc167
Bump up version number to 1.8.0-DEV
2016-02-07 21:20:44 +09:00
Tatsuhiro Tsujikawa
64ffc1fc73
Update README.rst
2016-02-07 21:20:05 +09:00
Tatsuhiro Tsujikawa
304ff6a6f9
Don't send extension frame in closing state
2016-02-07 21:12:36 +09:00
Tatsuhiro Tsujikawa
fc39f2d9d2
Merge branch 'master' into simple-extensions
2016-02-07 21:09:08 +09:00
Tatsuhiro Tsujikawa
0d806978e6
nghttpx: Set HTTP/1 backend read buffer to 16k
2016-02-07 21:07:27 +09:00
Tatsuhiro Tsujikawa
62c43ce2be
nghttpx: Remove rb_ from HTTP/2 backend session
2016-02-07 19:20:17 +09:00
Tatsuhiro Tsujikawa
88eaeb5d1c
nghttpx: Use memchunks for HTTP/2 backend
2016-02-07 18:54:44 +09:00
Tatsuhiro Tsujikawa
60c0c2dd56
src: Code cleanup
2016-02-07 18:41:38 +09:00
Tatsuhiro Tsujikawa
6c147aa1c5
nghttpx: Remove unnecessary condition
2016-02-07 18:39:06 +09:00
Tatsuhiro Tsujikawa
2a9b23bfab
nghttpx: Store pointer to DownstreamAddr
2016-02-07 18:38:06 +09:00
Tatsuhiro Tsujikawa
4fb4617d20
src: Parameterize CharT
2016-02-07 18:16:47 +09:00
Tatsuhiro Tsujikawa
ede0f6aa32
src: Remove verbose const
2016-02-07 18:12:57 +09:00
Tatsuhiro Tsujikawa
4e7271a88f
nghttpx: Fix regression which breaks WebSocket upgrade
2016-02-07 17:59:38 +09:00
Tatsuhiro Tsujikawa
6d49110a33
Rename FrontendAddr as UpstreamAddr
2016-02-07 17:51:53 +09:00
Tatsuhiro Tsujikawa
b540aa34d0
Merge branch 'nghttpx-backend-h1-tls'
2016-02-07 17:43:40 +09:00
Tatsuhiro Tsujikawa
15fa38c72f
nghttpx: Rename backend_session_cache_per_worker as downstream_session_cache_per_worker
2016-02-07 17:43:30 +09:00
Tatsuhiro Tsujikawa
e7de5e9f6c
nghttpx: Rename cl_tls_session as downstream_tls_session
2016-02-07 17:43:30 +09:00
Tatsuhiro Tsujikawa
5c10534b88
nghttpx: Fix crash when reusing cached SSL session
2016-02-07 17:43:30 +09:00
Tatsuhiro Tsujikawa
b3e5d49a3e
Update doc
2016-02-07 17:43:30 +09:00
Tatsuhiro Tsujikawa
6806196404
nghttpx: Update doc for HTTP/1 TLS backend connections
2016-02-07 17:43:30 +09:00
Tatsuhiro Tsujikawa
2e38208d74
nghttpx: Fixups for HTTP/1 backend TLS support
2016-02-07 17:43:30 +09:00
Tatsuhiro Tsujikawa
cde79052dd
nghttpx: Slightly faster version of HTTP/1 backend
2016-02-07 17:43:30 +09:00
Tatsuhiro Tsujikawa
e763770f3e
nghttpx: Add option to specify maximum number of session cache
2016-02-07 17:43:30 +09:00
Tatsuhiro Tsujikawa
26d49c1dc3
nghttpx: Cache client session
2016-02-07 17:43:30 +09:00
Tatsuhiro Tsujikawa
bb4e2f6a24
nghttpx: Add TLS support for HTTP/1 backend
2016-02-07 17:43:30 +09:00
Tatsuhiro Tsujikawa
344cc1b5c3
Merge branch 'Sp1l-master'
2016-02-07 17:41:04 +09:00
Tatsuhiro Tsujikawa
21f9b6d8bb
Merge branch 'master' of https://github.com/Sp1l/nghttp2 into Sp1l-master
2016-02-07 17:35:57 +09:00
Tatsuhiro Tsujikawa
024d0d09ee
nghttpx: Fix unexpected failure due to missing address family
2016-02-06 23:28:04 +09:00
Bernard Spil
e4b2847d31
Don't check for dlopen/libdl on *BSD
...
This makes linking fail on -ldl as there is no libdl on in /usr/lib or /usr/local/lib on *BSD
Tested (and part of the proposed nghttp2 1.7.0) on [https://reviews.freebsd.org/D5218 |FreeBSD]
2016-02-06 14:36:27 +01:00
Tatsuhiro Tsujikawa
ee07694783
nghttpx: Add request-header-field-buffer and max-request-header-fields options
...
This commit adds request-header-field-buffer and
max-request-header-fields, and deprecates header-field-buffer and
max-header-fields options.
2016-02-06 17:22:23 +09:00
Tatsuhiro Tsujikawa
8741503db1
nghttpx: Add --no-http2-cipher-black-list to allow black listed cipher suite
2016-02-06 17:05:14 +09:00
Tatsuhiro Tsujikawa
eec409dba7
nghttpx: Limit header fields from backend
2016-02-06 12:27:01 +09:00
Tatsuhiro Tsujikawa
95ca4f55d5
asio: client: Fix connect timeout does not work, return from cb if session stopped
...
This change removed client::session::connect_timeout() functon, and
connect timeout should be given to client::session constructor. This
is required since async operation starts in the constructor.
2016-02-06 11:05:13 +09:00
Tatsuhiro Tsujikawa
231665d67b
Don't use ac_save_* since they are overwritten by macro
2016-02-03 00:48:47 +09:00
Tatsuhiro Tsujikawa
4c05558273
Evaluate nghttp2_session_want_read and nghttp2_session_want_write when determining session is about to close
2016-02-03 00:25:11 +09:00
Tatsuhiro Tsujikawa
35c3b36549
nghttpx: Document special value localhost in Forwarded "by" and "for" params
2016-02-01 23:34:07 +09:00
Tatsuhiro Tsujikawa
03872bfacd
nghttpx: Don't quote Forwarded "by" parameter if it is special value "localhost"
2016-02-01 23:31:21 +09:00
Tatsuhiro Tsujikawa
5e9bcbec9a
nghttpx: Fix bug that IPv6 address in Forwarded "for" is not quoted-string
2016-02-01 23:29:17 +09:00
Tatsuhiro Tsujikawa
aa07fe7fa6
nghttpx: Support multiple frontend addresses
...
This commit allows nghttpx to listen to multiple address and port pair
by specifying -f option multiple times.
2016-02-01 23:10:29 +09:00
Tatsuhiro Tsujikawa
1d99b425ca
Use ac_save_LIBS instead of LIBS_OLD
2016-01-30 18:46:17 +09:00
Tatsuhiro Tsujikawa
7a6a59178a
Don't taint CXXFLAGS from AX_CXX_COMPILE_STDCXX_11
2016-01-30 18:42:48 +09:00
Tatsuhiro Tsujikawa
4e44fccdcf
Fix compile error with gcc-6 which enables C++14 by default
2016-01-30 18:41:27 +09:00
Tatsuhiro Tsujikawa
703c77ec89
Fix markdown style linking
2016-01-29 12:36:15 +09:00
Tatsuhiro Tsujikawa
a06af3fa85
Add doc about release scheduling and versioning scheme
2016-01-29 12:35:09 +09:00
Tatsuhiro Tsujikawa
686a303cb5
Add script to ensure that packaging is good
2016-01-27 23:12:38 +09:00
Tatsuhiro Tsujikawa
b95df43384
Add genauthoritychartbl.py
2016-01-27 23:06:10 +09:00
Tatsuhiro Tsujikawa
5659e295b3
nghttpd: Add trailer header field to status responses
2016-01-27 22:47:30 +09:00
Tatsuhiro Tsujikawa
5b195092e1
nghttpd: Add -w and -W options to change window size
2016-01-27 22:34:17 +09:00
Tatsuhiro Tsujikawa
85bb37ab7c
Enable ConstructorInitializerAllOnOneLineOrOnePerLine for better diff
2016-01-27 21:14:07 +09:00
Tatsuhiro Tsujikawa
c5f3eee3be
Update http-parser to 4e382f96e6d3321538a78f2c7f9506d4e79b08d6
2016-01-27 20:50:08 +09:00
Tatsuhiro Tsujikawa
1cfdf386ff
src: Faster base64
2016-01-27 15:31:09 +09:00
Tatsuhiro Tsujikawa
6d8fe72174
src: Faster percent encode/deocde
2016-01-27 15:31:09 +09:00
Tatsuhiro Tsujikawa
98253b1d0d
nghttpx: Use DefaultMemchunks as HTTP/2 and SPDY frontend response buffer
2016-01-27 15:28:01 +09:00
Tatsuhiro Tsujikawa
ad93cea544
nghttpx: Fix possible data loss on backend connection upgrade
2016-01-27 15:26:46 +09:00
Tatsuhiro Tsujikawa
1739b5a0e6
nghttpx: Don't read frontend socket if read watcher is stopped
2016-01-27 15:26:06 +09:00
Tatsuhiro Tsujikawa
9ef8e24049
Merge pull request #490 from tavrez/master
...
Fixed Windows makefile version detection
2016-01-26 19:53:24 +09:00
Reza Tavakoli
7fbbaf01a9
Merge pull request #1 from tavrez/patch-1
...
Fixing window makefile version detection
2016-01-26 14:00:21 +03:30
Reza Tavakoli
5a6f312182
Fixing window makefile version detection
2016-01-26 13:57:21 +03:30
Tatsuhiro Tsujikawa
2b441ef9af
Bump up version number to 1.7.1-DEV
2016-01-25 19:56:59 +09:00
Tatsuhiro Tsujikawa
7ba18df6cf
Update bash_completion
2016-01-25 19:44:56 +09:00
Tatsuhiro Tsujikawa
196de5db89
Update man pages
2016-01-25 19:44:41 +09:00
Tatsuhiro Tsujikawa
25a3510501
Bump up version number to 1.7.0, LT revision to 18:1:4
2016-01-25 19:39:10 +09:00
Tatsuhiro Tsujikawa
4a78f59e7b
Rename nghttp2_session.sent_stream_id as last_sent_stream_id
...
This is more accurate, and there is symmetric relation between
last_sent_stream_id and last_recv_stream_id, which is bettern fit in
my sense.
2016-01-23 14:47:39 +09:00
Tatsuhiro Tsujikawa
1f7032088d
Add test which covers remote stream window size overflow case
2016-01-23 12:01:29 +09:00
Tatsuhiro Tsujikawa
4ceb9fd767
Cancel stream if flow control window gets overflow
...
Previously, we did terminate session, but it did not actually cancel
streams. Now we just cancel streams in this case.
2016-01-23 00:24:12 +09:00
Tatsuhiro Tsujikawa
a964426fbc
Update ax_check_compile_flag.m4
2016-01-22 23:21:06 +09:00
Tatsuhiro Tsujikawa
2f80c453bb
Add C++ compiler flags with --enable-werror, remove -Wall from CPPFLAGS
2016-01-22 22:48:45 +09:00
Tatsuhiro Tsujikawa
cf06c3fbc5
Simplify
2016-01-22 22:37:45 +09:00
Tatsuhiro Tsujikawa
efc3206ae0
nghttpx: Revert accidental change
2016-01-21 22:14:10 +09:00
Tatsuhiro Tsujikawa
497ffc6387
nghttpx: Change pushed stream's priority
...
By default, as RFC 7540 calls for, pushed stream depends on its
associated (parent) stream. There are some situations that this is
sub-optimal. For example, if associated stream is HTML, and server is
configured to push css and javascript files which are in critical
rendering path. Then the default priority scheme is sub-optimal,
since browser typically blocks rendering while waiting for critical
resources. In this case, it is better to at least give pushed stream
the same priority of associated stream, and interleave these streams.
This change gives pushed stream the same priority of associated stream
if pushed stream has content-type "application/javascript" or
"text/css". The pushed stream now depends on the stream which
associated stream depends on. We use the same weight of associated
stream.
2016-01-21 21:11:57 +09:00
Tatsuhiro Tsujikawa
5a3ca7e700
nghttpx: Disallow user defined static obfuscated string for "for" parameter
2016-01-21 21:05:07 +09:00
Tatsuhiro Tsujikawa
9ac3e643d8
Revert "nghttpx: Add --curves option to specify supported elliptic curves"
...
This reverts commit e278893b64 .
SSL_CONF_CTX functions are not working correctly with OpenSSL 1.0.2.
It requires 1.1.0 to make it work.
2016-01-21 19:50:38 +09:00
Tatsuhiro Tsujikawa
7ca2660a29
asio: Stop acceptor on server::http2::stop
2016-01-21 19:15:32 +09:00
Tatsuhiro Tsujikawa
e278893b64
nghttpx: Add --curves option to specify supported elliptic curves
2016-01-21 18:23:13 +09:00
Tatsuhiro Tsujikawa
6b8b426342
Revert accidental neverbleed revision change
2016-01-21 17:58:55 +09:00
Tatsuhiro Tsujikawa
03f7f8cb9c
nghttpx: About implicit conversion from ImmutableString and std::string to StringRef
...
This is required to avoid creation of temporary ImmutableString
like so:
std::string x;
ImmutableString y = ...;
StringRef ref = !x.empty() ? x : y;
First, temporary ImmutableString is created with x since
ImmutableString has constructor to accept std::string. After
StringRef gets this, the temporary ImmutableString is destroyed, and
ref has dangling pointer.
2016-01-21 17:12:40 +09:00
Tatsuhiro Tsujikawa
2faf9623ce
nghttpx: Fix crash with http2 backend
2016-01-21 17:09:50 +09:00
Tatsuhiro Tsujikawa
eb8649bf9b
nghttpx: Don't greedily read data from backend
...
This might help throughput, but it interfere stream priority. The
throughput issue is generally caused by the small buffer size to store
response body, which was 16K. We increased it to 128K to compensate
this change.
2016-01-20 11:20:15 +09:00
Tatsuhiro Tsujikawa
6377c51f9c
Add missing files
2016-01-19 23:31:17 +09:00
Tatsuhiro Tsujikawa
db8de490a0
nghttpx: Omit Forwarded for and by parameter if UNIX domain socket is used
2016-01-19 23:26:04 +09:00
Tatsuhiro Tsujikawa
acb38b726f
nghttpx: Don't quote Forwarded params if it is not required
2016-01-19 22:43:56 +09:00
Tatsuhiro Tsujikawa
f44128774c
nghttpx: Update doc
2016-01-19 21:01:34 +09:00
Tatsuhiro Tsujikawa
e428bff961
Update man pages
2016-01-19 20:55:08 +09:00
Tatsuhiro Tsujikawa
d162f7c137
Merge branch 'h2load-unix-domain-socket'
2016-01-19 19:24:42 +09:00
Tatsuhiro Tsujikawa
933e0f40bb
h2load: Support UNIX domain socket
2016-01-19 19:24:15 +09:00
Tatsuhiro Tsujikawa
3ad9f9e730
nghttpx: Fix compiler warning without --with-mruby
2016-01-19 19:07:13 +09:00
Tatsuhiro Tsujikawa
a390bd4ce0
nghttpx: Fix compile error with --with-neverbleed
2016-01-19 19:04:24 +09:00
Tatsuhiro Tsujikawa
dc0f0123e9
Merge branch 'nghttpx-reorganize-config'
2016-01-19 18:21:18 +09:00
Tatsuhiro Tsujikawa
f3946ae314
nghttpx: Remove assignment of zero values
...
Because of zero initialization, these assignments are unnecessary.
2016-01-19 17:27:56 +09:00
Tatsuhiro Tsujikawa
2f9946327a
nghttpx: Fix bug that --listener-disable-timeout option is not used
2016-01-19 17:03:01 +09:00
Tatsuhiro Tsujikawa
0402481be4
nghttpx: Organize connection related configuration into struct
2016-01-19 16:56:12 +09:00
Tatsuhiro Tsujikawa
35feae3b0c
nghttpx: Group up logging related options
2016-01-18 17:26:27 +09:00
Tatsuhiro Tsujikawa
a053d10839
nghttpx: Move option handling code to separate function
2016-01-18 17:08:28 +09:00
Tatsuhiro Tsujikawa
16549bb276
nghttpx: Structured configurations for http and http2
2016-01-18 17:00:20 +09:00
Tatsuhiro Tsujikawa
f3e1dc7a4f
nghttpx: Structured TLS related configurations
2016-01-18 14:21:09 +09:00
Tatsuhiro Tsujikawa
b12af8c410
nghttpx: Refactor backend proxy configuration
2016-01-17 22:51:40 +09:00
Tatsuhiro Tsujikawa
f5b4fd23da
src: Fix compiler error on travis
2016-01-17 22:47:50 +09:00
Tatsuhiro Tsujikawa
ee43250015
nghttpx: Remove useless comment
2016-01-17 22:26:13 +09:00
Tatsuhiro Tsujikawa
9f0f5c60ad
ImmutableString: Remove std::unique_ptr<char[]> ctor overload
2016-01-17 22:25:10 +09:00
Tatsuhiro Tsujikawa
09de332028
ImmutableString: Less fields
2016-01-17 22:25:10 +09:00
Tatsuhiro Tsujikawa
3d5f5b6a28
nghttpx: Fix compiler warning
2016-01-17 18:27:25 +09:00
Tatsuhiro Tsujikawa
eb7b3295d1
ImmutableString, StringRef: Add empty() and operator[]
...
We won't add operator[] to StringRef. This is because it may be
undefined if pos == size(), and StringRef's base + len does not point
to the valid region. This solely depends on the given buffer, so we
cannot do anything to fix. For workaround, if we need this kind of
operator, we may add it under another name, like char_at(size_type).
2016-01-17 18:09:12 +09:00
Tatsuhiro Tsujikawa
5131b95c2f
ImmutableString: Ensure that c_str() returns non-nullptr if it is default constructed
2016-01-17 18:00:36 +09:00
Tatsuhiro Tsujikawa
ba543e3895
memchunk: Add noexcept
2016-01-17 17:16:20 +09:00
Tatsuhiro Tsujikawa
ef5d981ab1
nghttpx: Simplify
2016-01-17 17:04:16 +09:00
Tatsuhiro Tsujikawa
d5efab4993
src: Add inequality operator for StringRef
2016-01-17 16:42:19 +09:00
Tatsuhiro Tsujikawa
919e9eee63
nghttpx: It is enough to check "chunked" in the suffix
2016-01-17 16:34:56 +09:00
Tatsuhiro Tsujikawa
e255468bdf
nghttpx: Fix tests
2016-01-17 16:33:23 +09:00
Tatsuhiro Tsujikawa
39c0a71065
src: Add tests for ImmutableString and StringRef
2016-01-17 16:32:55 +09:00
Tatsuhiro Tsujikawa
7b2d4b6ae6
nghttpx: Optimize logging further
2016-01-17 15:04:09 +09:00
Tatsuhiro Tsujikawa
4f07db8bcb
src: Rename our new string classes
2016-01-17 11:33:45 +09:00
Tatsuhiro Tsujikawa
959d378f2a
nghttpx: Optimize accesslog write
2016-01-17 11:19:19 +09:00
Tatsuhiro Tsujikawa
506de55475
src: Less strlen
2016-01-17 01:29:52 +09:00
Tatsuhiro Tsujikawa
045578989c
src: Update doc
2016-01-17 01:21:58 +09:00
Tatsuhiro Tsujikawa
d16ff1f519
nghttpx: Use StringAdaptor for Config::server_name
2016-01-17 01:15:11 +09:00
Tatsuhiro Tsujikawa
2c7ed01f0c
nghttpx: Use std::string for Downstream::backend_tls_sni_name
2016-01-17 01:00:15 +09:00
Tatsuhiro Tsujikawa
34d5382d66
nghttpx: Use VString for DownstreamAddr::host and hostport to remember size
2016-01-17 00:52:41 +09:00
Tatsuhiro Tsujikawa
dbbf3a4a10
nghttpx: Refactor TLS hostname match
2016-01-16 23:54:21 +09:00
Tatsuhiro Tsujikawa
f25fd09bbb
nghttpx: Don't emit :authority if request dones not contain authority info
...
RFC 7540 says that proxy should not emit :authority when translating
HTTP/1 request in origin or asterisk form to HTTP/2. To keep this
semantics in tact, we should also refrain from emitting :authority if
it is missing (host header field is required in this case).
2016-01-16 21:12:51 +09:00
Tatsuhiro Tsujikawa
7be0217bc0
nghttpx: Simplify xff handling
2016-01-16 16:48:41 +09:00
Tatsuhiro Tsujikawa
e4816c5ba9
nghttpx: Add clarification of quotes in configuration file
2016-01-16 16:11:41 +09:00
Tatsuhiro Tsujikawa
584567cacc
Merge branch 'validate-authority-scheme'
2016-01-16 16:04:07 +09:00
Tatsuhiro Tsujikawa
b202e066fd
nghttpx: Don't allow certain characters in host and :scheme header field
...
For HTTP/2, we do this validation in libnghttp2. http-parser does
this partially, when it parses URI, but it does not do anything for
Host header field. libspdylay does not perform anything. So do some
additional validation for HTTP/1 and SPDY cases. integration tests
were also added to make sure they work.
2016-01-16 16:00:05 +09:00
Tatsuhiro Tsujikawa
c7de58d865
Validate :authroity, host, and :scheme value more strictly
2016-01-16 15:11:48 +09:00
Tatsuhiro Tsujikawa
74c77926a8
nghttpx: Refactor and simplify Downstream::rewrite_location_response_header
2016-01-16 12:49:18 +09:00
Tatsuhiro Tsujikawa
198e253e9d
integration: Add X-Forwarded-For tests with HTTP/2 backend
2016-01-16 12:25:12 +09:00
Tatsuhiro Tsujikawa
f26e213dcd
integration: Additional tests for Forwarded header fields
2016-01-16 12:19:19 +09:00
Tatsuhiro Tsujikawa
9f318d1249
integration: Validate status code explicitly
...
Without this validation, test spuriously succeeds, but in fact it
doesn't. This might occur if stream is closed with RST_STREAM or
GOAWAY.
2016-01-16 12:06:41 +09:00
Tatsuhiro Tsujikawa
deacc202ff
Merge branch 'nghttpx-forwarded'
2016-01-16 11:59:06 +09:00
Tatsuhiro Tsujikawa
25570367b3
nghttpx: Document Forwarded related options
2016-01-16 11:58:02 +09:00
Tatsuhiro Tsujikawa
4c884da222
nghttpx: Reset config when Forwarded related option is used
2016-01-16 11:53:18 +09:00
Tatsuhiro Tsujikawa
f72e496f96
nghttpx: Add integration tests for Forwarded header field support
2016-01-16 11:32:36 +09:00
Tatsuhiro Tsujikawa
41047aece0
nghttpx: Implement Forwarded in HTTP/2 backend
2016-01-16 11:32:36 +09:00
Tatsuhiro Tsujikawa
54f5ea9d6e
Update doc
2016-01-16 11:32:36 +09:00
Tatsuhiro Tsujikawa
d678c07ddf
nghttpx: Allow user to specify static obfuscated value via command-line
2016-01-16 11:32:26 +09:00
Tatsuhiro Tsujikawa
5c3f74b424
nghttpx: Add RFC 7239 Forwarded header field support
2016-01-16 11:32:14 +09:00
Tatsuhiro Tsujikawa
1550d709e0
nghttpx: Use std::mt19937 instead of std::random_device directly
2016-01-15 18:48:14 +09:00
Tatsuhiro Tsujikawa
a23c9244d4
Make sure that upgraded response can be received from server
2016-01-15 17:03:13 +09:00
Tatsuhiro Tsujikawa
3c7038dfe1
nghttpx: Simplify
...
We only change req_.upgrade_request once, so just using else is
suffice.
2016-01-15 00:22:11 +09:00
Tatsuhiro Tsujikawa
f8472f4709
nghttpx: Remove backend priority handling code
...
Currently, this does not do anything useful.
2016-01-15 00:17:40 +09:00
Tatsuhiro Tsujikawa
698f00596d
Update doc
2016-01-15 00:05:56 +09:00
Tatsuhiro Tsujikawa
5a8cf94361
nghttpx: Refactor Downstream::response_sent_bodylen_
2016-01-14 23:54:28 +09:00
Tatsuhiro Tsujikawa
3218c160be
nghttpx: Refactor Downstream::response_datalen_
2016-01-14 23:49:21 +09:00
Tatsuhiro Tsujikawa
fa31d0940c
nghttpx: Refactor Downstream::request_datalen_
2016-01-14 23:36:47 +09:00
Tatsuhiro Tsujikawa
e7e52b11ce
nghttpx: Refactor Downstream::response_bodylen_
2016-01-14 23:20:44 +09:00
Tatsuhiro Tsujikawa
bdef0e0b1a
nghttpx: Refactor Downstream::request_bodylen_
2016-01-14 23:14:58 +09:00
Tatsuhiro Tsujikawa
543f2d58fc
Merge branch 'nghttpx-refactor-downstream'
2016-01-14 01:06:45 +09:00
Tatsuhiro Tsujikawa
0a76b45eca
nghttpx: Fix bug that key_prev is not updated
2016-01-14 01:05:10 +09:00
Tatsuhiro Tsujikawa
6d6a00f1f5
nghttpx: Return assemble cookie on the fly
2016-01-14 01:05:10 +09:00
Tatsuhiro Tsujikawa
3b8889a2a1
nghttpx: Extract response related fields to Response struct
2016-01-14 01:05:10 +09:00
Tatsuhiro Tsujikawa
a7fd37ffdf
nghttpx: Remove FieldStore::set_last_{header,trailer}_value
...
Use FieldStore::append_last_{header,trailer}_value instead.
2016-01-14 01:04:53 +09:00
Tatsuhiro Tsujikawa
919f08eb38
nghttpx: Extract request related fields to Request struct
...
Header field related functions are now gathered into FieldStore class.
This commit only handles request. Subsequent commit will do the same
thing for response.
2016-01-14 01:04:32 +09:00
Tatsuhiro Tsujikawa
6cc5d71ffe
Merge branch 'ploppy-fix_ipv6_crash'
2016-01-13 22:55:59 +09:00
Vernon Tang
6fddefe252
shrpx_worker_process: worker_process_event_loop: Fix FD test.
...
This fixes a crash in nghttpx when running on IPv6 only.
2016-01-12 17:38:17 +00:00
Tatsuhiro Tsujikawa
15ea11d5db
Fix bug that HTTP upgrade was not working
2016-01-12 21:05:05 +09:00
Tatsuhiro Tsujikawa
fe8005327a
src: Make util::utos_with_unit and utos_with_funit names shorter
2016-01-11 18:12:31 +09:00
Tatsuhiro Tsujikawa
0697de4691
h2load: Improve readability of traffic numbers
2016-01-11 18:06:26 +09:00
Tatsuhiro Tsujikawa
afc6f556d1
Update doc
2016-01-11 17:47:46 +09:00
Tatsuhiro Tsujikawa
6566ea7d6b
nghttpx: Update doc
2016-01-11 17:36:47 +09:00
Tatsuhiro Tsujikawa
e14da859b6
Merge branch 'master' into simple-extensions
2016-01-11 16:39:35 +09:00
Tatsuhiro Tsujikawa
863addcd5a
Update man pages
2016-01-11 16:23:32 +09:00
Tatsuhiro Tsujikawa
bb6f842b37
Check request/response submission error based side of session
...
Disallow request from server, and response from client respectively.
When the violation is detected, return NGHTTP2_ERR_PROTO from
nghttp2_submit_request, nghttp2_submit_response,
nghttp2_submit_headers.
We also did some refactoring, and now self-dependency detection is
placed where it is only required.
2016-01-11 16:18:39 +09:00
Tatsuhiro Tsujikawa
8f225ae88d
Fix broken test_nghttp2_session_pop_next_ob_item
2016-01-11 00:46:44 +09:00
Tatsuhiro Tsujikawa
9cea986819
Strict outgoing idle stream detection
...
Previously, we use session->next_stream_id to detect that given stream
ID was idle or not. But this was suboptimal, since it was updated
when stream ID was assigned, and it did not necessarily mean that it
actually has been sent to the peer. Now we introduced
session->sent_stream_id, which only updated when HEADERS/PUSH_PROMISE
has sent. Using sent_stream_id instead of next_stream_id tightens
idle stream detection, and misbehaved peer which sends frame with
stream ID that has not been generated.
This commit also overhauls test code which involves opening streams.
Now we have some wrapper functions for nghttp2_session_open_stream()
which also take care of updating next_stream_id and
last_recv_stream_id. They are crucial for some tests.
2016-01-11 00:31:52 +09:00
Tatsuhiro Tsujikawa
0248d979fe
Add missing nghttp2_option_set_user_recv_extension_type.rst
2016-01-10 17:08:03 +09:00
Tatsuhiro Tsujikawa
0caefe20ef
Merge branch 'master' into simple-extensions
2016-01-09 19:08:28 +09:00
Tatsuhiro Tsujikawa
a7ec90506f
Happy new year!
2016-01-09 18:28:38 +09:00
Tatsuhiro Tsujikawa
c58a621fc7
Add LICENSE file to point to COPYING
...
Some people feel uncomfortable when they could not find LICENSE file.
2016-01-09 18:26:45 +09:00
Tatsuhiro Tsujikawa
b64fc3ac49
nghttpd: Add --no-content-length option to omit content-length in response
2016-01-07 22:51:47 +09:00
Tatsuhiro Tsujikawa
027256d0b1
h2load: Distribute MAX_SAMPLES across workers
2016-01-07 22:41:37 +09:00
Tatsuhiro Tsujikawa
425c794f89
h2load: Rename MAX_STATS as MAX_SAMPLES
2016-01-07 22:21:39 +09:00
Tatsuhiro Tsujikawa
acac5ec6ea
h2load: Remove "auto" for -m option
...
Because http/1.1 support, default "auto" behaviour of -m option is not
desirable, since it is used as HTTP pipelining, and it is not used in
practice.
2016-01-06 23:16:53 +09:00
Tatsuhiro Tsujikawa
13bd566eb7
h2load: Remove RequestStat ctor
2016-01-06 23:10:46 +09:00
Tatsuhiro Tsujikawa
a52920cec0
h2load: Perform Sampling for client as well
2016-01-06 23:03:37 +09:00
Tatsuhiro Tsujikawa
9cbb8174bb
h2load: Refactor systematic sampling method
2016-01-06 22:43:09 +09:00
Tatsuhiro Tsujikawa
23ac0429be
h2load: Show progress in rate mode
2016-01-06 00:04:14 +09:00
Tatsuhiro Tsujikawa
7ed26afe75
h2load: Delete Client when it finished
2016-01-06 00:04:14 +09:00
Tatsuhiro Tsujikawa
60bbb5cae0
h2load: Perform sampling for request timings to reduce memory consumption
2016-01-06 00:04:14 +09:00
Tatsuhiro Tsujikawa
da85910028
Merge pull request #472 from kumagi/fix-typo
...
fix typos in documents.
2016-01-06 00:03:23 +09:00
kumagi
f3a37b2ef1
fix typos: heder->header alreay->already reponse->response
2016-01-05 22:19:33 +09:00
Tatsuhiro Tsujikawa
2f50bc1b3c
nghttpx: Take into account of trailers when applying max_header_fields
2016-01-05 16:47:44 +09:00
Tatsuhiro Tsujikawa
848f8fbe54
nghttpx: Don't apply max_header_fields and header_field_buffer limit to response
...
We modeled max_header_fields and header_field_buffer limit from Apache
configuration directives. In Apache, they are only applied to request
header fields, while we applied both request and response. Since
nghttpx is used as reverse proxy and backend server is relatively
"trusted", this commit removes the application to response header
fields.
2016-01-05 16:44:44 +09:00
Tatsuhiro Tsujikawa
4f06ccd17d
Add -ldl to APPLDFLAGS for static openssl linking
2015-12-31 00:22:26 +09:00
Tatsuhiro Tsujikawa
3a9cb85d7a
Add test to make sure idle streams are reduced
2015-12-26 00:30:55 +09:00
Tatsuhiro Tsujikawa
8716dd05d4
Return error from nghttp2_submit_{headers,request} when self dependency is made
...
Return NGHTTP2_ERR_INVALID_ARGUMENT from nghttp2_submit_headers() if
given stream ID and pri_spec->stream_id are the same (thus trying to
depend on itself).
Also return NGHTTP2_ERR_INVALID_ARGUMENT from nghttp2_submit_request()
and nghttp2_submit_headers() with stream_id == 1, when new stream ID
equals to pri_spec->stream_id.
Previously, these cases are not checked, and just sent to peer.
2015-12-25 21:37:18 +09:00
Tatsuhiro Tsujikawa
dd4d549dc1
asio: Rename http2::get_io_services() as http2::io_services()
...
The naming convention in asio lib does not use get_something.
2015-12-25 21:06:25 +09:00
Tatsuhiro Tsujikawa
486dba8d8a
nghttpx: Strict validation for header fields given in configuration
2015-12-25 20:57:24 +09:00
Tatsuhiro Tsujikawa
e677e37876
Merge pull request #461 from ayanamist/ayanamist-patch-1
...
header value should not be inp_strlower
2015-12-25 20:47:11 +09:00
ayanamist
5ec6066fdd
header value should not be inp_strlower
...
http header keys are case-insensitive, but header values are case-sensitive, so it should not be changed.
2015-12-25 11:03:55 +08:00
Tatsuhiro Tsujikawa
894c1bd02e
Create idle stream on client side
...
With the presence of idle stream related API (e.g.,
nghttp2_create_idle_stream()), it is more predictable for client to
create idle streams with its dependency to another idle stream.
Previously, we didn't create complete parent idle stream in this case.
Now we create idle streams as we do on server side.
2015-12-25 00:10:37 +09:00
Tatsuhiro Tsujikawa
8919c8c139
Check initgroups with AC_CHECK_DECLS for cygwin
2015-12-24 21:15:46 +09:00
Tatsuhiro Tsujikawa
685f1772fc
Bump up version number to 1.6.1-DEV
2015-12-23 22:56:39 +09:00
Tatsuhiro Tsujikawa
fe8998ab5c
Update man pages
2015-12-23 22:52:11 +09:00
Tatsuhiro Tsujikawa
4988cd26b5
Bump up version number to 1.6.0, LT revision to 18:0:4
2015-12-23 22:49:39 +09:00
Tatsuhiro Tsujikawa
1b15bb7a56
Update neverbleed
2015-12-23 22:48:37 +09:00
Tatsuhiro Tsujikawa
8122bc5aef
Fix compile error with gcc ASAN enabled
2015-12-23 17:14:36 +09:00
Tatsuhiro Tsujikawa
bd9a19e23b
Add test for 92a56d034f
2015-12-23 17:10:33 +09:00
Tatsuhiro Tsujikawa
92a56d034f
Fix bug that idle/closed stream may be destroyed while it is referenced
2015-12-23 16:38:30 +09:00
Tatsuhiro Tsujikawa
5de2c7a8c1
Detect availability of initgroups
2015-12-23 14:21:31 +09:00
Tatsuhiro Tsujikawa
7c5ef0613d
asio: Add configurable connect/read timeout for client
...
This commit includes backward incompatible change, since we change
private field in public API class.
2015-12-23 00:08:55 +09:00
Tatsuhiro Tsujikawa
1ee1122d40
asio: Add configurable tls handshake/read timeout to server
2015-12-23 00:08:16 +09:00
Tatsuhiro Tsujikawa
09bd9c94a3
asio: client: Should call shutdown_socket() on read error
2015-12-22 00:40:22 +09:00
Tatsuhiro Tsujikawa
ca4a40b8e0
Don't schedule response HEADERS with priority tree
...
Previously we scheduled the transmission of response HEADERS using
priority tree in the belief that it allows more better utilization of
bandwidth for prioritized streams. But to reduce the overhead of
reconstruction of priority queue when connection level flow control
window is depleted, we just don't check priority tree in this case.
This means that response HEADERS frames are not sent even though they
are not flow controlled. This could waste bandwidth. To improve this
situation, we stop scheduling response HEADERS with priority tree for
now. Now they are just sent in the order they submitted. The
response body DATA continued to be scheduled with priority tree as
before.
2015-12-21 21:33:58 +09:00
Tatsuhiro Tsujikawa
cb73ba948d
Simplify HEADERS handling; handle push response in one function
2015-12-20 23:47:16 +09:00
Tatsuhiro Tsujikawa
e957147249
Make obvious implementation error connection error
2015-12-20 23:29:24 +09:00
Tatsuhiro Tsujikawa
010726a875
Simplify error handling in nghttp2_session_on_headers_received
...
return session_inflate_handle_invalid_stream(...) case is for streams
for INITIAL state, but this is rare case. In general, we'd like to
reduce RST_STREAM transmission, and it is suffice to ignore this frame
for now.
2015-12-20 23:20:14 +09:00
Tatsuhiro Tsujikawa
6c1a76af6e
asio: Use std::move for remote_endpoint assignment
2015-12-20 14:00:58 +09:00
Tatsuhiro Tsujikawa
19146211d7
Update doc
2015-12-20 13:20:21 +09:00
Tatsuhiro Tsujikawa
9f0083309e
Fix strange use of session_detect_idle_stream
2015-12-20 13:19:29 +09:00
Tatsuhiro Tsujikawa
dd93b29397
clang-format
2015-12-20 12:48:39 +09:00
Tatsuhiro Tsujikawa
c5ea2b4ab5
Merge branch 'apohl79-master'
2015-12-19 23:38:37 +09:00
Tatsuhiro Tsujikawa
e71948d611
Merge branch 'master' of https://github.com/apohl79/nghttp2 into apohl79-master
2015-12-19 23:33:33 +09:00
Tatsuhiro Tsujikawa
5a2d75551d
h2load: Remove "(client)" from per-client req/s stat for simplicity
2015-12-19 22:56:10 +09:00
Andreas Pohl
9f2d064d7c
libnghttp2_asio: Optimized remote endpoint interface to const ref where possible
2015-12-19 14:08:15 +01:00
Tatsuhiro Tsujikawa
2d2188e77b
src: Add 451 status code
...
https://datatracker.ietf.org/doc/draft-ietf-httpbis-legally-restricted-status/
2015-12-19 18:35:01 +09:00
Tatsuhiro Tsujikawa
feae76fbc0
Remove unused commented lines
2015-12-18 22:44:08 +09:00
Tatsuhiro Tsujikawa
80f7abb565
Fix crash caused by the regression in 9f8fc7b2bb
2015-12-17 22:25:28 +09:00
Tatsuhiro Tsujikawa
9f8fc7b2bb
Strict error handling for frames which are not allowed after closed (remote)
...
This makes h2spec strict mode a bit happier. We still one failing
test with h2spec -S (strict mode).
2015-12-17 21:31:20 +09:00
Tatsuhiro Tsujikawa
9cfda0c070
Update doc
2015-12-17 18:04:16 +09:00
Andreas Pohl
a30dad4f5e
libnghttp2_asio: Added access to a requests remote endpoint
2015-12-16 18:38:21 +01:00
Tatsuhiro Tsujikawa
15d9f222ed
Add --lib-only configure option
...
This is a short hand for --disable-app --disable-examples
--disable-hpack-tools --disable-python-bindings, for users who want to
build libnghttp2 only.
2015-12-16 21:31:43 +09:00
Tatsuhiro Tsujikawa
ef7d6e8a0c
nghttpx: Loose HTTP Upgrade condition
2015-12-16 00:38:30 +09:00
Tatsuhiro Tsujikawa
71012fe83a
nghttpx: Add constexpr
2015-12-15 22:47:05 +09:00
Tatsuhiro Tsujikawa
228d92244a
Optimize nghttp2_pq swap
2015-12-15 22:07:51 +09:00
Tatsuhiro Tsujikawa
248a64f0b2
Compile with OpenSSL 1.1.0-pre1
2015-12-14 21:12:25 +09:00
Tatsuhiro Tsujikawa
68c5deea5a
Clarify the condition when opening new stream from remote is allowed
2015-12-11 21:23:49 +09:00
Tatsuhiro Tsujikawa
ab93db2259
Add test when client sends push response to server
2015-12-11 00:18:27 +09:00
Tatsuhiro Tsujikawa
f14ac74316
At least check stream ID is valid when PUSH_PROMISE is received in goaway mode
2015-12-10 23:54:54 +09:00
Tatsuhiro Tsujikawa
0c70ff5658
Simplify
2015-12-10 23:18:02 +09:00
Tatsuhiro Tsujikawa
ba671a8473
Merge branch 'apohl79-master'
2015-12-10 21:29:00 +09:00
Tatsuhiro Tsujikawa
66bbb5c76f
Merge branch 'master' of https://github.com/apohl79/nghttp2 into apohl79-master
2015-12-10 21:09:28 +09:00
Andreas Pohl
a4392d4a7f
libnghttp2_asio: Make io_service accessors const
2015-12-09 23:11:40 +01:00
Tatsuhiro Tsujikawa
86505b1c54
Update h2load howto and all manual pages
2015-12-08 23:56:21 +09:00
Andreas Pohl
924fef1f32
libnghttp2_asio: Added io_service accessors
...
To allow the asio wrapper to work with boost.fiber it is required
to access the underlying io_service objects.
2015-12-08 15:54:22 +01:00
Tatsuhiro Tsujikawa
7cc2d22ab5
Fix compile error with gcc
2015-12-08 23:33:26 +09:00
Tatsuhiro Tsujikawa
abcdbf0039
Take into account remainder due to integer division when calculating cycle
2015-12-08 23:15:55 +09:00
Tatsuhiro Tsujikawa
4bcc14fc67
Reschedule stream when only weight is changed
...
Previously, we only updated stream's weight field when only weight was
changed by PRIORITY frame. If stream is queued, it would be better to
actually reschedule it based on new weight. This could be especially
useful if weight is increased.
2015-12-07 23:14:22 +09:00
Tatsuhiro Tsujikawa
72f815d535
Update descendant_last_cycle on nghttp2_stream_next_outbound_item
...
Previously, we updated descendant_last_cycle in
nghttp2_stream_reschedule, which is called after non-zero DATA frame.
But this was not optimal since we still had old descendant_last_cycle,
and new stream was scheduled based on it. Now descendant_last_cycle
is updated in nghttp2_stream_next_outbound_item, which is called when
stream with highest priority is selected from queue. And new stream
is scheduled based on it. This commit also removes 0-reset of
descendant_last_cycle and cycle in nghttp2_stream_reschedule. This
could help making them lower, so that they are not overflow. But
there is a pattern that it doesn't work, and we are not sure they are
really useful at this moment.
2015-12-07 22:48:50 +09:00
Tatsuhiro Tsujikawa
9c84f60ba0
Merge branch 'master' into simple-extensions
2015-12-04 23:48:40 +09:00
Tatsuhiro Tsujikawa
7ca9ead36b
nghttp: Update doc for default value of -M
2015-12-04 23:08:58 +09:00
Tatsuhiro Tsujikawa
e67987404b
Merge branch 'sunpoet-master'
2015-12-04 23:04:33 +09:00
Sunpoet Po-Chuan Hsieh
90b5a5856b
Fix build when OpenSSL 1.0.2 is not available
2015-12-04 17:38:04 +08:00
Tatsuhiro Tsujikawa
a151a44caf
Set max number of outgoing concurrent streams to 100 by default
...
Instead of using nonsensical large value for max outgoing concurrent
streams, use more sensible value, 100.
2015-12-03 23:45:03 +09:00
Tatsuhiro Tsujikawa
478a423bcf
Reduce nghttp2_stream size
2015-12-03 22:53:02 +09:00
Tatsuhiro Tsujikawa
93d8636fb0
Keep incoming streams only at server side
...
We should only keep incoming closed streams because we only keep at
most max concurrent streams, which only applied to incoming streams.
2015-12-03 22:48:41 +09:00
Tatsuhiro Tsujikawa
2288ee8060
Create stream object for pushed resource during nghttp2_submit_push_promise()
...
Previously, stream object for pushed resource was not created during
nghttp2_submit_push_promise(). It was created just before
nghttp2_before_frame_send_callback was called for that PUSH_PROMISE
frame. This means that application could not call
nghttp2_submit_response for the pushed resource before
nghttp2_before_frame_send_callback was called. This could be solved
by callback chaining, but for web server with back pressure from
backend stream, it is a bit unnecessarily hard to use.
This commit changes nghttp2_submit_push_promise() behaviour so that
stream object is created during that call. It makes application call
nghttp2_submit_response right after successful
nghttp2_submit_push_promise call.
2015-12-02 21:16:30 +09:00
Tatsuhiro Tsujikawa
6beaf4d9f3
h2load: Add req/s min, max, mean and sd for clients
2015-12-01 23:54:21 +09:00
Tatsuhiro Tsujikawa
d1d1c83e56
h2load: Fix broken connection times
2015-12-01 22:29:30 +09:00
Tatsuhiro Tsujikawa
cbad05e0de
src: Fix compile error with gcc-4.7
2015-12-01 21:21:50 +09:00
Tatsuhiro Tsujikawa
e01d213636
Update man pages
2015-11-29 19:12:53 +09:00
Tatsuhiro Tsujikawa
e1e7840b2c
doc: Fix broken layout in ascii art
2015-11-29 19:08:17 +09:00
Tatsuhiro Tsujikawa
2754d9e2bb
Update doc
2015-11-28 15:24:13 +09:00
Tatsuhiro Tsujikawa
12b2e0a2b3
Add nghttp2_session_create_idle_stream() API
...
See GH-436
2015-11-28 15:23:44 +09:00
Tatsuhiro Tsujikawa
aacac613af
Assert dep_stream is non-null to shut up scan-build
2015-11-28 00:50:29 +09:00
Tatsuhiro Tsujikawa
ba9e912cf6
src: Rename isAlpha, isDigit, and isHexDigit as is_...
2015-11-28 00:42:51 +09:00
Tatsuhiro Tsujikawa
d867fe64e3
src: Rename endsWith as ends_with
2015-11-28 00:42:51 +09:00
Tatsuhiro Tsujikawa
de247f7d33
src: Rename startsWith as starts_with
2015-11-28 00:42:51 +09:00
Tatsuhiro Tsujikawa
1ba28bef1f
util: Remove unused functions; rename regacy camel-case function names
2015-11-28 00:42:51 +09:00
Tatsuhiro Tsujikawa
c0858d8c1a
src: Minor optimization for appending single character
2015-11-28 00:03:16 +09:00
Tatsuhiro Tsujikawa
863493766d
Fix in_attr_char(); cleanup const char array iteration
2015-11-27 23:54:07 +09:00
Tatsuhiro Tsujikawa
a70445e122
Retain stream in reserved state on client side
...
Application may use it using nghttp2_stream_* functions, and traverse
its dependency.
2015-11-27 22:54:55 +09:00
Tatsuhiro Tsujikawa
f23e34fa3c
Handle response in nghttp2_on_begin_frame_callback
...
Previously, nghttp2_session_end_request_headers_received assumes
stream is still writable (in other words, local endpoint has not sent
END_STREAM). But this assumption is false, because application can
send response in nghttp2_on_begin_frame_callback. Probably, this
assumption was made before the callback was introduced. This commit
addresses this issue. Since all
nghttp2_session_end_*_headers_received functions are identical, we
refactored them into one function.
2015-11-27 22:50:13 +09:00
Tatsuhiro Tsujikawa
3d1d54e2ce
Remove dead code
2015-11-27 21:13:44 +09:00
Tatsuhiro Tsujikawa
c87a062dba
Bump up version number to v1.5.0-DEV
2015-11-26 22:28:45 +09:00
Tatsuhiro Tsujikawa
83cc2511e3
Remove flags parameter from nghttp2_pack_extension_callback
...
It has no usecase at the moment. It is most likely that applications
know the flags when it submitted extension frame, no need to modify it
later. Possibly feature bloat.
2015-11-17 21:29:21 +09:00
Tatsuhiro Tsujikawa
eb4e402aae
Merge branch 'master' into simple-extensions
2015-11-14 22:31:52 +09:00
Tatsuhiro Tsujikawa
5d611d2e24
Merge branch 'master' into simple-extensions
2015-10-29 23:24:34 +09:00
Tatsuhiro Tsujikawa
837e716306
Fix compile error with gcc
2015-10-15 00:30:42 +09:00
Tatsuhiro Tsujikawa
061a557839
Add nghttp2_option_set_user_recv_extension_type to opt-in incoming extension type
2015-10-15 00:17:07 +09:00
Tatsuhiro Tsujikawa
d9893d014c
Add tests
2015-10-11 17:46:23 +09:00
Tatsuhiro Tsujikawa
3785cf07ba
Add simple HTTP/2 extension framework
...
Application can utilize this framework to send/receive user defined
extension frames. These frames are expected not to change existing
protocol behaviour.
2015-10-11 17:46:23 +09:00