Marten Seemann
|
8d14d762e5
|
cache the slice used when detecting acked packets
|
2020-11-22 11:39:28 +07:00 |
|
Marten Seemann
|
fb6a536adb
|
add a unit test for ACK of skipped packet detection
|
2020-11-22 11:02:48 +07:00 |
|
Marten Seemann
|
655632b116
|
avoid duplicate mutex locking when reading data
|
2020-11-20 15:45:38 +07:00 |
|
Marten Seemann
|
5352cd509b
|
remove unnecessary mutex locking in the stream flow controller
|
2020-11-20 15:29:55 +07:00 |
|
Marten Seemann
|
2c975bca54
|
always use a 2-byte encoding for the packet length of Long Header packets
|
2020-11-14 17:39:31 +07:00 |
|
Marten Seemann
|
653a107606
|
implement a function to encode a varint using a fixed length
|
2020-11-14 16:08:18 +07:00 |
|
Marten Seemann
|
d0cdfc8926
|
Merge pull request #2865 from lucas-clemente/flow-control-replace-rwmutex
replace the RWMutex with a Mutex in the flow controller
|
2020-11-11 10:45:11 +07:00 |
|
Marten Seemann
|
23e4d15283
|
Merge pull request #2861 from lucas-clemente/no-viable-path-error
add the NO_VIABLE_PATH error
|
2020-11-10 20:50:40 +07:00 |
|
Marten Seemann
|
3a06c188f6
|
replace the RWMutex with a Mutex in the flow controller
|
2020-11-07 10:12:46 +07:00 |
|
Marten Seemann
|
0c2f562411
|
allow an amplification factor of 3.x
|
2020-11-06 14:16:11 +07:00 |
|
Marten Seemann
|
96ac98a862
|
add the NO_VIABLE_PATH error
|
2020-11-06 12:35:49 +07:00 |
|
Marten Seemann
|
30c91149c2
|
fill out the http.Response.TLS field
|
2020-11-02 11:29:42 +07:00 |
|
Marten Seemann
|
2839cbdcff
|
make it possible to set VersionTLS to a draft version
Go doesn't allow duplicate cases in a switch statement.
|
2020-11-02 11:29:42 +07:00 |
|
Marten Seemann
|
ff639a4d81
|
Merge pull request #2847 from lucas-clemente/http3-server-multiple-versions
set the ALPN based on the QUIC version in the HTTP3 server
|
2020-10-30 15:12:36 +07:00 |
|
Marten Seemann
|
6d00bdff3f
|
Merge pull request #2841 from lucas-clemente/pad-server-initials
pad datagrams containing ack-eliciting Initial packets sent by the server
|
2020-10-30 15:12:03 +07:00 |
|
Marten Seemann
|
c968b18a21
|
select the H3 ALPN based on the QUIC version in use (for the H3 server)
|
2020-10-29 13:44:23 +07:00 |
|
Marten Seemann
|
8752576f26
|
run gofumpt, enable the gofumpt linter
|
2020-10-26 09:33:35 +07:00 |
|
Marten Seemann
|
598f975024
|
Merge pull request #2831 from lucas-clemente/draft-32
prepare for draft-32
|
2020-10-25 22:45:43 +07:00 |
|
Marten Seemann
|
5b80c49582
|
Merge pull request #2825 from lucas-clemente/update-aead-limit
update the invalid packet limit for AES
|
2020-10-25 22:44:20 +07:00 |
|
Marten Seemann
|
876ccd899b
|
CONNECTION_CLOSE frames are not ack-eliciting
|
2020-10-25 13:22:33 +07:00 |
|
Marten Seemann
|
e1f56127df
|
only use the conn ID backwards compatibility mode with draft-29
|
2020-10-22 20:33:17 +07:00 |
|
Marten Seemann
|
6684aded0c
|
add version constants for draft-29 and draft-32
|
2020-10-22 20:33:16 +07:00 |
|
Marten Seemann
|
14a5aa831d
|
increase UDP receive buffer size
|
2020-10-19 10:42:44 +07:00 |
|
Marten Seemann
|
eff36f3057
|
update the invalid packet limit for AES
|
2020-10-16 10:51:05 +07:00 |
|
Marten Seemann
|
0615d92ede
|
only send Version Negotiation packets for packets larger than 1200 bytes
|
2020-10-08 16:22:39 +07:00 |
|
Marten Seemann
|
5d2b87e819
|
Merge pull request #2817 from lucas-clemente/qlog-key-phase-bit
qlog the key phase bit
|
2020-10-06 20:31:36 +07:00 |
|
Marten Seemann
|
471e82f883
|
Merge pull request #2807 from lucas-clemente/fix-post-handshake-message-error-handling
fix error handling when receiving post handshake messages
|
2020-10-06 20:23:53 +07:00 |
|
Marten Seemann
|
145e7b10d0
|
Merge pull request #2811 from lucas-clemente/fix-first-key-update
allow the first key update immediately after handshake confirmation
|
2020-10-06 20:23:19 +07:00 |
|
Marten Seemann
|
d5a30225ce
|
use a uint8 to represent the key phase bit
|
2020-10-06 15:27:56 +07:00 |
|
Marten Seemann
|
55a07c34ee
|
add the exhaustive linter
|
2020-10-05 13:47:57 +07:00 |
|
Marten Seemann
|
2781606ded
|
refactor the switch statement for parsing transport parameters
|
2020-10-05 13:17:06 +07:00 |
|
Marten Seemann
|
cc21f7c648
|
remove unused protocol.PacketNumberLenInvalid
|
2020-10-05 13:17:06 +07:00 |
|
Marten Seemann
|
bbd9fa4862
|
remove the EncryptionUnspecified enum value
|
2020-10-05 13:17:06 +07:00 |
|
Marten Seemann
|
1c38acd8c9
|
allow the first key update immediately after handshake confirmation
|
2020-09-30 14:12:07 +07:00 |
|
Marten Seemann
|
b9090d71ae
|
rename cryptoSetup.DropHandshakeKeys() to SetHandshakeConfirmed()
|
2020-09-30 12:14:16 +07:00 |
|
Marten Seemann
|
6ad29e721e
|
fix error handling when receiving post handshake messages
|
2020-09-28 14:02:46 +07:00 |
|
Marten Seemann
|
ebe051b2cc
|
Merge pull request #2805 from lucas-clemente/improve-crypto-error-string
include the error code in the string for CRYPTO_ERRORs
|
2020-09-26 17:54:17 +07:00 |
|
Marten Seemann
|
c92b0379cf
|
Merge pull request #2804 from lucas-clemente/check-quic-transport-parameter-extension
fail the handshake if the quic_transport_parameter extension is missing
|
2020-09-26 17:53:51 +07:00 |
|
Marten Seemann
|
77f7476bf7
|
include the error code in the string for CRYPTO_ERRORs
|
2020-09-25 20:23:05 +07:00 |
|
Marten Seemann
|
98c437e98e
|
fail the handshake if the quic_transport_parameter extension is missing
|
2020-09-25 17:11:22 +07:00 |
|
Marten Seemann
|
9ce5426da0
|
fix deadlock in crypto setup when it is closed while handling a message
|
2020-09-25 14:06:32 +07:00 |
|
Marten Seemann
|
a063500d73
|
use a package-level variable to set the key update frequency
|
2020-09-22 19:55:52 +07:00 |
|
Marten Seemann
|
e94db952b7
|
correctly handle key updates within the 3 PTO period
We need to:
* stop the timer to drop the previous generation
* correctly log that the N-1 keys are dropped immediately when keys are
updated to N+1
|
2020-09-22 19:28:46 +07:00 |
|
Marten Seemann
|
06e0db8ef4
|
Merge pull request #2781 from lucas-clemente/check-peer-key-update
check that the peer updated its keys when acknowledging a key update
|
2020-09-17 23:04:16 +07:00 |
|
Marten Seemann
|
6ecbc4186e
|
Merge pull request #2786 from lucas-clemente/fix-flaky-packet-number-skipping-test
fix flaky packet number skipping test
|
2020-09-17 23:02:25 +07:00 |
|
Marten Seemann
|
9d4b4f6bf0
|
check that the peer updated its keys when acknowledging a key update
|
2020-09-15 13:37:48 +07:00 |
|
Marten Seemann
|
5eaab73043
|
fix flaky packet number skipping test
|
2020-09-15 10:58:12 +07:00 |
|
Marten Seemann
|
ea3d32394d
|
read the ECN bits
|
2020-09-15 10:51:22 +07:00 |
|
Marten Seemann
|
876ab1d531
|
introduce a function to distinguish between IPv4 and IPv6 addresses
|
2020-09-14 17:01:34 +07:00 |
|
Marten Seemann
|
fa4f0a9e7a
|
keep track of ECN counts on received packets
|
2020-09-14 17:01:34 +07:00 |
|