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
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
e584d9cd2e
Measure the number of UDP datagrams sent and received
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
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
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
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
2722119776
Handle stream limit increment
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
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
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
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
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
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
9c748d20d5
[WIP] Add QUIC to h2load
2021-08-21 18:33:38 +09: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
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
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
43a47aa08b
Do not return HPE_USER from where it is prohibited
2021-05-13 13:59:44 +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
e406a2c15e
Update doc
2021-02-23 17:41:27 +09:00