Commit Graph

4140 Commits

Author SHA1 Message Date
Luke Tucker
6407f5bf68 Fix keepalive ping (#2316)
The firstAckElicitingPacketAfterIdleSendTime condition was inverted
in a recent PR, maybe just a typo.  This was causing only one ping
to be sent during periods of no activity.  The ack from the first
keepalive ping causes firstAckElicitingPacketAfterIdleSentTime
to be set to zero.  If there is no further activity, it will remain
zero and prevent further keepalive pings.
2020-01-27 11:13:54 +07:00
Marten Seemann
9c1aeee0ec Merge pull request #2308 from lucas-clemente/session-remove-close
remove Session.Close()
2020-01-26 18:01:34 +07:00
Marten Seemann
a93e544c94 remove Session.Close()
Session.Close() sends a transport-level error code. Applications should
not be able to call this function, but use CloseWithError() instead.
2020-01-26 17:41:53 +07:00
Marten Seemann
a5120204cc use H3_NO_ERROR when closing the http3.Client 2020-01-26 17:37:22 +07:00
Marten Seemann
fe026a3ac1 Merge pull request #2307 from lucas-clemente/packet-handler-destroy
rename packetHandlerMap.Close() to Destroy()
2020-01-24 20:14:08 +07:00
Marten Seemann
8b4348a43d Merge pull request #2309 from lucas-clemente/remove-quic-session-closeremote
remove unneeded closeRemote() method on the quicSession interface
2020-01-24 20:13:39 +07:00
Marten Seemann
20e222b399 Merge pull request #2305 from lucas-clemente/update-retry-key
update Retry key and nonce to the values used in draft-25
2020-01-24 20:13:21 +07:00
Marten Seemann
5ee0c2c5cf Merge pull request #2306 from lucas-clemente/congestion-controller-packet-size
change the packet size the congestion controller uses
2020-01-24 20:12:05 +07:00
Marten Seemann
9377f48dc7 Merge pull request #2304 from lucas-clemente/rename-disable-active-migration
update the name of the disable_active_migration transport parameter
2020-01-24 20:06:42 +07:00
Marten Seemann
3446946217 add a unit test using the test vector from the draft 2020-01-24 10:20:23 +07:00
Marten Seemann
f274753663 remove unneeded closeRemote() method on the quicSession interface 2020-01-23 12:02:25 +07:00
Marten Seemann
db396d8a78 rename packetHandlerMap.Close() to Destroy() 2020-01-22 17:59:22 +07:00
Marten Seemann
281fb1d0b8 use actually used datagram size for congestion controller calculations 2020-01-22 15:04:03 +07:00
Marten Seemann
d4de582fad rename defaultTCPMSS to maxDatagramSize 2020-01-22 14:54:05 +07:00
Marten Seemann
31e4691ffd move congestion controller related constants to the congestion package 2020-01-22 14:40:14 +07:00
Marten Seemann
52f9811046 update Retry key and nonce to the values used in draft-25 2020-01-22 10:51:32 +07:00
Marten Seemann
6f347233e2 update the name of the disable_active_migration transport parameter 2020-01-21 15:05:12 +07:00
Marten Seemann
62d3a4166a Merge pull request #2293 from lucas-clemente/mock-connection
use a mock connection in tests
2020-01-17 17:20:07 +07:00
Marten Seemann
5a566f2176 Merge pull request #2226 from lucas-clemente/retry-integrity
implement the retry integrity tag
2020-01-17 17:19:15 +07:00
Marten Seemann
3568c41343 Merge pull request #2302 from lucas-clemente/smaller-session-tickets
only save transport parameters to session ticket when using 0-RTT
2020-01-17 17:01:45 +07:00
Marten Seemann
b4d55e0248 Merge pull request #2300 from lucas-clemente/interop-multiconnect
add support for the multiconnect interop test case
2020-01-17 16:52:10 +07:00
Marten Seemann
13b2c7403d use a mock connection in the send queue tests 2020-01-17 16:51:39 +07:00
Marten Seemann
adfc015a9f use a mock connection in the closedSession tests 2020-01-17 16:51:39 +07:00
Marten Seemann
15301a7f6e use a mock connection in the session tests 2020-01-17 16:51:39 +07:00
Marten Seemann
7c9d387a69 fix session unit test that tests nothing to send 2020-01-17 16:51:39 +07:00
Marten Seemann
2c67c117f6 Merge pull request #2292 from lucas-clemente/fix-0rtt-drop-test
fix session unit test checking that the client drops 0-RTT packets
2020-01-17 16:51:01 +07:00
Marten Seemann
01226661e6 Merge pull request #2297 from lucas-clemente/increase-cwnd
increase the maximum congestion window to 10000 packets
2020-01-17 16:38:28 +07:00
Marten Seemann
59bfe7f90a Merge pull request #2301 from lucas-clemente/configure-0-rtt
only enable 0-RTT when using ListenEarly and DialEarly
2020-01-17 16:38:02 +07:00
Marten Seemann
3e469db631 protect the AEAD calculating the integrity tag by a mutex 2020-01-17 14:01:12 +07:00
Marten Seemann
8b52e62b86 allow corrupting of Retry packets in the MITM integration test 2020-01-17 13:42:57 +07:00
Marten Seemann
7b10453af8 implement the Retry integrity tag 2020-01-17 13:42:57 +07:00
Marten Seemann
9ea9c7947f implement calculation of the retry integrity tag 2020-01-17 13:42:57 +07:00
Marten Seemann
eeba3951ae only enable 0-RTT when using ListenEarly and DialEarly 2020-01-17 11:22:12 +07:00
Marten Seemann
080b61d271 only save transport parameters to session ticket when using 0-RTT 2020-01-17 10:50:27 +07:00
Marten Seemann
8aaa11687d add support for the multiconnect interop test case 2020-01-16 21:34:00 +07:00
Marten Seemann
39efdfe695 Merge pull request #2298 from MarinX/http-remoteaddr-fix
set remote address on http request
2020-01-14 19:47:34 +07:00
Marin
44cc47a887 set remote address on http request 2020-01-14 13:30:26 +01:00
Marten Seemann
b1f8b8f25d increase the maximum congestion window to 10000 packets 2020-01-14 16:34:34 +07:00
Marten Seemann
d62b4848b9 fix session unit test checking that the client drops 0-RTT packets 2020-01-11 18:11:24 +07:00
Marten Seemann
fb9315c4f1 Merge pull request #2290 from lucas-clemente/example-no-panic
use log.Fatal() instead of panic() in example client and server
2020-01-08 15:38:56 +07:00
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