Commit Graph

5105 Commits

Author SHA1 Message Date
Marten Seemann
06241f328d Merge pull request #2799 from lucas-clemente/optional-quic-trace
only include quic-trace when the quictrace build flag is set
2020-10-06 20:24:13 +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
014fcfc7dc Merge pull request #2816 from lucas-clemente/interop-server-chacha-test
add support for the ChaCha20 test on the server side
2020-10-06 20:23:32 +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
4a33775c1b Merge pull request #2806 from lucas-clemente/ignore-temporary-errors
ignore temporary errors when reading from the packet conn
2020-10-06 20:22:47 +07:00
Marten Seemann
cd487d1470 Merge pull request #2813 from lucas-clemente/fix-linting-on-mac
fix linting error on OSX
2020-10-06 20:22:33 +07:00
Marten Seemann
d5a30225ce use a uint8 to represent the key phase bit 2020-10-06 15:27:56 +07:00
Marten Seemann
93e3873141 qlog the key phase bit 2020-10-06 15:05:26 +07:00
Marten Seemann
497a8c7460 add support for the ChaCha20 test on the server side 2020-10-06 12:27:36 +07:00
Marten Seemann
c75da7965b Merge pull request #2729 from lucas-clemente/exhaustive-linter
add the exhaustive linter, replace panics by return values in logging stringers
2020-10-05 13:59:04 +07:00
Marten Seemann
8417b67f83 replace panics in qlog and metrics type stringers 2020-10-05 13:47:58 +07:00
Marten Seemann
55a07c34ee add the exhaustive linter 2020-10-05 13:47:57 +07:00
Marten Seemann
aa664c1d15 fix linting error on OSX 2020-10-05 13:32:06 +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
b4636469fa refactor confirmation of the handshake 2020-09-30 12:05:33 +07:00
Marten Seemann
6ad29e721e fix error handling when receiving post handshake messages 2020-09-28 14:02:46 +07:00
Marten Seemann
b7f05b5d86 continue listening after temporary errors 2020-09-27 15:13:09 +07:00
Marten Seemann
a65274942c use a mock net.PacketConn in tests 2020-09-27 15:13:07 +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
02274b6cb5 Merge pull request #2803 from lucas-clemente/fix-retry-logging
fix logging of received Retry packets
2020-09-26 17:53:04 +07:00
Marten Seemann
e915472213 Merge pull request #2802 from lucas-clemente/fix-crypto-setup-deadlock
fix deadlock in crypto setup when it is closed while handling a message
2020-09-26 17:51:39 +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
e0cfbd86d5 fix logging of received Retry packets 2020-09-25 15:23:40 +07:00
Marten Seemann
7999b7699a Merge pull request #2760 from lucas-clemente/key-update-tests
make the key update integration test more rigorous
2020-09-25 14:08:30 +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
77d80f2632 check that keys are actually updated in the key update integration test 2020-09-23 12:31:54 +07:00
Marten Seemann
36113825ca only include quic-trace when the quictrace build flag is set 2020-09-23 12:23:00 +07:00
Marten Seemann
93e733a860 Merge pull request #2782 from lucas-clemente/interop-keyupdate-testcase
add support for the new keyupdate interop runner test case
2020-09-22 20:38:19 +07:00
Marten Seemann
d44f454e95 Merge pull request #2798 from egonelbre/fix
remove unneeded mutex in the client
2020-09-22 20:24:19 +07:00
Marten Seemann
05c994c0db add support for the new keyupdate test case 2020-09-22 19:56:25 +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
72d81f6951 Merge pull request #2787 from lucas-clemente/early-key-drops
correctly handle key updates within the 3 PTO period
2020-09-22 19:54:14 +07:00
Egon Elbre
60bec77f0a remove unnecessary locking
Fixes #2717
2020-09-22 15:43:32 +03: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
27448c1fa5 Merge pull request #2788 from lucas-clemente/ecn-capable-conn
introduce an ECNCapablePacketConn interface to determine ECN support
2020-09-22 17:58:57 +07:00
Marten Seemann
d0acd8dd16 Merge pull request #2794 from lucas-clemente/interop-runner-use-certs
use certificates from /certs directory for the server
2020-09-21 17:27:22 +07:00
Marten Seemann
ec59ad56b5 Merge pull request #2790 from lucas-clemente/coverage-reports
use Ginkgo option to combine coverage reports
2020-09-21 12:54:22 +07:00
Marten Seemann
5bedf30e3a use certificates from /certs directory for the server 2020-09-21 12:48:39 +07:00
Marten Seemann
7bacb1492e Merge pull request #2793 from lucas-clemente/remove-interop-ecn-test
remove support for the ECN test case
2020-09-21 12:39:49 +07:00
Marten Seemann
960fd8b882 remove support for the ECN test case 2020-09-21 12:06:11 +07:00
Marten Seemann
84405e1755 use Ginkgo option to combine coverage reports 2020-09-18 12:22:07 +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
d0f45cc990 Merge pull request #2783 from lucas-clemente/update-golang-ci-lint-action
use golangci-lint-action@v2 to run golangci-lint
2020-09-17 23:03:02 +07:00
Marten Seemann
afd96e31a5 Merge pull request #2785 from lucas-clemente/github-actions-i386
run i386 unit tests on GitHub actions
2020-09-17 23:02:43 +07:00