Tatsuhiro Tsujikawa
47c33b8d03
nghttpx: Receive ECN
2021-11-05 20:57:24 +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
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
f8474b25f0
nghttpx: Reduce dgram size if sendmsg fails with EINVAL or EMSGSIZE
2021-10-18 22:37:16 +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
9d41896663
nghttpx: Rename --frontend-quic-server-id to --quic-server-id
2021-10-17 14:48:46 +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
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
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
d7af5924ff
nghttpx: Extend QUIC server ID to 4 bytes
2021-10-10 16:05:48 +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
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
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
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
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
657d94b992
Fix compile error with libressl
2021-09-21 19:48:38 +09:00
Tatsuhiro Tsujikawa
6a099ee50a
nghttpx: QUIC requires TLS
2021-09-18 19:27:47 +09:00
Tatsuhiro Tsujikawa
9a6b623c25
Update doc
2021-09-18 15:19:15 +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
e167e07a9a
nghttpx: Check that HTTP response message finished safely
2021-09-16 22:00:36 +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
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
8f419a4869
nghttpx: Add --frontend-quic-congestion-controller option
2021-09-13 21:35:46 +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
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
c2e29ad06f
nghttpx: Enforce worker-frontend-connections for QUIC
2021-08-31 19:48:26 +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
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
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
58d81dbc52
nghttpx: Send Stateless Reset in response to Short packet only for now
2021-08-29 21:08:41 +09:00