Marten Seemann
9db23eceed
reverse the order of the SupportedVersions slice
...
For the client, the Versions option in the quic.Config encodes the first
entry is the preferred version. If not set, this should default to the
highest supported version.
2017-05-05 18:06:14 +08:00
Marten Seemann
b305cd674f
make it possible to configure the QUIC versions for the server
2017-05-05 18:05:57 +08:00
Marten Seemann
0a2c37d42a
add QUIC 37 to supported versions
...
fixes #375
Chrome tests are disabled for QUIC 37, since the Chrome version in the
docker image doesn’t support this version yet.
2017-04-29 16:59:32 +07:00
Marten Seemann
3c223b22a2
include peer perspective in nullAEAD
...
ref #375
2017-04-27 18:05:24 +07:00
Lucas Clemente
e2a0d9f77c
Remove several unused fields and symbols
...
Detected with `unused -exports=true ./...`
2017-04-05 21:46:33 +01:00
Lucas Clemente
1c5380c49b
Implement loss recovery from the current WG draft
...
Fixes #498 and will hopefully go a long way towards fixing the many
flaky tests.
2017-04-02 10:29:09 +02:00
Marten Seemann
28c115fee1
drop support for QUIC 34
...
fixes #368
2017-03-19 20:57:28 +07:00
Marten Seemann
eb7ed2624a
only send Public Reset after a timeout
...
fixes #471
2017-03-08 18:15:52 +07:00
Marten Seemann
1f01904270
read packets with the maximum packet size
...
fixes #467
2017-03-06 13:02:46 +07:00
Marten Seemann
9e147714ac
pack smaller packets as long as the encryption is not forward secure
2017-03-01 14:01:52 +07:00
Marten Seemann
b84e945868
log the encryption level of sent and received packets
2017-02-25 08:27:15 +07:00
Marten Seemann
a972c7a21e
return the encryption level of a packet when decrypting it
2017-02-25 08:27:08 +07:00
Marten Seemann
db11b25790
ensure minimum size of connection-level flow control window
...
fixes #409
2017-02-08 11:39:33 +07:00
Marten Seemann
b52204322f
don’t modify version slice when finding the highest supported version
...
will be needed for detecting version downgrade attacks
2017-01-14 18:58:47 +07:00
Marten Seemann
a587af079d
improve the connection parameters manager for the client
2017-01-14 18:58:46 +07:00
Marten Seemann
c42262c2b3
implement a h2quic client that can send H2 requests
2017-01-14 18:58:43 +07:00
Marten Seemann
d37380b7a5
detect unsupported versions when parsing version negotiation packet
2017-01-14 18:52:21 +07:00
Marten Seemann
5b97f0550c
implement a function to find the highest supported version
2017-01-14 18:52:21 +07:00
Marten Seemann
2131e8fa6d
don’t send more than 3 CHLOs
...
makes sure that the server allows the client to make progress in the handshake
2017-01-14 18:52:20 +07:00
Marten Seemann
7f2e706908
increase CryptoParameterMaxLength
2017-01-14 18:52:20 +07:00
Marten Seemann
cc2d966d84
write PublicHeaders for packets sent as a client
...
fixes #346
2017-01-14 18:45:13 +07:00
Marten Seemann
896f4e138b
increase the ACK send delay to the value Chromium is using
2017-01-09 18:45:43 +07:00
Marten Seemann
edf6ee3dfc
implement a sophisticated ack algorithm
...
fixes #354
2017-01-09 15:01:44 +07:00
Marten Seemann
72e9994c9c
allow reuse of connection IDs
...
fixes #347
2017-01-07 19:21:18 +07:00
Marten Seemann
5af50c8fd0
correctly read MIDS and MSPC parameter
...
fixes #367
2016-12-08 16:15:31 +07:00
Marten Seemann
b7a9fcf85f
implement auto-tuning of receive flow control windows
...
fixes #106
2016-10-31 12:51:26 +07:00
Marten Seemann
5fa4ea73e5
fix typo
2016-10-28 12:30:52 +07:00
Marten Seemann
2c11335de4
limit number of ACK ranges in ReceivedPacketHistory
...
fixes #195
2016-10-28 12:17:41 +07:00
Marten Seemann
2e7fb25672
remove variable type from congestion server parameters
2016-10-27 22:11:16 +07:00
Lucas Clemente
9b2127018d
add exponential backoff to RTO calculation
...
fixes #112
2016-09-09 00:26:18 +02:00
Lucas Clemente
5d0399bfe3
use LRU cache for cached certificates
...
fixes #268
2016-09-08 23:08:57 +02:00
Lucas Clemente
634a0eb78c
add new timeout consts
...
ref #320
2016-09-08 13:28:44 +02:00
Lucas Clemente
8c6eb61850
set max tracked packets to max cwnd * 2
2016-09-05 13:35:10 +02:00
Lucas Clemente
3b1231db81
remove unused congestion const
2016-09-05 13:35:09 +02:00
Lucas Clemente
57cce4ebae
increase max congestion window to 1k packets
...
ref #150 , #289
2016-09-05 13:35:09 +02:00
Lucas Clemente
5ffc2f539d
add support for version 36
...
fixes #312
2016-09-04 23:33:31 +02:00
Lucas Clemente
f8cba7f978
remove version 33 const
2016-09-01 20:26:32 +02:00
Lucas Clemente
8184ce050f
remove v33 from supported versions
2016-09-01 20:26:31 +02:00
Lucas Clemente
6a9364c20f
remove Version32 const
2016-09-01 12:20:19 +02:00
Marten Seemann
ad91d02cbd
remove version 32 from SupportedVersions
2016-09-01 12:20:18 +02:00
Lucas Clemente
90401a2ec1
increase packet queue size to work around #304
2016-08-25 20:02:38 +02:00
Marten Seemann
eabd38238a
never send 1-byte packet numbers
2016-08-25 12:34:55 +07:00
Marten Seemann
543ce21a5a
prevent opening of new streams with very low StreamIDs
...
ref #256
2016-08-24 16:26:30 +02:00
Marten Seemann
b376f2f6f6
remove variable types from several server parameters
2016-08-24 00:52:34 +07:00
Lucas Clemente
888a35c2fd
enable support for version 35
...
fixes #281
2016-08-23 17:09:53 +02:00
Lucas Clemente
c3832965d0
add max incoming dynamic streams to connection parameter mgr
...
ref #281
2016-08-23 17:09:51 +02:00
Lucas Clemente
126db938d0
fix some linter warnings
2016-08-23 12:24:33 +02:00
Marten Seemann
a6d868874d
increase maximum number of gaps in streamFrameSorter
...
fixes #298
2016-08-22 10:47:28 +07:00
Marten Seemann
65838f34a8
limit number of tracked skipped packet numbers in SentPacketHandler
2016-08-11 11:03:45 +02:00
Marten Seemann
78fab5c264
use PacketNumberGenerator in PacketPacker
2016-08-11 11:03:45 +02:00