Marten Seemann
2ba4617463
use log.Fatal() instead of panic() in example client and server
2020-01-08 15:15:52 +07:00
Marten Seemann
59c2c34dbc
Merge pull request #2289 from lucas-clemente/fix-keep-alive-duration
...
fix mismatching expectation of the keep alive timer
2020-01-08 14:54:42 +07:00
Marten Seemann
079279b9cf
fix mismatching expectation of the keep alive timer
...
session.maybeResetTimer() and session.run() were using slightly
different definitions of when a keep-alive PING should be sent. Under
certain conditions, this would make us repeatedly set a timer for the
keep-alive, but on timer expiration no keep-alive would be sent.
2020-01-08 11:09:45 +07:00
Marten Seemann
6bf30e4563
Merge pull request #2279 from lucas-clemente/handshake-complete-integration-test
...
add a test that waits for handshake completion after sending 0-RTT data
2020-01-07 12:47:58 +07:00
Marten Seemann
9feba60b8a
add a test that waits for handshake completion after sending 0-RTT data
2020-01-07 11:16:42 +07:00
Marten Seemann
54d9daba44
Merge pull request #2285 from lucas-clemente/interop-key-log-files
...
export key log files from client and server in the interop runner
2020-01-06 19:16:40 +07:00
Marten Seemann
042bdb1e7d
Merge pull request #2281 from lucas-clemente/fix-flaky-stream-deadline-test
...
increase the TIMESCALE factor on AppVeyor
2020-01-06 17:44:13 +07:00
Marten Seemann
4ab4b8004a
Merge pull request #2274 from lucas-clemente/log-0-rtt-key-install
...
log when 0-RTT keys become available
2020-01-06 17:43:14 +07:00
Marten Seemann
1723a16b00
Merge pull request #2273 from lucas-clemente/improve-dropped-packet-logging
...
log the packet size of dropped packets
2020-01-06 17:42:53 +07:00
Marten Seemann
07e34f1255
Merge pull request #2275 from lucas-clemente/fix-session-ticket-transport-parameter-unmarshal
...
fix unmarshaling of transport parameters from session tickets
2020-01-06 17:42:13 +07:00
Marten Seemann
4c8939908e
Merge pull request #2283 from lucas-clemente/fix-destroy-race-condition
...
fix race condition when destroying the session
2020-01-06 17:41:47 +07:00
Marten Seemann
2c4990405b
export a key log file from the server in the interop runner
2020-01-05 11:22:19 +07:00
Marten Seemann
664474b058
export a key log file from the client in the interop runner
2020-01-05 11:20:04 +07:00
Marten Seemann
c0e8df7bbc
fix race condition when destroying the session
2020-01-04 14:57:42 +07:00
Marten Seemann
22b36a783b
increase the TIMESCALE factor on AppVeyor
...
This hopefully makes timing-based tests less flaky.
2020-01-03 17:05:19 +07:00
Marten Seemann
a1840b3221
fix unmarshaling of transport parameters from session tickets
2020-01-02 15:12:32 +08:00
Marten Seemann
81831049c9
log when 0-RTT keys become available
2020-01-02 15:10:43 +08:00
Marten Seemann
63096562a0
log the packet size of dropped packets
2020-01-02 14:52:35 +08:00
Marten Seemann
07d76c547f
Merge pull request #2064 from lucas-clemente/zero-rtt
...
add basic support for 0-RTT
2020-01-01 18:13:58 +04:00
Marten Seemann
00a0d09e6a
add a Changelog entry for 0-RTT support
2020-01-01 18:04:02 +04:00
Marten Seemann
052508e8c2
add a version to marshaled transport parameters in the session ticket
2020-01-01 18:04:02 +04:00
Marten Seemann
00150e1d94
add some integration tests for 0-RTT handshakes
2020-01-01 18:04:02 +04:00
Marten Seemann
ce7583f813
add DialEarly and DialAddrEarly to dial 0-RTT connections
2020-01-01 18:04:02 +04:00
Marten Seemann
951477af92
queue 0-RTT packets for retransmission after receiving a Retry
2020-01-01 18:04:02 +04:00
Marten Seemann
afbf5efd01
don't force 0-RTT packets to use 4 byte packet numbers
2020-01-01 18:04:02 +04:00
Marten Seemann
22abcfe6fb
drop 0-RTT write keys when receiving the 1-RTT keys
2020-01-01 18:04:02 +04:00
Marten Seemann
40a993e31c
check that the client doesn't switch back to 0-RTT after sending 1-RTT
2020-01-01 18:04:02 +04:00
Marten Seemann
c79dfe77b8
implement packing of 0-RTT packets
2020-01-01 18:04:02 +04:00
Marten Seemann
44aa12850e
restore the server's transport parameters from the session ticket
2020-01-01 18:04:02 +04:00
Marten Seemann
1f8a47af02
implement a ClientSessionCache that can save application data
2020-01-01 18:04:02 +04:00
Marten Seemann
9b0a4a8813
move unmarshaling of the transport parameters to the crypto setup
2020-01-01 18:04:01 +04:00
Marten Seemann
fc37cdc5c5
implement unpacking of 0-RTT packets
2019-12-30 18:39:21 +04:00
Marten Seemann
c5f74595ca
receive 0-RTT sealers and openers from qtls when using 0-RTT
2019-12-30 18:39:21 +04:00
Marten Seemann
a9f4195fd0
check that transport params didn't change when accepting
2019-12-30 18:39:21 +04:00
Marten Seemann
ed0f426943
implement marshalling of transport parameters for the session ticket
...
When using 0-RTT, the client will reuse the transport parameters from
the last session. The server therefore needs to make sure that the
transport parameters haven't been changed in the mean time. To do so, it
encodes the transport parameters into the session ticket.
2019-12-30 18:39:21 +04:00
Marten Seemann
0b65a0c75e
don't drop Handshake keys when receiving an ACK for a 0-RTT packet
2019-12-30 18:39:21 +04:00
Marten Seemann
d6b50cf15a
use the same packet number space for received 0-RTT and 1-RTT packets
2019-12-30 18:39:21 +04:00
Marten Seemann
b25b2f6921
use the same packet number space for sent 0-RTT and 1-RTT packets
2019-12-30 18:39:21 +04:00
Marten Seemann
b0c08b1bd0
implement rules for frame types in 0-RTT packets
2019-12-30 18:39:21 +04:00
Marten Seemann
b1fc984306
add a 0-RTT encryption level
2019-12-30 18:39:21 +04:00
Marten Seemann
aecaf9dd50
update the Changelog
2019-12-30 18:39:12 +04:00
Marten Seemann
b9c3a292dc
Merge pull request #2270 from lucas-clemente/improve-handshake-drop-test
...
improve the integration tests that drops handshake packets
2019-12-19 22:20:01 +04:00
Marten Seemann
ba7434ce65
improve the integration tests that drops handshake packets
2019-12-18 19:18:44 +04:00
Marten Seemann
5acdc55c61
Merge pull request #2252 from lucas-clemente/enforce-cid-limit
...
enfore the active_connection_id_limit
2019-12-18 10:12:14 +04:00
Marten Seemann
355156ac4e
Merge pull request #2225 from lucas-clemente/handshake-done
...
implement the HANDSHAKE_DONE mechanism
2019-12-18 10:07:43 +04:00
Marten Seemann
2828fbc1af
Merge pull request #2265 from lucas-clemente/max-idle-timeout
...
use the minimum of the peers' max_idle_timeout for the idle timeout
2019-12-18 10:05:33 +04:00
Marten Seemann
15661acca6
Merge pull request #2268 from Zeymo/master
...
fix leftover use of Header.GetLength when unpacking packets
2019-12-17 08:30:38 +04:00
Zeymo
f711dfab2b
fix leftover use of Header.GetLength when unpacking packets
2019-12-17 12:22:31 +08:00
Marten Seemann
bd22b0b630
Merge pull request #2261 from lucas-clemente/header-parsing-fixes
...
use the parsed header length when unpacking packets
2019-12-16 15:25:36 +04:00
Marten Seemann
27549c5665
use the minimum of the two peers' max_idle_timeouts
2019-12-11 14:04:33 +04:00