Commit Graph

4268 Commits

Author SHA1 Message Date
Marten Seemann
2ea6a294a9 send the CONNECTION_CLOSE in all available encryption levels 2020-02-25 17:10:44 +07:00
Marten Seemann
75f14a267e Merge pull request #2381 from lucas-clemente/remove-stray-travis-before-install
remove stray commands from the Travis before_install
2020-02-25 16:52:31 +07:00
Marten Seemann
8bbd4f2dc6 remove stray commands from the Travis before_install 2020-02-25 16:10:09 +07:00
Marten Seemann
51f51d5a71 Merge pull request #2383 from lucas-clemente/fix-0rtt-retry-test
fix flaky 0-RTT Retry test
2020-02-25 16:07:34 +07:00
Marten Seemann
4fc5974938 fix flaky 0-RTT Retry test 2020-02-24 19:09:00 +07:00
Marten Seemann
ca469eb0b6 Merge pull request #2378 from lucas-clemente/fix-flaky-http3-server-test
fix flaky HTTP/3 Server unit test
2020-02-24 16:40:14 +07:00
Marten Seemann
383adb619c fix flaky HTTP/3 Server unit test 2020-02-24 16:19:37 +07:00
Marten Seemann
4a96b2fa83 Merge pull request #2365 from lucas-clemente/pad-outside-of-quic-packets
pad the client's Initial packets outside of the QUIC packet
2020-02-24 15:51:15 +07:00
Marten Seemann
ebe3c1cca4 pad the client's Initial packets outside of the QUIC packet
This allows us to send coalesced packets of Initial and 0-RTT.
2020-02-24 13:57:54 +07:00
Marten Seemann
24b840f56d fix dropping of the Initial packet number space for clients 2020-02-24 13:57:54 +07:00
Marten Seemann
212bfed0d2 Merge pull request #2367 from lucas-clemente/varint-transport-parameters
change the transport parameter format to varint
2020-02-24 13:56:39 +07:00
Marten Seemann
a8f96bbd83 Merge pull request #2368 from lucas-clemente/standard-library-chacha
use the golang/x/crypto ChaCha20 implementation
2020-02-24 13:50:48 +07:00
Marten Seemann
5410f8091d Merge pull request #2366 from lucas-clemente/fix-coalesced-packet-logging
fix logging of coalesced packets
2020-02-24 13:50:24 +07:00
Marten Seemann
0c326ab401 Merge pull request #2372 from lucas-clemente/no-ginkgo-lint
remove stray GinkgoRecover(), add a lint script to check that
2020-02-24 13:49:27 +07:00
Marten Seemann
e188a6deb5 Merge pull request #2370 from lucas-clemente/fix-flaky-half-rtt-data-test
fix flaky 0.5-RTT data test
2020-02-24 13:48:30 +07:00
Marten Seemann
aa9a5a4e5f add a lint script to verify that Ginkgo is not imported 2020-02-23 09:50:12 +07:00
Marten Seemann
215ca4c155 remove stray GinkgoRecover() in http3.Server 2020-02-23 09:43:40 +07:00
Marten Seemann
d8d622ee99 fix flaky 0.5-RTT data test 2020-02-22 16:17:34 +07:00
Marten Seemann
b658f92060 use the golang/x/crypto ChaCha20 implementation
https://go-review.googlesource.com/c/crypto/+/206638 added the
SetCounter method required for QUIC's header protection.
2020-02-22 10:53:41 +07:00
Marten Seemann
9ee6efd506 change the transport parameter format to varint 2020-02-22 09:36:02 +07:00
Marten Seemann
c1cb3e64dc fix logging of coalesced packets
Coalesced packets that just have a single part shouldn't be logged as
coalesced packets.
2020-02-21 17:09:03 +07:00
Marten Seemann
f5d88d3edd Merge pull request #2359 from lucas-clemente/simplify-ack-range-pruning
simplify ACK range pruning
2020-02-21 16:00:14 +07:00
Marten Seemann
a5fc72047e simplify pruning of old ACK ranges 2020-02-21 15:46:58 +07:00
Marten Seemann
f317a471bb use a single constructor for SentPacketHandler and ReceivedPacketHandler 2020-02-21 15:45:24 +07:00
Marten Seemann
e9cdb29ef9 Merge pull request #2362 from lucas-clemente/client-amplification-protection
implement the client side for the amplification protection
2020-02-21 15:34:21 +07:00
Marten Seemann
e97e3040ed make sure the client sends packets to unblock the server 2020-02-21 12:29:11 +07:00
Marten Seemann
d20c1bfaed remove unused parameter from SentPacketHandler.ReceivedAck 2020-02-21 10:05:17 +07:00
Marten Seemann
73937e8753 Merge pull request #2349 from lucas-clemente/coalesced-packets
implement sending of coalesced packets
2020-02-20 16:53:33 +07:00
Marten Seemann
ad7327845c Merge pull request #2358 from lucas-clemente/drop-0rtt-keys
drop 0-RTT read keys after 3 PTO
2020-02-20 16:47:14 +07:00
Marten Seemann
23059d5a68 Merge pull request #2280 from lucas-clemente/zero-rtt-queue
queue 0-RTT for 100ms to allow the corresponding Initial to arrive
2020-02-20 16:44:03 +07:00
Marten Seemann
7a532326ec don't pack ACK frames in the second part of a coalesced packet
This prevents a possible overflow of the maximum packet size if the ACK
frames ends up being really large.
2020-02-20 16:42:58 +07:00
Marten Seemann
db7fc0eb02 simplify packing of Initial and Handshake packets 2020-02-20 16:42:58 +07:00
Marten Seemann
29b784e782 rename packet packing functions in the packet packer 2020-02-20 16:42:58 +07:00
Marten Seemann
5aad7cae5d send coalesced packets 2020-02-20 16:42:56 +07:00
Marten Seemann
244e1ae8e7 Merge pull request #2353 from lucas-clemente/qlog-connection-started-event
add support for the connection_started event
2020-02-20 16:27:22 +07:00
Marten Seemann
d642bf9098 simplify content storage in packed packets
It's not necessary to store both the packetBuffer and the slice
containing the raw data in the packet.
2020-02-20 16:25:54 +07:00
Marten Seemann
88fc6b9a87 Merge pull request #2332 from phuslu/http-context-key
Add LocalAddr/ContextKey to http3 request context
2020-02-20 16:24:50 +07:00
Marten Seemann
077504f557 refactor sealing of packets 2020-02-20 16:19:08 +07:00
Marten Seemann
a4b4d52063 refactor packing of packets before and after the handshake is confirmed 2020-02-20 16:19:08 +07:00
Marten Seemann
d08c2145a4 drop 0-RTT read keys after 3 PTO 2020-02-18 17:51:05 +07:00
Marten Seemann
e01995041e Merge pull request #2357 from lucas-clemente/loss-timer
fix early retransmit loss timer
2020-02-18 16:45:12 +07:00
Marten Seemann
1692adb142 fix unit tests for the early retransmit timer 2020-02-18 12:04:27 +07:00
zverevm
4f7b0b1675 Do not ignore loss timer. 2020-02-17 12:36:42 +01:00
Marten Seemann
9899be3a06 Merge pull request #2348 from lucas-clemente/send-all-packets-before-closing
make sure that all packets in the send queue are sent before closing
2020-02-17 17:18:25 +07:00
Marten Seemann
14a5cc8ab4 add support for the connection_started event 2020-02-17 15:52:06 +07:00
Marten Seemann
93e724434b make sure that all packets in the send queue are sent before closing 2020-02-17 13:41:00 +07:00
Marten Seemann
81cf5ba409 Merge pull request #2352 from lucas-clemente/tls-conn-localaddr
set the LocalAddr that is used in the tls.ClientHelloInfo.Conn
2020-02-17 13:24:36 +07:00
Marten Seemann
f034e8ba19 set the LocalAddr that is used in the tls.ClientHelloInfo.Conn 2020-02-16 14:10:30 +07:00
Marten Seemann
643f0b4c67 drop incoming packets when the server's receive queue is full 2020-02-15 16:43:00 +07:00
Marten Seemann
9b71878d53 release packet buffers when deleting a 0-RTT queue 2020-02-15 15:44:09 +07:00