Commit Graph

2923 Commits

Author SHA1 Message Date
Tatsuhiro Tsujikawa b14540dbb8 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.
2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa b6f5680a0b Simplify write_quic 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa 538f14a7ee Handle sending just fine 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa c63d877cbe Avoid setting 0 to repeat field 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa dd5342c057 Add missing acked_stream_data_offset callback 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa 8dec44de11 Fix return value 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa 22c6c973df Compile with the latest ngtcp2 and ngtcp2_crypto_openssl 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa 5a3be24371 Remove error handling which does not happen 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa 0825733d1b Follow ngtcp2 API changes and use libngtcp2_crypto_openssl 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa 23d31792a7 quic: Support TLS_AES_128_CCM_SHA256 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa eb6bd03b56 h2load: Add --tls13-ciphers option 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa a4456318f9 Handle preferred address 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa cf3277d631 Show ngtcp2 debug log with --verbose 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa 3ce9bbdafe h2load: Add --groups option 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa 0b7588f00a Always call write_quic when timer expires 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa a4f374bc54 h3-22 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa 9d6d436049 Handle Retry 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa 2eab70765b quic: Configure settings with options 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa 1608f33cdf h2load: Fix possible deadlock 2020-09-24 23:37:04 +09:00
Tatsuhiro Tsujikawa 329254b226 [WIP] Add QUIC to h2load 2020-09-24 23:37:04 +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 7df73a5d90 nghttpx: mrb_run was removed 2020-09-02 22:12:45 +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 abe80e371e nghttpx: Fix logging integer 2020-06-10 20:56:33 +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 49cd8e6e73 nghttpx: Add PROXY-protocol v2 support 2020-04-18 17:16:30 +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
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
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 6f967c6ef3 Fix errors reported by coverity scan 2019-09-21 13:45:20 +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
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 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 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
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